Commit Graph

6855 Commits

Author SHA1 Message Date
Jatin Chaudhary 1fb66c3e1e SWDEV-491248 - Fix build_mask
thread_rank() gives thread index in a block. Limit the range to the
current warp size.

Change-Id: Ib5c9831236096485cf99ba7ab0b911a3b10de31c


[ROCm/clr commit: bd7d40a4d8]
2025-01-22 04:46:01 -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
Konstantin Zhuravlyov 20b9b5a08c SWDEV-341212 - HIP header changes for supporting SPIR-V
This removes almost all uses of the deprecated
__AMDGCN_WAVEFRONT_SIZE macro, which is unavailable
when targeting SPIR-V, and adds a SPIR-V compatible
formulation of warpSize (which should end up as the
sole definition of warpSize once we remove support
for treating it as a compile time constant). It
is incomplete in that the cooperative_groups
implementation will need additional surgery.

Squashed commit of the following:

commit 6840826c3fec8516857dc4f2092d84358550f588
Author: Alex Voicu <alexandru.voicu@amd.com>
Date:   Fri Dec 6 23:36:32 2024 +0000

    Add deprecation warning for constexpr uses of `warpSize`.

commit a72307a7353034c2de53fd164e016967945fd0d1
Author: Alex Voicu <alexandru.voicu@amd.com>
Date:   Fri Dec 6 23:12:14 2024 +0000

    Prepare HIP RT for SPIR-V.

commit 5e40dd746ac4f8c93b521ef048ff9d494905ba95
Author: Alex Voicu <alexandru.voicu@amd.com>
Date:   Fri Dec 6 22:46:05 2024 +0000

    Revert stale change.

commit 231fe91c53dba4cabd832fc84eaa6ddb402271a0
Merge: a48905ec9 12dc02b4f
Author: Alex Voicu <alexandru.voicu@amd.com>
Date:   Fri Dec 6 22:37:24 2024 +0000

    Merge branch 'amd-staging' of https://github.com/ROCm/clr into amd-staging

commit a48905ec9cfe0e017cc64943195be82b530117d7
Author: Alex Voicu <alexandru.voicu@amd.com>
Date:   Tue Sep 17 03:14:56 2024 +0100

    Add scaffolding for SPIR-V support.

Change-Id: I2e84bbe90df58a5f9a8709b619905f04fa5b96dc


[ROCm/clr commit: dd4378611a]
2025-01-20 08:42:24 -05:00
Jatin Chaudhary 0795f00a14 SWDEV-341217 - Initial work to use SPIRV in HIP
Change-Id: If5c09b5e86b498e7ac5eb05adf28cb7a1fac8101


[ROCm/clr commit: 6a5d19059d]
2025-01-20 03:54:23 -05:00
Jaydeep Patel 5536076dc6 SWDEV-509664 - Specify type explicitly.
Change-Id: Ia0c0478682fa15eae7a31a2360310f08151716d4


[ROCm/clr commit: 1aa8383b09]
2025-01-17 13:09:48 -05:00
Vladana Stojiljkovic 4b786b5207 SWDEV-498061 - Add capture support for hipModuleLaunchCooperativeKernel
Change-Id: I5ed188e046c680c2785b3952391f59ed1d0c21b8


[ROCm/clr commit: 30cb2d0e67]
2025-01-16 10:54:30 -05:00
Marko Arandjelovic cf8eeabfe2 SWDEV-489619 - Fix memcpy tests with capture stream enabled
- Added missing validation as graph node should not be created
 if parameters are invalid
 - Fix conversion of input params to graphNode params

Change-Id: I37ab04942b5fb2eb07386850cb7dbbf26f9ca967


[ROCm/clr commit: db8527f655]
2025-01-16 10:31:04 -05:00
Marko Arandjelovic 8647bb483b SWDEV-504084 - Make hipModuleGetFunction use the device the module is loaded on
If a module is loaded on one device, hipModuleGetFunction and other similar APIs should be able to run successfully from another device.

Change-Id: I96084cbd6c6dcf2a81019779a6ab1842ef2f35d1


[ROCm/clr commit: c46f843b99]
2025-01-16 10:16:42 -05:00
Ioannis Assiouras 67c93c3bad SWDEV-505503 - Use internal device synchronize function in __hipUnregisterFatBinary
This is to avoid calling the HIP_INIT macro during the shutdown process.

Change-Id: I2e65f6e10491918a17445ee1e8ddd08286070358


[ROCm/clr commit: 5e3a29078d]
2025-01-15 18:57:34 -05:00
Sourabh Betigeri c95bb38b2b SWDEV-507960 - Return with error code if stream of type hipStreamLegacy is being attempted to destroy
Change-Id: Iee7ada6a5a905b44360a7e4049fc8b1a45c80db0


