Commit Graph

2523 Commits

Author SHA1 Message Date
Andryeyev, German 3ceab5ba02 SWDEV-524849 - Fix HIP error returned during capture (#141)
Always use the latest dependent nodes during hipEventRecord capture

[ROCm/clr commit: 3514f45544]
2025-04-03 20:08:25 +05:30
Betigeri, Sourabh 487ede31a9 SWDEV-523281 - [clr] Implementation of hipLaunchKernelExC and hipDrvLaunchKernelEx API with support for cooperative launch (#92)
[ROCm/clr commit: 8c6b90996e]
2025-04-03 20:10:05 +09:00
Sang, Tao d49a2a51d6 SWDEV-508863 - Support generic target in compressed fatbin (#44)
[ROCm/clr commit: 8d90b44a1b]
2025-03-27 20:13:51 +05:30
Belton-Schure, Aidan e27e3eb66a SWDEV-515426 - Use RAII classes for comgr (#28)
Change-Id: I9f6005542cc88f1e16e22741dcc0ce904fdaa2b0

[ROCm/clr commit: ded41058a0]
2025-03-25 20:10:44 +05:30
Arandjelovic, Marko cc5124241b Revert SWDEV-512344 - Unmap all subbuffers (#26)
This reverts commit 0b69120cfcb5b4689d9f2037b1a01e274d85c20f.

[ROCm/clr commit: e7ada4effe]
2025-03-19 21:17:36 +05:30
Godavarthy Surya, Anusha 35a15ca3b2 Revert "SWDEV-492049 - Remove the handle of Phy Mem from Memobj" (#72)
This reverts commit dabe311bd8.

[ROCm/clr commit: 2259a8c01c]
2025-03-19 21:16:51 +05:30
Andryeyev, German 00e77db856 SWDEV-497841 - Avoid access to the null stream on mempool alloc
Null stream isn't created during the device creation

[ROCm/clr commit: 392ed53c3c]
2025-03-17 11:40:14 -04:00
Gerardo Hernandez 8c9aa07b3a SWDEV-420237 - Add __reduce_add_sync()
Change-Id: Ic8e4fab6b7aeb879d40b2c1419b30d1355a2bbdc


[ROCm/clr commit: 340d6bb69f]
2025-03-12 03:20:49 -04:00
Rakesh Roy 4dd97ee92c Revert "SWDEV-508982 - [6.4 Preview] - Handle hipMemPoolCreate, hipMemPoolDestory & hipDeviceSetMemPool during stream capture."
This reverts commit f674ba58f0.

Reason for revert: 6.4 Preview changes need not be merged to amd-staging as of now

Change-Id: I86452adfed14655f72d90440a486089743cc6587


[ROCm/clr commit: 5da8ce45ab]
2025-03-07 06:43:24 -05:00
Rakesh Roy d35aed5012 Revert "SWDEV-510271 - [6.4 Preview] fix hipCreateSurfaceObject & hipDestroySurfaceObject during stream capture"
This reverts commit 82f78ce187.

Reason for revert: 6.4 Preview changes need not be merged to amd-staging as of now

Change-Id: Ifba0c8a248bc40deaa9c59b7f2901531300e5ea4


[ROCm/clr commit: 4206405514]
2025-03-07 06:42:12 -05:00
Rakesh Roy ff16c1a755 Revert "SWDEV-508980 - [6.4 Preview] fix hipDeviceSetCacheConfig during stream capture"
This reverts commit 04dc7ca51f.

Reason for revert: 6.4 Preview changes need not be merged to amd-staging as of now

Change-Id: I04af8603053338f08c396e78ff8a6715e641ca19


[ROCm/clr commit: 3fa6049c46]
2025-03-07 06:40:53 -05:00
Ioannis Assiouras df9f0a0eec SWDEV-511813 - Fix linkage of hipRTC-header.o into libhiprtc.a
Using target_link_libraries does not properly link the hipRTC-header.o
into libhiprtc for static build. Change to use target_sources instead.
This does not affect the linkage in the shared build.

Change-Id: I626f9eacc1637b792a50e7ddddb5db09e704ac4a


[ROCm/clr commit: 8f54aeb765]
2025-03-06 16:29:57 -05:00
Jacob Lambert 26345a1431 SWDEV-518221 Fix major/minor Comgr version check
Change-Id: I2210aadafcae984dafc68c3fe16508bb2b409077


[ROCm/clr commit: 2e2b6b3592]
2025-03-06 13:02:34 -05:00
Julia Jiang 7c813db874 SWDEV - 508961 - Update requestedHanleTye in CLR repos
Change-Id: I6949a36c5b0bb8e88a2a33ed13ae8f278a5b19c7


[ROCm/clr commit: e5425393b4]
2025-03-06 11:37:31 -05:00
Saleel Kudchadker 5070d4b654 SWDEV-508004 - Improve hipStreamWaitEvent & Fix typo
- hipStreamWaitEvent may not resolve streams
- Correct usage of flag passed to streamWait function

Change-Id: I2ee163615d303b98937c1035d60da283cce6f677


[ROCm/clr commit: 940347ad42]
2025-03-05 11:56:01 -05:00
Pengda Xie cd9bcb7e53 SWDEV-518317 - Don't attempt to remove managedVars when map is empty
Change-Id: I25c33487dc08f96c087b6acc1abe42a4a666a609


[ROCm/clr commit: ae3b053ddf]
2025-03-05 11:53:18 -05:00
Branislav Brzak c81185cf26 SWDEV-516564 - SWDEV-512817 - Remove mentions of gfx940 and gfx941
Change-Id: Ia069fcb9c6948c3fc9a00961593c9dcc59609375


[ROCm/clr commit: c2d1776ebd]
2025-03-05 04:26:07 -05:00
Saleel Kudchadker c8f39ec2b0 SWDEV-502365 - Track last used command
- This change tries to save extra synchronization packets we may insert
  as we didnt track the completion signals for every command. We track
the current enqueued command until it exits the enqueue stage. We also
record the exit scope to know if we flushed the caches
- Handle correct release scopes and store completion signal as HW events
- Use a new finishCommand implementation to only wait for the command
  passed as the argument

Change-Id: Ie4350c5dd24f5d48dfa6ccbabd892f0544caadcc


[ROCm/clr commit: e03e4f3b5d]
2025-03-04 16:05:02 -05:00
German Andryeyev 77840f1cb9 SWDEV-518474 - Add comgr debug mask
Move prints from CO processing under COMGR debug mask.

Change-Id: I2a417e42a1f4e2922a34eb104c69e4db10b5f1c6


[ROCm/clr commit: cece301fd4]
2025-03-04 14:37:08 -05:00
Julia Jiang 6fe0eb91ee SWDEV-509855 - Update hipDeviceAttributePciDomainID in CLR
Change-Id: I79939b333ef6114b97009ca4bfb67f63a9a22784


[ROCm/clr commit: 81db54d3f9]
2025-03-04 14:08:08 -05:00
Marko Arandjelovic 861491b824 SWDEV-512344 - Unmap all subbuffers
Since hipMemMap can be called for multiple device handles on the same virtual memory, the same is true for hipMemUnmap, meaning that virtual memory can be "partially unmapped".

This means that the unmap function can be called for a specific part of the reserved address, meaning that only the designated subbuffer should be released. If unmap is called on the entire reserved memory, then all subbuffers should be released.

The main point is that for every hsa_amd_vmem_map, there should be a corresponding hsa_amd_vmem_unmap. Otherwise, if entire memory is unmapped by a single unmap call, then HSA will report the memory as "in use" if an attempt is made to delete it.

Change-Id: I039308eafb820decfb1c09f60347f26cdad1a362


[ROCm/clr commit: 3ec1d2d2f1]
2025-03-02 13:41:48 -05:00
Ioannis Assiouras efd1f3f012 SWDEV-509788 - Code cleanups in Event class
Change-Id: I4163ce6c1dabeaab92de13b51b6a46b7be83e2bd


[ROCm/clr commit: e9b33af45a]
2025-02-27 17:16:50 -05:00
Pengda Xie e591f1f7f7 SWDEV-512044 - Fix logic error in texture size validation
Change-Id: I6aefcfed25b099c17bf0856d621081c0a5ce46c5


[ROCm/clr commit: ade704dd2f]
2025-02-26 11:20:58 -05:00
Ioannis Assiouras eb825325d2 SWDEV-516994 - Fix race condition in the implementation of graph AutoFreeOnLaunch on Windows
Change-Id: I3c98d0d4bffe2a9e0aa5cfa24b6c8e9a8087da29


[ROCm/clr commit: a8f309049d]
2025-02-26 02:36:31 -05:00
Rahul Manocha 75d53e5c22 SWDEV-489106 - Linker API addition to runtime
1) Add Linker APIs to runtime to support SPIRV linking
2) Migrate Internal implementations to runtime and share with rtc
3) Add Support to bundled and unbundled SPIRV Code object linking.

Change-Id: Ic1fd4431f842a208a2468e8aec54a65b5fa6b0e3


[ROCm/clr commit: 5930f047bb]
2025-02-22 13:39:23 -05:00
Li, Todd tiantuo 04dc7ca51f SWDEV-508980 - [6.4 Preview] fix hipDeviceSetCacheConfig during stream capture
Change-Id: I8e89774a8163fdc120155f742606ee2c0aa7103b


[ROCm/clr commit: 9faaf20aae]
2025-02-22 01:05:28 -05:00
Li, Todd tiantuo 82f78ce187 SWDEV-510271 - [6.4 Preview] fix hipCreateSurfaceObject & hipDestroySurfaceObject during stream capture
Change-Id: I19e149549c271d847f52b72e04cb2427ca194b24


[ROCm/clr commit: c07468e53c]
2025-02-22 01:04:35 -05:00
Ioannis Assiouras 8d29fb9e6d SWDEV-509788 - Use stream memory operation in hipStreamWaitEvent
This change removes the stream callback from hipStreamWaitEvent and
uses a stream memory wait operation instead. This allows the
hipStreamWaitEvent to be non-blocking on the host.

Change-Id: Ie5530febda5a5bcb5daa0db8a01249d6b137fd43


[ROCm/clr commit: 721c5800ca]
2025-02-21 11:46:09 -05:00
German Andryeyev f9d9b2c441 SWDEV-497841 - Add virtual memory heap
Add initial implementation of virtual memory heap with
dynamic virtual memory mapping support for memory pools.
DEBUG_HIP_MEM_POOL_VMHEAP controls the new method.

Change-Id: I8dc5be2e0f34ab472f1800f43bb6243639a5e500


[ROCm/clr commit: 296dce5570]
2025-02-20 10:55:49 -05:00
Jimbo Xie 8a42a52d0f SWDEV-477219 - implement hipEventRecordWithFlags
Change-Id: Icf07e85fc8c15f921f6e7c9fbd31dd3856dc988b


[ROCm/clr commit: 7a4a22d454]
2025-02-19 13:53:00 -05:00
Jatin Chaudhary 508d043176 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


[ROCm/clr commit: 0391aec14a]
2025-02-18 12:39:31 -05:00
Anusha GodavarthySurya c6bea0ea59 SWDEV-469422 - hipgraph remove static typecast to parent
Change-Id: I339250cfd26a7c04543722a82301acbb41c7d5d7


[ROCm/clr commit: 199e464402]
2025-02-14 11:09:32 -05:00
Aidan Belton-Schure 4b4a35b86b SWDEV-508279 - Improve HIP event profiling
There are 2 functional changes to this patch:
* Use GPU timing for internal markers for HIP.
* Measure CPU time closer to GPU timer, to reduce delta between GPU/CPU timestamp measurements.

There are some smaller non-functional updates:
* waifForFence -> waitForFence typo
* Remove unused drmProfiling

Change-Id: I4c5fa600a842ab60e454888779edcac8449a902a


[ROCm/clr commit: 179801a750]
2025-02-13 04:15:40 -05:00
Jatin Chaudhary db2a3214c4 SWDEV-504769 - Allow hipEvent_t to record on hipStreamLegacy
Change-Id: Ib86412255adad172598620ea81214e5eb56020ea


[ROCm/clr commit: e560d94d2c]
2025-02-12 07:02:35 -05:00
Ioannis Assiouras a349b23474 SWDEV-514686 - Fixed hipEventSynchronize/hipStreamWaitEvent for IPC events
Resolved an issue where hipEventSynchronize and hipStreamWaitEvent APIs
did not function correctly for events created with the hipEventInterprocess flag.
The bug caused the event to be incorrectly marked as "recorded,"
leading to these APIs failing to wait for the event as expected.

Change-Id: Ic9fdfaab2393beb93d6e0b83661545e902a63499


[ROCm/clr commit: 1cdfbfd270]
2025-02-11 18:43:06 -05:00
Ioannis Assiouras eb77b9aba6 SWDEV-508435 - Use the stream of the src/dst image memory object in A2H and H2A commands
Change-Id: I9b776a54760a4633d5f84cf7b467d2d3ba8cbdde


[ROCm/clr commit: a8edb8d467]
2025-02-07 13:38:31 -05:00
Satyanvesh Dittakavi 8daab29f7f SWDEV-477584 - hipExtGetLastError should return the immediate previous API error
hipGetLastError should return the error by any of the previous APIs
in the same host thread to match the CUDA behavior, whereas
hipExtGetLastError will return the error by the immediate previous API.
This Ext API was added earlier to facilitate the existing HIP apps which
are following the current behavior of hipGetLastError

Change-Id: I61e95b1fc136cc761e2434e02187b7ed2598b733


[ROCm/clr commit: 4b443f8133]
2025-02-06 23:30:48 -05:00
Anusha GodavarthySurya 5535f15104 SWDEV-469422 - hipGraph move to classes from structs
Change-Id: I0f9c8ef1161c0c92ebe0cce6844b2feacfee83f5


[ROCm/clr commit: 32e5b00c30]
2025-02-05 00:33:41 -05:00
taosang2 27e87ccca6 SWDEV-513458 - Add gfx950 target ID
Add gfx950 target ID

Cherry-picked
https://gerrit-git.amd.com/c/compute/ec/clr/+/997678
https://gerrit-git.amd.com/c/compute/ec/clr/+/1063519

Change-Id: I0228c5e87ceec366983fd4afb1c25e7f8161c2c2


[ROCm/clr commit: 29cc394510]
2025-02-04 18:30:23 -05:00
Rahul Manocha 4cbfbe2112 SWDEV-511855 - Fix hipMemcpyPeer to support stream capture checks
Change-Id: I7797f069b3ed4240b6785e82da7494a97b4843c6


[ROCm/clr commit: 81051f3520]
2025-02-04 11:22:35 -05:00
Aidan Belton-Schure 33b4f178c0 SWDEV-443561 - Add tools dispatch table
Change-Id: I3445554e486ab7b94592571f52c1530cb918d021


[ROCm/clr commit: 152cee3737]
2025-02-04 04:57:38 -05:00
Jacob Lambert 2bd527c676 SWDEV-387063 - Use clang default for C++ version
Instead of enforcing c++14 here, we can instead use the current
clang default

Change-Id: Ib0a178a53c1377f2910edf6fab82b2bac6567ac7


[ROCm/clr commit: 33e48b9629]
2025-02-03 11:07:52 -05:00
Anusha GodavarthySurya 837f7ca08c SWDEV-489084 - Avoid creating internal stream when graph has single branch
Change-Id: I9371d44481257069bb51c0217a57f97d803589c4


[ROCm/clr commit: b385992f94]
2025-01-31 00:16:57 -05:00
Saleel Kudchadker 21ae9ef25e SWDEV-508225 - Improve fat binary handling
Change-Id: I78a9951f2f4c4c743c1205b1e40aac215054e27d


[ROCm/clr commit: 08af3eb484]
2025-01-28 14:38:21 -05:00
Marko Arandjelovic 8b956db8db SWDEV-489619 - Added checks for memcpy capture path
Change-Id: I0e156099282f0b6393bcbcee2e9b96c31034a851


[ROCm/clr commit: 269ec54252]
2025-01-27 03:51:34 -05:00
Ioannis Assiouras 8169855390 SWDEV-510319 - Fixed random segfaults in graph tests
This change fixes random segfaults in graph tests that
are seen after the change make internal callbacks non-blocking.
The callback thread that decreases the GraphExec ref count
may now run after the runtime shutdown. This can cause a segfault
because the hip::device that is accessed in GraphExec destructor
is already destroyed during runtime shutdown. This patch ensures
that the hip::device object  stays alive until after the
callback thread completes.

Change-Id: I75a6ac01f27a0b2250bbd10ed389ebfb322927af


[ROCm/clr commit: 21c223f8df]
2025-01-25 09:54:15 -05:00
Sourabh Betigeri e3c4a81b69 SWDEV-502219 - Adds validity checks for negative parameters passed
Change-Id: Ib8a531533306a27143d74b81c074de81051eb896


[ROCm/clr commit: c460b0541b]
2025-01-24 16:32:29 -05:00
zichguan-amd 4e84f2182e SWDEV-509518 - Allow LLVM_ROOT and Clang_ROOT to be used with find_program
Fixes #123. find_program doesn't follow CMP0074 and thus ignores LLVM_ROOT and Clang_ROOT. This change adds LLVM_ROOT and Clang_ROOT to the search path of find_program for llvm-mc and clang in hiprtc to mimics previous add_package behaviour.
Caveat: cmake-specific variables like CMAKE_PREFIX_PATH will take precedence over paths specified with HINTS for find_program, there's no way to change the ordering unless we skip cmake-specific variables all together using NO_CMAKE_PATH and NO_CMAKE_ENVIRONMENT_PATH.

Change-Id: I1fedb60cda09744416e19b3c6e3e0c5c9045f8e7


[ROCm/clr commit: 272ef9a7bf]
2025-01-23 11:50:36 -05:00
Jaydeep Patel f674ba58f0 SWDEV-508982 - [6.4 Preview] - Handle hipMemPoolCreate, hipMemPoolDestory & hipDeviceSetMemPool during stream capture.
Change-Id: Ia195442041803896df814798c3d2053c0ba7770c


[ROCm/clr commit: 57df1b348f]
2025-01-22 05:28:47 -05:00
Jaydeep Patel 1d7b7cde76 SWDEV-457316 - Use phy memory obj stored in user data instead of querying from memObjs.
Change-Id: Id837eb00195d88b50904441f01cf8153fa752ecd


[ROCm/clr commit: b4df9fb6ec]
2025-01-21 22:05:14 -05:00