Wykres commitów

44 Commity

Autor SHA1 Wiadomość Data
Chaudhary, Jatin Jaikishan 07e57a1f0d SWDEV-517941 - use device bitcode before spirv (#95)
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
2025-04-14 23:40:52 +01:00
Belton-Schure, Aidan ded41058a0 SWDEV-515426 - Use RAII classes for comgr (#28)
Change-Id: I9f6005542cc88f1e16e22741dcc0ce904fdaa2b0
2025-03-25 20:10:44 +05:30
Jacob Lambert 2e2b6b3592 SWDEV-518221 Fix major/minor Comgr version check
Change-Id: I2210aadafcae984dafc68c3fe16508bb2b409077
2025-03-06 13:02:34 -05:00
Jatin Chaudhary 0391aec14a SWDEV-515255 - do not free bitcode object before code gen
- 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
2025-02-18 12:39:31 -05:00
Saleel Kudchadker 08af3eb484 SWDEV-508225 - Improve fat binary handling
Change-Id: I78a9951f2f4c4c743c1205b1e40aac215054e27d
2025-01-28 14:38:21 -05:00
Jatin Chaudhary 6a5d19059d SWDEV-341217 - Initial work to use SPIRV in HIP
Change-Id: If5c09b5e86b498e7ac5eb05adf28cb7a1fac8101
2025-01-20 03:54:23 -05:00
taosang2 f1f4f40c5b SWDEV-447973 - Support generic targets
Change-Id: I32db83843e45e0f013591493aafd7a532c881e16
2024-11-29 10:12:10 -05:00
Branislav Brzak 6e55f40313 Revert "SWDEV-465201 - Match negative hipModuleLoad return with Cuda"
This reverts commit 68e5aeb93d.

Reason for revert: Breaking change that will be merged in at a later date

Change-Id: Idd300492cc08a57c50decc22df287ddcc5463c88
2024-11-07 09:51:50 -05:00
Branislav Brzak 68e5aeb93d SWDEV-465201 - Match negative hipModuleLoad return with Cuda
Change-Id: Id6c682e7f9ec8d34e9c8d5d5933f31e003c67e27
2024-11-04 03:58:06 -05:00
kjayapra-amd a5664fc93f SWDEV-460113 - Remove the ufd print.
Change-Id: If0d64ea4b6662493784c040aa1ceffafc8efa1c3
2024-07-16 10:39:16 -04:00
Branislav Brzak f014124527 SWDEV-465203 - Treat 0 elf length images as invalid
This addresses:
SWDEV-465203
SWDEV-465202

Change-Id: I49fcdd537fd07585e25c5fdef37cd10815466f79
2024-06-14 04:56:43 -04:00
Tao Sang d0050ce309 SWDEV-433371 - Support new comgr unbundling action
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
2024-05-28 06:31:10 +00:00
Tao Sang a1350fe8c1 Revert "SWDEV-433371 - use comgr to unbundle code objects"
This reverts commit e53df57ffe.

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
2024-05-28 06:31:10 +00:00
taosang2 e53df57ffe SWDEV-433371 - use comgr to unbundle code objects
1.Make runtime use comgr to unbundle code objects
2.Support compressed/uncompressed modes
3.Remove HIP_USE_RUNTIME_UNBUNDLER and
  HIPRTC_USE_RUNTIME_UNBUNDLER to simplify logics
4.Add comgr wrapper for
  amd_comgr_action_info_set_bundle_entry_ids()

Change-Id: Ic41b1ad1b64cca1e31986437983a5146d52a7329
2024-05-01 16:09:12 -04:00
ChingShihLi 6723277ad4 SWDEV-413377 - Segfault for hipLaunchKernel with multi GPUs
- 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
2024-03-01 02:24:22 -05:00
Ilya Panfilov 243555959f SWDEV-438299 - Remove unused variables
Change-Id: Id2908fe851d566ec2515161090f1e21b60cf6447
2024-02-13 19:39:11 -05:00
Ioannis Assiouras c4b9442fc4 SWDEV-442126 - Fix use_after_free case in ExtractFatBinaryUsingCOMGR
Change-Id: Ie07cf82025b65e4f95d4ce3cf46a6b8081f29b6a
2024-02-05 05:08:11 +00:00
Ioannis Assiouras 411bccff5b SWDEV-438299 - Simplified the code in ExtractFatBinaryUsingCOMGR
Change-Id: Ic15f2b71ae87ab3ca36ed5af2c816d57d09b3e70
2024-01-04 04:01:58 -05:00
Ioannis Assiouras 5158ec1c00 SWDEV-438299 - Fixed out of bounds memory access in ExtractFatBinaryUsingCOMGR
Change-Id: Ib1c6a38da0b81b78d250d7fb88d1194864a0251d
2023-12-20 04:17:40 -05:00
German 68d442f29a SWDEV-430809 - Replace hipErrorSharedObjectInitFailed vs hipErrorNoBinaryForGpu
hipErrorSharedObjectInitFailed should be used for interop objects.

Change-Id: Id3bcffaac3b511021f2fd57e9b156a897b646db0
2023-12-14 10:35:10 -05:00
Saleel Kudchadker 058b2702db SWDEV-301667 - Logging refactor
- Remove newline from logging as log function internally inserts a new
line

Change-Id: I25eb2242a1f1e87cf811bcc373d1d485b2e027a8
2023-12-07 12:12:57 -05:00
Rakesh Roy 52001adf43 SWDEV-421667 - Print shared library name which doesn't contain CO for current device
- 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
2023-10-11 10:43:03 -04:00
kjayapra-amd c3a39ef32a SWDEV-424569 - Fixing a merge error, which removed amd::Program->release().
Change-Id: Ib43dfc528ce217cb23d5eb38a0f87c241ae274a6
2023-09-28 11:41:04 -04:00
Ajay 3337f6912d SWDEV-1 - fix build errors for file descriptor
Change-Id: I38b3962744f20ce758c32077f2c725013c666a35
2023-09-27 20:00:05 -04:00
Ajay 2bae1b1387 SWDEV-421102 - make clr compatible with c++20
Change-Id: Ia692817232caa3ee97dc0b2139645a0474b582e1
2023-09-18 11:28:29 -04:00
kjayapra-amd 85b645731c SWDEV-417244 - Create Unique File Desc Store and guarantee no duplicates fds are opened.
Change-Id: I7be7fee52b673f0b1b3facdfbd847b57f2a47cde
2023-09-13 17:03:18 -04:00
kjayapra-amd f2c07d9bc2 SWDEV-416262 - Adding missing AMD headers on hip files.
Change-Id: I45531004e57c664df5ce4275a49f07ebbad08b7f
2023-08-11 10:00:23 -04:00
kjayapra-amd d18f4b1ad4 SWDEV-416218 - Set the image mapped flag correctly on COMGR path.
Change-Id: I6c0908731f10c8ff5b3e159c0cfb68ce096c7bdf
2023-08-10 15:52:30 -04:00
Rakesh Roy 76c8b3157b SWDEV-415265 - Fix segfault when library isn't built with current GPU arch
- 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
2023-08-08 00:41:54 -04:00
kjayapra-amd 3a2615f5aa SWDEV-408889 - Add the logging message back that will print devices without COs from Bundle.
Change-Id: Ie6f95d5e9bafe6c3db192419e4d8829053cc8b65
2023-07-26 17:47:52 -04:00
kjayapra-amd aa7c62db37 SWDEV-407691 - Always unmap file if HIP Runtime unbundler is used.
Change-Id: Ica15df31dfee3c495cf067a998e7e3b7c7397f40
2023-06-28 10:20:49 -04:00
kjayapra-amd 7f41a96ffb SWDEV-378006 - Adding a new guarantee macro to support printing args.
Change-Id: I2083ddaf8058759bdace7d3bb1e8e3670cbeddd2
2023-05-03 12:43:16 -04:00
Rakesh Roy 348698ed30 SWDEV-377782 - Fix segmentation fault for hipLaunchKernel
- 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
2023-02-20 09:54:44 -05:00
pghafari 698f52acd8 SWDEV-369566, SWDEV-369565, SWDEV-369564 - match with cuda return
Change-Id: I308f5344a64e5a06aa89685de9348f6722c196da
2022-12-12 09:53:18 -05:00
kjayapra-amd 5e4f430e03 SWDEV-241902 - Using COMGR APIs for extracting Code object.
Change-Id: I2dd662babf805d2de6e037bf41f7306e523da7d5
2022-12-06 12:17:12 -08:00
pghafari 9f37acc55f SWDEV-341326 - removing sigabrt for NoBinaryForGpu
Change-Id: Ia30fb3efec7f71b870e6a35d5ce51a4aa61fad28
2022-08-31 09:39:59 -04:00
Satyanvesh Dittakavi a6b2294b93 Revert "SWDEV-304151 - Reset file descriptor after Module Load"
This reverts commit 3b157b3d5f.

Reason for revert: To address SWDEV-316216

Change-Id: Ib8e6ac4b87c5e52757cd8f45958f39f012823c60
2021-12-23 06:11:43 +00:00
anusha GodavarthySurya ff00f2cea7 SWDEV-284895 - unload program object before releasing it
Change-Id: Ib10c9877043d90de8e292db319bb9def43df8061
2021-12-01 20:25:26 -05:00
Satyanvesh Dittakavi 3b157b3d5f SWDEV-304151 - Reset file descriptor after Module Load
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
2021-11-19 12:25:59 -05:00
Julia Jiang 8835b897d5 SWDEV-286322 - Remove execution permission
Change-Id: I96e603fc8d407c3a76fa1053bad81e45744b59ad
2021-08-05 14:04:06 -04:00
Rahul Garg 19c84bc604 ROCMOPS-1956 - Push restructured code to hipamd
hipamd will have AMD's ROCCLR based HIP backend implementation

Change-Id: Id7de9634519b4ce46fca71a1b61f3d5b1e3fc459
2021-06-07 21:42:44 +00:00
Tao Sang 1cba7ec965 Remove hip-hcc codes: Part one
Remove hip-hcc codes from hip code base
Simplify hip CMakeLists.txt to exclude hip-hcc
Simplify cmake cmd for hip-rocclr building
Some minor fixes

Change-Id: I1ae357ecfd638d6c25bca293c1724b026be21ecd
2020-12-09 15:49:47 -05:00
Siu Chi Chan fa9495841b reimplement HIP_INIT as hip_impl::hip_init(), add hip_init() to some of the inlined API (#966)
* reimplement HIP_INIT as a function, expose it as hip_impl::hip_init()
so that it could be called from hipLaunchKernelGGL and other inlined
HIP functions

* Don't call hip_init from ihipPreLaunchKernel
2019-03-20 05:11:15 +00:00
Yaxun Sam Liu 988dcd1e4a Let hip-clang support --genco 2018-11-27 15:55:50 -05:00