[ROCm/clr commit: 9d8d35ae40]
2025-01-13 18:17:37 -05:00
Ioannis Assiouras 161d590405 SWDEV-503760 - Only consider allocations that are less than X% larger in a mempool request
Change-Id: I94acbca606fd4c575e2e1a9e34959ce650571867


[ROCm/clr commit: 44b6b6813d]
2025-01-13 16:57:26 -05:00
Rahul Manocha 0a9315f5e0 SWDEV-497288 - Add validation checks to hipGraphExecNodeSetParams
Change-Id: If8cde47bc8e62414333768e01064298d8a3d80ee


[ROCm/clr commit: 2b32d9aada]
2025-01-13 16:49:45 -05:00
Rahul Manocha 17ad1834d4 SWDEV-492165 - Add support for 16 bit atomicAdd and atomicCAS
Change-Id: I7f1e4876fe2960dff1775d27cb6443a89e146c86


[ROCm/clr commit: 93cff75928]
2025-01-13 13:35:40 -05:00
Jacob Lambert aa918756e8 SWDEV-477039 - Fix spelling typos
Change-Id: Ia46e07ec0a001b7e19bec999597028acd4ee7077


[ROCm/clr commit: 805462a77b]
2025-01-13 12:17:46 -05:00
Anusha GodavarthySurya 08c92f4793 SWDEV-480209 - Make internal callbacks non-blocking
Change-Id: Ic918d08f341abfd9a7c167d09f9c723cdc43157f


[ROCm/clr commit: 683a942364]
2025-01-10 02:16:11 -05:00
Saleel Kudchadker 6a416008aa SWDEV-508004 - Improve hipEventRecord
- Resolve stream once for event record. We should avoid calling
  getStream again in addMarker

Change-Id: I78448c4f151ae10a5c8e8c248b2f4078b84191cb


[ROCm/clr commit: a22c45d635]
2025-01-09 16:47:46 -05:00
German Andryeyev 5a76761960 SWDEV-507019 - Change the function lock to the module lock
Multiple functions can be located in the same module.

Change-Id: Ia4ca3db64fe5b0822584059d3770c91103665c63


[ROCm/clr commit: 45a12208b6]
2025-01-09 12:35:29 -05:00
Rahul Manocha b1ef5972d6 SWDEV-504215 - fix rocalution perf drop by disabling cpu wait
Change-Id: I878f3420073b05cc6241f524ac428e47c0ce823d


[ROCm/clr commit: 05baf9ff22]
2025-01-07 17:02:24 -05:00
Marko Arandjelovic 44ff3ba1cc SWDEV-506234 - Refactor validation in hip_memory
Change-Id: I9d69695e4b6668e6de00f1f6b060862872358340


