* Revert "Fix undefined symbol at runtime with newer versions of LLVM (#791)"
This reverts commit b617e8feb6.
* Revert "SWDEV-502579 - Remove duplicated symbols (#21)"
This reverts commit 2296162578.
Revert them because ELF symbols will be added into comgr header.
[ROCm/clr commit: 35c192f1af]
* use single path for code object loading
* Remove printf
* Address review comments
* Fix the declaration of ihipMallocManaged
[ROCm/clr commit: d7f90a3120]
Also add flag: HIP_FORCE_SPIRV_CODEOBJECT to allow override to force use
SPIRV.
* use cache for already compiled code objects
* address review comments and use the two spirv isa names
[ROCm/clr commit: 07e57a1f0d]
- Also add a cache, which allows compiled code objects to be reused
instead of compiling again. This should improve performance on
multigpu systems.
Change-Id: Ib135d616c076b77f8aaf28de275d408b38021d89
[ROCm/clr commit: 0391aec14a]
This reverts commit 3b470cb067.
Reason for revert: Breaking change that will be merged in at a later date
Change-Id: Idd300492cc08a57c50decc22df287ddcc5463c88
[ROCm/clr commit: 6e55f40313]
Support new comgr unbundling action api to extract codebjects
in compressed and uncompressed modes.
Create HIP_ALWAYS_USE_NEW_COMGR_UNBUNDLING_ACTION ENV to
toggle new path and old path.
If HIP_ALWAYS_USE_NEW_COMGR_UNBUNDLING_ACTION=false(default),
uncompressed codeobject will go old path for better perf,
compressed codeobject will go new path.
If HIP_ALWAYS_USE_NEW_COMGR_UNBUNDLING_ACTION=true,
both uncompressed and compressed codeobjects will go new
path.
Add comgr wrapper for
amd_comgr_action_info_set_bundle_entry_ids()
Change-Id: I79952f132fe21249296685ee12cae05a4f9aec32
[ROCm/clr commit: d0050ce309]
This reverts commit c0ee0ffa1c.
Reason for revert: <INSERT REASONING HERE>
New comgr unbundling action leads to perf drop for uncompressed code object. Will create a new patch to use old path for uncompressed , new unbundling api for compressed .
Change-Id: I41ef53b71fc9f7aaa8cf231d4d70945f1117db52
[ROCm/clr commit: a1350fe8c1]
- Using runtime unbundler, no any gfx device can load fat binary,
if there is any device without available code object.
- Extract available code object to corresponding gfx devices. So
users can work ROCm with those ready devices without segmentation
fault.
Change-Id: I9f14c65ecebf2d3c4b127a007cb434a3ae98c450
[ROCm/clr commit: 6723277ad4]
- Remove newline from logging as log function internally inserts a new
line
Change-Id: I25eb2242a1f1e87cf811bcc373d1d485b2e027a8
[ROCm/clr commit: 058b2702db]
- ML Frameworks link many ROCm component libraries
- It becomes a tedious task to figure out which library HIP is complaining about
- To improve debuggability print out the shared library name
Change-Id: I53c4d66393670356b8cafd3e48075e430f0a45ce
[ROCm/clr commit: 52001adf43]
- Return error code instead of segfault during kernel launch when library isn't built with current gpu arch
- Fix string print bug
Change-Id: I91aaa50150fee220317cd2eb4e075d825cc448b2
[ROCm/clr commit: 76c8b3157b]
- If fat binary doesn't contain code object for current gfx then inside FatBinaryInfo::ExtractFatBinary(), valid FatBinaryDeviceInfo address isn't stored in vector fatbin_dev_info_
- This raises segmentation fault during hipLaunchKernel
Change-Id: I21017338d91edbd5d9cc2d37277f66558198a129
[ROCm/clr commit: 348698ed30]
This reverts commit 6ef56f09f1.
Reason for revert: To address SWDEV-316216
Change-Id: Ib8e6ac4b87c5e52757cd8f45958f39f012823c60
[ROCm/clr commit: a6b2294b93]
File descriptors opened during hipModuleLoad are not closed
until hipModuleUnLoad. In large models, this exceeds the ulimit
for no. of open file descriptors causing out of resource issues.
Hence, close the file descriptors once the required data is read
from the file, and not wait until unload.
Change-Id: Ic50d424e5ca388715b1e6309a0de72a480321582
[ROCm/clr commit: 3b157b3d5f]