Commit Graph

12842 Commits

Author SHA1 Message Date
German Andryeyev f29d608ca3 SWDEV-455254 - Add kernel arg optimization
Add kernel arguments optimization into blit path.
Enabled by default on MI300.

Change-Id: I2694a81b90d48ad07d86dfe4c0c64fe187bada8e


[ROCm/clr commit: f0c7ecf617]
2024-04-10 18:08:37 -04:00
kjayapra-amd ed9c629ad6 SWDEV-446298 - Adding error code to the logs on p2p hsa api failure.
Change-Id: Ic41b1ad1b64cca0e31986337a83a5146d52a7328


[ROCm/clr commit: 2b8634bada]
2024-04-10 06:00:00 -04:00
Jatin Chaudhary 565f915ebe SWDEV-379007 - add __hip_bfloat16_raw types
This also brings bfloat16 implementation closer to CUDA's.

Change-Id: I23f381141faacd6537923ae9b88ada4d661db496


[ROCm/clr commit: 481912a1fd]
2024-04-09 05:32:13 -04:00
Saleel Kudchadker 4285981222 SWDEV-301667 - Fix SDMA mask reuse
If we are using the mask returned by getLastUsedSdmaEngine() then we
need to apply the SDMA Read/Write mask to it before using with HSA
copy_on_engine API.

Change-Id: I6e5dc6c187eeb3c61ee159e9d2a0fa7b4737c06e


[ROCm/clr commit: 3f0bcf7834]
2024-04-08 15:42:52 -04:00
Sourabh Betigeri 7cc5dd56ab SWDEV-451964 - Limit gpu single allocation percentage for gfx940 only
Change-Id: Iadcdadd734e7aeeb23742e426353defa972d3ad5


[ROCm/clr commit: dbac2976e4]
2024-04-05 09:43:42 -04:00
Ioannis Assiouras 78008c05c5 SWDEV-453301 - Remove the option to write multiple packets in dispatchGenericAqlPacket
Dispatching multiple packets with ring the doorbell once is not supported by the lower layers

Change-Id: I7665a2dcdd4ef9e47dadfe410180fed64c5a4ee0


[ROCm/clr commit: d7f352dbed]
2024-04-05 05:28:10 -04:00
Rakesh Roy 9630492a1d SWDEV-450361 - Add nullptr validation for waitStream
- Application is passing null for parameter stream in API hipStreamWaitEvent
- When event stream isn't capturing and event is not recorded, causes segfault because we are accessing deviceId() from waitStream

Change-Id: I8b87ffd6f234677f68b66dcb7ef44b2ff04a7c91


[ROCm/clr commit: 880f1f0049]
2024-04-04 02:07:18 -04:00
cadolphe e89ea8577d SWDEV-446726 - Disable large bar for 32 bit windows
When large bar is enabled, persistent memory leads to overallocation for 32 bit architecture.

Change-Id: Iae39359d8128588de02e42d77fe58e868b8e71fd


[ROCm/clr commit: bc80802c1a]
2024-04-03 15:36:41 -04:00
cadolphe 02330a5324 SWDEV-443537 - fix make build warning message
Add cltrace compile definition for CL_TARGET_OPENCL_VERSION to OpenCL 2.2

Change-Id: Ie868ab0a6e86951afc6d07da58be942c3b736d15


[ROCm/clr commit: f7b1398361]
2024-04-02 16:42:01 -04:00
cadolphe 8f185a24d9 SWDEV-451687 - Fix alloc message values in AMD_LOG_LEVEL for 32 bit
Change-Id: Icbe67024297c92bf59139b6a2ccd2ba3674f60b1


[ROCm/clr commit: 411960a131]
2024-04-01 13:32:20 -04:00
Anusha GodavarthySurya ff29b47bb8 SWDEV-452787 - correct hipDrvGraphAddMemcpyNode check
Change-Id: Id58f982edd4f17d675f7a0f61a9b4dea0baebd9b