[ROCm/clr commit: 7e152bb0f3]
2024-12-31 00:35:25 +02:00
zichguan-amd a255533afd SWDEV-495789 - revert Fix ambiguity of fma for _Float16 for libc++ (#1976)
Change-Id: I45ae4711a047f4484a018b9409c9f6ecf09720ce


[ROCm/clr commit: b8ba4ccf9c]
2024-12-29 10:56:32 -05:00
Jaydeep Patel f20f399915 SWDEV-505276 - Parent graph of orig node and original graph of cloned node should be same.
Change-Id: I6ebc21cc42e41ad5d952a69fb3b3cb095f32cffb


[ROCm/clr commit: dff8197b1d]
2024-12-24 04:32:14 -05:00
taosang2 da613fbbeb SWDEV-479958 - Support different address mode
Support different address modes in X, Y, Z directions

Change-Id: If1db5a8af33c92dd14b48968c3e8eceb97daea6c


[ROCm/clr commit: d82d6a78cf]
2024-12-23 16:39:54 -05:00
Ioannis Assiouras b4019892c9 SWDEV-505504 - Disable vectorization in GetHipDispatchTable
Change-Id: Id33144623555a5d25e029ca644f6274610dcd0ad


[ROCm/clr commit: 158b6a29e0]
2024-12-20 17:47:07 -05:00
Jaydeep Patel 12ed697705 SWDEV-505205 - Fix hipStreamLegacy segfault with hipStreamWaitEvent.
Change-Id: I17fdaf7ac323507f99a7c071066944296537489c


[ROCm/clr commit: a05a02e527]
2024-12-20 04:18:21 -05:00
German Andryeyev 55d4a75016 SWDEV-504658 - Reduce the lock scope for kernel look-up
The vector with all kernels is preallocated on the executable init.
Thus, reduce the scope  of global lock to the binary creation only.

Change-Id: I73035013a6562175069137e895bba815f466ee35


[ROCm/clr commit: 0640d36019]
2024-12-18 17:04:51 -05:00
Sourabh Betigeri 02c203bf9c SWDEV-505277 - Adds hipStreamBatchMemOp in the enum of hcc_map
Change-Id: I6e58dfbe4ba13db8717edc36020fefabc9ddbe23


[ROCm/clr commit: cd9db5a2fa]
2024-12-18 05:38:58 -05:00
German Andryeyev d5b3b0830a SWDEV-504650 - Switch to shared_mutex for events
Use shared mutex for events validation

Change-Id: Iff291c758d9edd65717c506150f3b9d39e5306ba


[ROCm/clr commit: e3efce20be]
2024-12-17 11:04:58 -05:00
Jatin Chaudhary 11f9d84c34 SWDEV-377518 - Fix bf16/fp8 header to be compileable with hiprtc
Change-Id: I2093a39d79a46da7e102266c04c2a71e03dcb88e


[ROCm/clr commit: fccf0fa2f0]
2024-12-17 08:57:15 -05:00
Ioannis Assiouras 2c8805e536 SWDEV-483134 - Remove hipExtHostAlloc API
Change-Id: I60777ef5c56b60dd8100d0d794ca10fb3b96a555


[ROCm/clr commit: e8b2fdab96]
2024-12-16 17:13:49 -05:00
Anusha GodavarthySurya 4288640f69 SWDEV-469422 - Derive GraphExec from Graph and ChildGraphNode from GraphExec
Change-Id: I54d67a1665355579bc249d8ff4f9806e9ee14588


[ROCm/clr commit: 13e2e797c0]
2024-12-16 00:43:57 -05:00
Istvan Kiss 349dacc1d9 SWDEV-502543 - Update doxygen to surface funtions and Coop Group API
Change-Id: Id4df63b8ae64a1113f85d89aa250ac9f7cc8b9bb


[ROCm/clr commit: 3c863dad91]
2024-12-14 14:11:37 -05:00
Sourabh Betigeri 750313dfed SWDEV-421020 - Adds hipGraphAddBatchMemOp, SetGetParams and execSetParams APIs
Change-Id: Ieccecfe6173cc68fd3c01f86c99f7cc09fe194a3


[ROCm/clr commit: f1c05e9026]
2024-12-13 06:23:39 +00:00
Sourabh Betigeri 7261404002 SWDEV-440866 - [hip-roclr] Adds support to batch memory operations APIs
Change-Id: I5ac63a6626af8c2b4ac382c52dfe1aaf0b3716b8


[ROCm/clr commit: 03dbcd8ca7]
2024-12-12 19:29:24 -05:00
Tao Sang fb76b9620c SWDEV-496667 - Support gfx9-4-generic target
Support gfx9-4-generic target to cover mi3XX.
Support features sramecc and xnack in generic target.
Improve some code formats.
Add more log on compiler.

Change-Id: I6b3c6af55c60cffd43ce6f17b75998f751b75713


[ROCm/clr commit: 3ad8f1b811]
2024-12-12 14:43:39 -05:00
Saleel Kudchadker 52a3751389 SWDEV-301667 - Improve logging for hip_memory
Change-Id: Id624b2c91e6b701bc0ee561a0c193f2c66654890


[ROCm/clr commit: 537f2fffc9]
2024-12-12 14:42:00 -05:00
Anusha GodavarthySurya acfcd1098f SWDEV-469422 - Refacor childgraph node
Remove static functions in graph

Change-Id: I4df94915f81f250acaea60398aea32ef0ed658e2


[ROCm/clr commit: 28cbf2bc4f]
2024-12-12 12:38:24 -05:00
Jaydeep Patel 704be8ab01 SWDEV-496544 - Sync with stream if it is different than srcMemory stream.
Change-Id: I9c0f94a9531555278a51202ec7203961e1344c2e


[ROCm/clr commit: c8afd7109d]
2024-12-12 06:17:39 -05:00
Maneesh Gupta e3bf8acd82 Revert "SWDEV-491314 - enable _sync() functions with 64-bit mask argument"
This reverts commit d05c0310d8.

Reason for revert: Introduces regression SWDEV-503319

Change-Id: I888c5b95d904146e4782e8c57d736878fcdde678


[ROCm/clr commit: 072f94c204]
2024-12-11 11:16:48 -05:00
Jatin Chaudhary 78ec2a66af SWDEV-503299 - Do not use operator to check for nan
Some libs use __HIP_NO_HALF_OPERATORS__ and __HIP_NO_HALF_CONVERSIONS__
which results in operators being hidden and can cause errors.

Change-Id: I83c194d7d727cba30b46d7c296f7d396549f5fca


[ROCm/clr commit: 98b33886cd]
2024-12-11 00:33:44 -05:00
Todd tiantuo Li 3fc8b99a79 SWDEV-489099 - Deprecate AMDGPU_TARGETS in lieu of supporting GPU_TARGETS
Change-Id: I184cd18e47b1618bcad0fadc8984de54d2a00a9b


[ROCm/clr commit: def369a010]
2024-12-10 12:38:37 -05:00
Branislav Brzak 92b1136755 SWDEV-490860 - Do signal_is_required detection post graph schedule
Change-Id: Iaf1067a811aeac3d16c08de954036e219b545e07


[ROCm/clr commit: 89dfdc4dbe]
2024-12-09 03:57:44 -05:00
Jaydeep Patel a7406bbd5d SWDEV-502532 - Exit graph launch in case of empty graph.
Change-Id: Ifb6ab14ca6810cbc1c9e38c59d1d9e7d367358d9


[ROCm/clr commit: 0d4823ff88]
2024-12-07 12:27:53 -05:00
Ioannis Assiouras dc3ca8aab7 SWDEV-497759 - Fix memObj offset computation for hipHostRegister on Windows mgpu
On Windows, hipHostRegister may add a single object in the MemObjMap
that maps to memory that is allocated on different devices.
This change ensures that the offset that is returned from
getMemoryObject() is computed relative to the memory that is allocated
on the current device.

Change-Id: I5fd3af200bf6f4926fdeaea12dcb9d0154d3a843


[ROCm/clr commit: e80442fdbf]
2024-12-05 16:18:10 -05:00
Marko Arandjelovic 12dc02b4f8 SWDEV-495609 - Change include path for rocclr/utils
- Header files inside rocclr/utils when included from hipamd or opencl should be included as #include "rocclr/utils/xxx.h" instead of "utils/xxx.h"

Change-Id: Ic0760c33b9d091f5620dec67e5482c9698d22093


[ROCm/clr commit: 78f62d3230]
2024-12-05 11:44:20 -05:00
Jatin Chaudhary 163f810941 SWDEV-501779 - add correct function qualifier for fp16 functions
Some functions were __device__ only, but should be __host__ and
__device__, changed them to __HOST_DEVICE__.
Some functions were __HOST_DEVICE__ but were using ockl functions,
changed them to __device__ only.

Change-Id: Ife9e7abe60415bda68f5f9a101e6e7c39ad51064


[ROCm/clr commit: 5122b8c999]
2024-12-05 10:17:18 -05:00
Branislav Brzak cf25aaddcf SWDEV-490860 - Include signal_is_required in dot file dumps
Change-Id: Iec4b433b11fbecb71a4ce68beb7d6f681d25b8e6


[ROCm/clr commit: f2dba978f5]
2024-12-05 04:51:59 -05:00
Shane Xiao dabe311bd8 SWDEV-492049 - Remove the handle of Phy Mem from Memobj
The hipGraph will use VMM by default when allocating memory.
However, the handle of Phy mem has been added to Memobj by default.
Since the Memobj will track the whole address range from handle to
handle + size, this needs the system to reserve the whole address
range. If the system range have not reserved by the system, then it
will have the potential issue that clr finds the Memobj incorrectly.

This patch removes the handle from the Memobj to fix this potential
issue.

Change-Id: I2da38e6b2d11d0d48e1afe66c46899500c290624


[ROCm/clr commit: 231b2410a0]
2024-12-04 19:39:52 -05:00
German Andryeyev 6933aa7c29 SWDEV-501403 - Switch to std::shared_mutex for streamSetLock
Shared mutex allows to have access to the list of streams  from
multiple threads at the same time.

Change-Id: Ibee64b846cde03321d5b17dbee2829c0bab7e7d6


[ROCm/clr commit: efd3ea4b30]
2024-12-04 12:06:51 -05:00
Anusha GodavarthySurya b383c1e443 SWDEV-469422 - Always schedule graph nodes
Change-Id: Icc636527fa19e7bf3eb111bc4b1bb9a5f9acff73


[ROCm/clr commit: b89977d518]
2024-12-03 23:44:23 -05:00
Saleel Kudchadker 957b460014 SWDEV-494149 - Improve hipGet/Set Device
Change-Id: If8975687a3ba9caadafc48a0066f19a4ebaab9e2


[ROCm/clr commit: 6611cc015d]
2024-12-03 13:36:38 -05:00