[ROCm/clr commit: ea4f09e8c0]
2024-03-29 00:56:12 -04:00
Anusha GodavarthySurya ae296c8fad SWDEV-443567 - SWDEV-436126 - Fix Prohibited and Unhandled Operations during capture
=> hipDeviceSynchronize is not allowed during capture.
=> hipEventSynchronize during capture should return hipErrorCapturedEvent error
=> hipEventQuery during capture should return hipErrorCapturedEvent error
hipStreamSynchronize, hipEventSynchronize, hipStreamWaitEvent, hipStreamQuery
For Side Stream(Stream that is not currently under capture):
=> If current thread is capturing in relaxed mode, calls are allowed
=> If any stream in current/concurrent thread is capturing in global mode, calls are not allowed
=> If any stream in current thread is capturing in ThreadLocal mode, calls are not allowed
For Stream that is currently under capture
=> calls are not allowed
=> Any call that is not allowed during capture invalidates the capture sequence
=> It is invalid to call synchronous APIs during capture. Synchronous APIs,
such as hipMemcpy(), enqueue work to the legacy stream and synchronize it before returning.

Change-Id: I201c6e63e1a5d93fd416a3b520264c0fdbe31237


[ROCm/clr commit: 19b4660cbb]
2024-03-28 22:10:31 -04:00
German Andryeyev 4f123e9c10 SWDEV-449922 - Remove a global lock for queues on wait
The new logic has a lock for PAL call and doesn't require the lock for queues.

Change-Id: I61b67c3c4abd2ede44809de1d6beed756766032e


[ROCm/clr commit: 2f3ad43c4a]
2024-03-28 18:17:46 -04:00
German Andryeyev 31ace540fa SWDEV-449922 - Remove per queue residency update
alwaysResident setting doesn't require per queue residency tracking.
Thus, the logic can be skipped to avoid the lock of queues.

Change-Id: Ib5cff5b79d3ecb8c2f2eb2565cf069f9a69438b0


[ROCm/clr commit: 95e3958748]
2024-03-28 16:16:37 -04:00
Jaydeep Patel 21a5b16faa SWDEV-450636 - Hostcall Listen thread cause seg fault due to main thread is being destroied by app/test's unload libamdhip64.so call.
Change-Id: I8d4a8d8b6801d9f6eb745c45adf831597def0cb5


[ROCm/clr commit: 4761ecbb15]
2024-03-27 00:10:55 -04:00
Saleel Kudchadker f3aedfbec0 SWDEV-301667 - Create TS for each node recorded in graph
- Create a vector to allow multiple TS to be stored in Command.
- This would mean we dont wait for entire batch in Accumulate command
to finish when we exhaust signals.
- Reduce the number of signals created at init to 64. This min value
may still need to be tuned but the KFD allows max of 4094 interrupt
signals per device.
- Store kernel names whenever they are available and not just when
profiling. If we dynamically enable profiling like for Torch, a crash
can happen if hipGraphInstantiate wasnt included in Torch profile scope
beacuse we previously entered kernel names only when profiler is
attached.

Change-Id: I34e7881a25bbc763f82fdeb3408a8ea58e1ec006


[ROCm/clr commit: c157bfb202]
2024-03-26 14:47:24 -04:00
Rakesh Roy 150144a05f SWDEV-445096 - Fix -O0 crash in OpenCL tests
- With https://gerrit-git.amd.com/c/lightning/ec/llvm-project/+/1002628 applied, at -O0 Kernel::dynamicParallelism() returns true but virtual queue isn't created
- This causes segfault inside VirtualGPU::submitKernelInternal() when getVQVirtualAddress() is called

Change-Id: Ia7af042adad2329e870c142caaac3e8fa886f8b8


[ROCm/clr commit: d1fff7cea2]
2024-03-26 11:42:33 -04:00
Jaydeep Patel c4239ed8e8 SWDEV-446992 - Request can be for bytes OR dptr OR both.
Change-Id: Ib479c744b90125b74d99cbf18b7f4b8cf765bf1c


[ROCm/clr commit: 09328f45b3]
2024-03-26 11:10:24 -04:00
kjayapra-amd 0f8a9567e6 SWDEV-413997 - Save hsa_handle as ptr in hipMemCreate path.
Change-Id: Ica32017ef7b00326dfb6d1f604e126d40ad5b786


[ROCm/clr commit: 5cbd74b554]
2024-03-26 10:24:29 -04:00
kjayapra-amd a17f9d2d75 SWDEV-448288 - Remove references to deprecated llvm references.
Change-Id: I7b58177c41dc0c6c59813977cb90e65a6cb3be72


[ROCm/clr commit: 5b28e386f6]
2024-03-26 10:23:18 -04:00
Anusha GodavarthySurya cf03256284 SWDEV-301667 - Disable HostBlit copy for HIP correct if check
Change-Id: I33d1359d5e4c871f63350d8300f726e039664d86


[ROCm/clr commit: 7f84df9f74]
2024-03-26 02:18:51 -04:00
German Andryeyev e46ab0bff5 SWDEV-353281 - Change pool type for graphs
Under ROCr physical allocations don't have initial VA and require extra
flag in ROCclr. Add an option to have a mempool of physical allocations.

Change-Id: I4d062fe0dd8113d4eaf6e8b51749ed56d8701d1e


[ROCm/clr commit: f296159f62]
2024-03-25 10:21:05 -04:00
Ioannis Assiouras 50ecfb39c9 SWDEV-451736 - Revert "SWDEV-444670 - Register the Runtime::tearDown function to be called at exit"
This reverts commit 8392200773.

Change-Id: Ib9cb1cc0c3903bfba56c9a5d05ae8afe96be583a


[ROCm/clr commit: 51926b6b6b]
2024-03-23 07:05:02 -04:00
Julia Jiang 08e18077cc Revert "SWDEV-444098 - remove rocm-ocl-icd packaging"
This reverts commit 6c46d696ae.

Reason for revert: due to windows staging branch using Opencl-icd-loader master

Change-Id: I9cca7564a21de1733665a34da6f0322aa3b886e7


[ROCm/clr commit: f44ca70bb7]
2024-03-22 16:59:23 -04:00
Jaydeep Patel 1bbbff9dd9 SWDEV-452299 - Pass dst pitch while capturing hipMemcpyParam2DAsync & elementSize should be 1 as width is in bytes while capturing hipMemset2DAsync.
Change-Id: I8f9122a30cba0a07c097dfd7609432090caab142


[ROCm/clr commit: 0be92b8f09]
2024-03-21 12:49:34 -04:00
Ioannis Assiouras a3b6fd539f SWDEV-449146 - Call hipDeviceSynchronize before removeFatBinary
Added call to hipDeviceSynchronize in __hipUnregisterFatBinary
to ensure that all HSA async signal handlers complete before removeFatBinary

Change-Id: I756fecca1c2a5eae092613d8079de266399e5685


[ROCm/clr commit: ad32e604c7]
2024-03-20 23:40:46 +00:00
Matt Arsenault 471f9e6d65 SWDEV-1 - Do not pass daz_opt to comgr link options
This no longer does anything.

Change-Id: I0643198a46a534a76454a5b461d010ed1776a89a


[ROCm/clr commit: 67473ba345]
2024-03-19 22:55:44 -04:00
Ioannis Assiouras 8b875d0248 SWDEV-430437,SWDEV-434702 - Split the streamset per device
Change-Id: If1bcca45825c9899462bb95ed6f637f5af806cc8


[ROCm/clr commit: be2bdabb76]
2024-03-18 19:08:52 -04:00
German Andryeyev eb355d0159 SWDEV-449558 - Update barrier's logic
PAL optimized the logic for the barriers, which caused failures with CP DMA on Navi4x.
Change barrier's code to match the most recent PAL optimizations.

Change-Id: I55eeab20f51eb8e920bcbb4b55fbe3c7f77fd3fa


[ROCm/clr commit: 1239309c90]
2024-03-18 10:52:32 -04:00
Sameer Sahasrabuddhe a5250a6c8f SWDEV-445460: Changelog for warp sync builtins in HIP 6.2.
Change-Id: I79de9ce945a4d9413a8fbb8bbe162883ffd3b63c


[ROCm/clr commit: 4ec3a977b2]
2024-03-18 00:51:28 -04:00
Julia Jiang 6c46d696ae SWDEV-444098 - remove rocm-ocl-icd packaging
Change-Id: If0234ff03cf86e1f0435e743c1df75a3e179d48c

Jenifer helped trigger a combined PSDB for the below three changes
https://gerrit-git.amd.com/c/compute/ec/prototype/+/1020194
https://gerrit-git.amd.com/c/compute/ec/clr/+/1003601
https://gerrit-git.amd.com/c/compute/ec/OpenCL-ICD-Loader/+/1012373

Combined PSDB was successful:
http://rocm-ci.amd.com/job/compute-psdb-staging/27382/
Change-Id: If0234ff03cf86e1f0435e743c1df75a3e179d48c


[ROCm/clr commit: 5f68a4531a]
2024-03-15 10:46:07 -05:00
Ioannis Assiouras b46d3c0f8d SWDEV-451166 - Disable kernel args for non-XGMI if HDP flush register is invalid
Change-Id: I227e046e2b9cb25476a50240f5d070adbd558f21


[ROCm/clr commit: 96f5c44851]
2024-03-15 05:27:52 -04:00
Anusha GodavarthySurya ec391d7249 SWDEV-436126 - hipStreamDestroy to remove stream from capture list
Change-Id: Ie735f27b9c5df4faf39bd4be10fbe4401fd88cdb


[ROCm/clr commit: 476dc4c87c]
2024-03-14 11:32:10 -04:00
David Salinas 7de3d5a95a roc-obj uses incorrect path to find ROCm's llvm-objdump
SWDEV-448278 - [LLNLA-260] (ELCAP-546) roc-obj uses bad path

Change-Id: I1a19f1fea29b301cfc183018fa050a8b8aeaaf02


[ROCm/clr commit: 383ed4cedf]
2024-03-14 10:55:25 -04:00
Satyanvesh Dittakavi 15f01694f4 SWDEV-444021 - Implement hipGetFuncBySymbol
Change-Id: I7ef13d02c5b5c6ce2386ccb92b5602d005b35988


[ROCm/clr commit: 684fd60c8f]
2024-03-14 02:56:30 -04:00
Jaydeep Patel 2d8d4d5821 SWDEV-447384 - Handle double free case.
Change-Id: I7a1d45c2f7510180911507d56ec863982b161f6c


[ROCm/clr commit: 43e2bb6126]
2024-03-13 23:08:27 -04:00
Jacob Lambert 6733795fee SWDEV-371628 Use integrated Comgr action to link ROCm device libs
Previously, we used the following approach and Comgr actions
for device lib linking:

    AMD_COMGR_COMPILE_SOURCE_TO_BC (compile with clang driver)
    AMD_COMGR_ADD_DEVICE_LIBRARIES (link in device libs with
      llvm-link API)

However, the clang driver can link in device libraries as part
of compilation, assuming a --rocm-path is set. In this context,
this is accomplished by using the following Comgr action instead:

  AMD_COMGR_COMPILE_SOURCE_WITH_DEVICE_LIBS_TO_BC (compile and
    link in device libs with clang driver)

Change-Id: Ie0bbee7d9a12672536b6d751056a941128ed58be


[ROCm/clr commit: 6311ed8a8e]
2024-03-13 20:34:59 -04:00
jiabaxie 5af8ba8513 SWDEV-450204 - hipGetProcAddress check for null corrected
Change-Id: Ic34b0d561d3d70f3411a60924a64c3b89954394f


[ROCm/clr commit: 14bcbcc25b]
2024-03-13 16:44:08 -04:00
pghafari f77ed12c4d SWDEV-430356 - updated VArange to use SVM
Change-Id: Ice3582732dd6f43af6d566e5420234a581a1c194


[ROCm/clr commit: c13864abed]
2024-03-13 11:47:36 -04:00
Jaydeep Patel 05fccb2d7e SWDEV-447525 - Fix merge conflict.
Change-Id: I9dc852e634fb702a0d17ace3fad53e14178d4da0


[ROCm/clr commit: 79162c244b]
2024-03-13 11:52:28 +00:00
Jaydeep Patel 844765d7e0 SWDEV-447525 - maxSize param for Mem pool props.
Change-Id: Ib743611a66921aeaa449b6622b933cc8b9190d87


[ROCm/clr commit: b72d8da1bd]
2024-03-13 00:58:48 -04:00
Saleel Kudchadker 54d326dfa1 SWDEV-301667 - Use right macros and level for logging
- Sometimes we want to mask out kernel names, use right level for kernel
logging

Change-Id: Ideae9647c57b86ae390ff2f4131f6d8c6df5c086


[ROCm/clr commit: f1adecd186]
2024-03-12 19:00:03 -04:00
kjayapra-amd 8947420e41 SWDEV-423835 - Fixing kernel launch issues on Virtual Memory Management path.
Change-Id: I9f5e8a3d83af3809b2c50b21a10697e26113dd23


[ROCm/clr commit: f5ca620baa]
2024-03-12 17:22:07 -04:00
taosang2 1196e76a6c SWDEV-448792 - Fix clinfo local buffer type
Change-Id: I0228c5e97ce7c466983fd4af71d25e7f8161c2c8


[ROCm/clr commit: dd43dc930d]
2024-03-12 13:48:59 -04:00
taosang2 8cc8dda1cd SWDEV-450225 - Add missing targets in hipRtc
Change-Id: Ifccdddfc8ac72585f6ba145578e5bbb7e3cd1643


[ROCm/clr commit: 4c82df817f]
2024-03-12 10:34:08 -04:00
German Andryeyev f3db4e12e6 SWDEV-311271 - Correct the error codes in mempool
Change-Id: Iacf8ad2cc454dfe53ccdb47c08d871b24ecf4107


[ROCm/clr commit: 1d8562eb7d]
2024-03-12 10:18:44 -04:00
Satyanvesh Dittakavi 311b0ed376 SWDEV-447405 - Reset the last SDMA engine after every few copies
The copies can get blocked if the last SDMA engine is used by another
copy and this can lead to perf drop in some of the tests like Gromacs.
Resetting the last engine by checking the engine status and fetching the
new mask after few copies can avoid this.

Change-Id: I8fe8ea678db508d291c6242f3741fa9215e99921


[ROCm/clr commit: 1b25484f0f]
2024-03-12 02:10:27 -04:00
sdashmiz 0c65a7baea SWDEV-447458 - remove check for image support
- remove the check from hipmallocpitch

Signed-off-by: sdashmiz <shadi.dashmiz@amd.com>
Change-Id: Ife3a95381be703b1c1b7492abfd4432c4a8141c8


[ROCm/clr commit: 315d0fc46e]
2024-03-11 11:39:14 -04:00
German Andryeyev 92c93f47c5 SWDEV-311271 - Enable mempool under Windows
Change-Id: Ifa4cac4a8d52e031d63f62515439ca09efe7b4cb


[ROCm/clr commit: 0f3391b93e]
2024-03-11 10:45:51 -04:00
Shilei Tian d90a0d9c57 SWDEV-442724 - Remove uses of -amdgpu-early-inline-all to enable function calls
Currently we force inlining everything for HIP. Now we'd like to enable function
supports. The first step is to remove uses of `-amdgpu-early-inline-all` in
various places. This patch is to remove all of them from clr.

Change-Id: Ib0cad1f586714c9989778b00746aa4c47a4eec95


[ROCm/clr commit: a09204388a]
2024-03-11 10:02:12 -04:00