Commit Graph

12680 Commits

Author SHA1 Message Date
Jatin Chaudhary 2cfb8bc3c1 SWDEV-438181 - check stream associated with event
...before we dereference it. It might have been deleted.

Change-Id: Ief832ee0907658a40ca42b9d78d19658153a05dd
2024-01-12 10:39:20 -05:00
Sameer Sahasrabuddhe c5ab5680b4 SWDEV-295298: introduce warp sync functions
The following builtins from the CUDA spec are implemented:

  - __all_sync, __any_sync, __ballot_sync and __activemask
  - __match_any_sync and __match_all_sync
  - __shfl_sync, __shfl_up_sync, __shfl_down_sync, and __shfl_xor_sync

The following builtins are NOT implemented, pending support in the compiler:

  - __reduce_add_sync, __reduce_min_sync, __reduce_max_sync
  - __reduce_and_sync, __reduce_or_sync, __reduce_xor_sync

Change-Id: I07dedbbfe5449f4b5c9b040bed59f5603ccec8c3
2024-01-11 22:31:27 -05:00
Saleel Kudchadker 4b3c4709ff SWDEV-301667 - Missing marker for hipExtLaunch* optimization
- Use isFenceDirty() check in hipStreamQuery.
In case if there is a stopEvent for hipExtLaunch* API we avoid system
scope if there are consecutive hipExtLaunch* and replace them with agent
scope, but then if one uses hipStreamQuery it should detect we need a
barrier with system scope.

Change-Id: I539810f659d4e1c49104e3a0da6ff2803c6b3dee
2024-01-11 18:19:30 -05:00
jujiang 2a2fea6c07 SWDEV-410522 - Fix a doxygen warning in a header in AMD platform
Change-Id: I29cd222af453c42a5d472081747bacf0c3f8d17c
2024-01-11 13:40:25 -05:00
Konstantin Zhuravlyov 5f7ebda6aa Revert "Removed some options"
This reverts commit 15b8cf911a.

Reason for revert: multiple tickets filed. i will re-instate this change after fixing those.

Change-Id: I66152e3643c73ec1d240d0fcddf2119f8f4848a8
2024-01-10 13:35:42 -05:00
Saleel Kudchadker d6b4892600 SWDEV-439242 - Fix perf regression
This issue is due to the fact that we set fence_dirty_ flag for every
kernel launch. Whenever any next HIP API is caused, the stream logic
assumes fence is dirty and queues a marker, when its not needed.

Change-Id: I10a49ee951daa92221aa6be75e2334849579a45d
2024-01-10 11:45:02 -05:00
German eaa61fc740 SWDEV-301667 - Fix HSAIL compilation path for Blit
Recently some unused compiler options for HSAIL path were removed,
 but it affected blit kernels compilation. Hence, remove those options.
Also delete assert for device to device copy in SDMA path for now.

Change-Id: Ib5d7f063af2ab4a3fc5d73d426e39c391b1011ac
2024-01-09 17:51:30 -05:00
German dec1158d04 SWDEV-438532 - Enable wave limit for HSAIL
Luxmark still uses HSAIL path and one subtest can benefit from the wave limit.

Change-Id: I16c94e09cd6e2afd6341cb76bf2e9ab7b7713214
2024-01-09 17:00:50 -05:00
kjayapra-amd 98c87921a3 SWDEV-440106 - Mapping hipDestroyExternalMemory in HIP dispatch table.
Change-Id: I5e6e21f929c95be524ace7fd8735a05994c896e8
2024-01-09 15:02:03 -05:00
sdashmiz 087767d9ac SWDEV-403382 - Add missing graph APIs
- add external semaphor signal and wait node

Signed-off-by: sdashmiz <shadi.dashmiz@amd.com>
Change-Id: If205d48bc4fb60ce2966ca6ed0419e7700755bdd
2024-01-09 14:19:50 -05:00
David Salinas bf7d45050d Change dependency from hipcc to hipcc-nvidia for hip-runtime-nvidia packages
SWDEV-424143 : rocm-llvm is installed with hip-runtime-nvidia package

Change-Id: Ibeffd1df9ee2efcfcd57a258d99b138eb9200681
2024-01-09 18:49:30 +00:00
German 49037b9762 SWDEV-439241 - Keep direct map for MGPU
Single OCL context with multiple devices should use direct map
even with persistent memory, because cache coherency layer.

Change-Id: I02a48830440203a1dea176acd4dff4452b70f133
2024-01-08 18:14:15 -05:00
German 85c15d720d SWDEV-438958 - Calculate persistent memory stored in the cache
- Make sure persistent memory from resource cache is properly adjusted
in free memory calculation.

Change-Id: I74ef68975ccde4694fb1cb904617c418e85dfc9f
2024-01-08 10:11:52 -05:00
Rahul Garg 956cc463bf SWDEV-439426 - Update HIP patch version reported through CMake
Change-Id: I2b32edfa18d85d49a4b96ff80ea8f60e1df5d517
2024-01-08 03:43:01 -05:00
ksankisa f554a075c7 SWDEV-404921 - Add dynamic LDS size hidden kernel argument
Change-Id: If99019058e4bfdc988ef5fc4cef001b772380453
2024-01-06 08:46:55 +05:30
Satyanvesh Dittakavi c398c75512 SWDEV-432977 - Set the correct device id in hipIpcOpenMemHandle
hipIpcOpenMemHandle can be used to open memory handle and fetch
  a device pointer on a different device than the actual device
  where the memory was allocated. The device Id must be set to
  the current device in such cases and not the original device.

Change-Id: Ie1c7eada928d02124a41125876876f96015552e5
2024-01-05 00:28:59 -05:00
Saleel Kudchadker 3f2f7252aa SWDEV-365820 - Refactor build path
This is an initial change before we refactor the build/link paths for
kernel launches for HIP. This current change is needed as compiler was
setting some dump file which needed fs access which has slowdowns for
NFS mounted file systems

Change-Id: I828f9bb04d789b4f8c05c1ed08767f325efeb47c
2024-01-04 14:20:59 -05:00
David Salinas 9fa8dcd1d1 Enable support for roc-obj tools on Windows
SWDEV-301785 - roc-obj - support for Windows COFF

Change-Id: I20d53196e2d126391934351cb824b7bc926fb1ce
2024-01-04 10:31:02 -05:00
Ioannis Assiouras 411bccff5b SWDEV-438299 - Simplified the code in ExtractFatBinaryUsingCOMGR
Change-Id: Ic15f2b71ae87ab3ca36ed5af2c816d57d09b3e70
2024-01-04 04:01:58 -05:00
Ioannis Assiouras af86c1b8a2 SWDEV-438531 - Fixed hipGraphExecMemcpyNodeSetParams for H2H kind
The function erroneously returns hipErrorInvalidValue when kind
is set to hipMemcpyHostToHost

Change-Id: I6810b9f04f3218e517fd2f96410d1375e6ac6ff0
2024-01-04 03:47:39 -05:00
Satyanvesh Dittakavi 755eb2962c SWDEV-434846 - Limit the gpu single allocation percentage for all MI300 versions
Change-Id: I33dea3eaab249ce3f9a624d38267489f99cd530c
2024-01-03 23:47:44 -05:00
German Andryeyev a1fffac595 SWDEV-311271 - Switch to sorted map for pool allocations
Sorted map can work much faster for many allocations and a low reuse frequency

Change-Id: I6dba29ebc8bfacdf34307149b6a2b194890b2932
2024-01-03 17:36:05 -05:00
shadi a071c4d2fc SWDEV-388256 - correct API name
Signed-off-by: shadi <shadi.dashmiz@amd.com>
Change-Id: Icbf79613268fe0737a8033abfbcc9f33d785bc12
2024-01-03 15:06:41 -05:00
Saleel Kudchadker dfd4635f91 SWDEV-422207 - Tag captured kernel names for graphs
Change-Id: I9540daa4abf9c340541a681037e2dca4eec821ed
2024-01-03 11:50:05 -05:00
Konstantin Zhuravlyov 55e5b3d07a Don't pass -fsc-use-buffer-for-hsa-global option in OCLPerfUncoalescedRead test
- This is an SC-only option

Change-Id: If9afe5f8e4ec6dbcf6ce1ca4406131ef92669f84
2024-01-02 23:13:45 -05:00
Jatin Chaudhary 49369f0851 SWDEV-436233 - fix the cumode in hiprtc
cumode should be active when wgp mode is off

Change-Id: I12f2e55d942ddeb0fb4470de7abc3caff1f430f7
2024-01-02 17:43:32 -05:00
German 7d661bc7df SWDEV-404889 - Enable debugger interface in PAL
Add GPU_DEBUG_ENABLE to control ttpm behavior. If enabled,
then HW will collect more debug info at some perf cost

Change-Id: Icee0686b903a7b1bd483710b9d611877cd43c6aa
2024-01-02 11:51:42 -05:00
Satyanvesh Dittakavi dc8f66b86f SWDEV-379212 - Handle template kernels with hiprtc lowered names
Change-Id: Ib8e6493a1f342f92a35031d5ee39b2e22132b56a
2024-01-02 03:28:28 -05:00
Jaydeep Patel c3fc607e7d SWDEV-437440 - Specify which defination to use at compile time.
Change-Id: Ibeee914f293d26fa68ab793cac8b662aa34e8df3
2023-12-21 19:59:39 -05:00
Konstantin Zhuravlyov 15b8cf911a Removed some options
-xnack, -force-wgp-mode, -force-wave-size-32, -round-trip-spirv,
-fe-gen-spirv, -lower-pipe-builtins=0|1, -lower-atomics=0|1,
-set-lds=<value>, -set-scalar-registers=<value>,
-set-vector-registers=<value>, -limit-scalar-registers=<value>,
-limit-vector-registers=<value>, -sc-xnack-iommu,
-faa-for-barrier/-fno-a-for-barrier, -sc-dev-format, -verify-lwspir,
-verify-hwspir, -ffma-enable/-fno-fma-enable,
-fmad-enable/-fno-mad-enable, -fdisable-avx/-fno-disable-avx,
-fforce-llvm/-fno-force-llvm, -print-compile-phases,
-kernel-cache-enforce-miss, -kernel-cache-wipe, -kernel-cache,
-sc[=<filename>]/--load-sc-dll[=<filename>],
-be[=<filename>]/--load-be-dll[=<filename>],
-cg[=<filename>]/--load-cg-dll[=<filename>],
-link[=<filename>]/--load-link-dll[=<filename>],
-opt[=<filename>]/--load-opt-dll[=<filename>],
-fe[=<filename>]/--load-fe-dll[=<filename>],
-cl[=<filename>]/--load-cl-dll[=<filename>], -just-kernel=<kernel-name>,
-use-debugil, -fmulti-level-call/-fno-multi-level-call,
-fdebug-call/-fno-debug-call, -fmacro-call/-fno-macro-call,
-fstack-uav/-fno-stack-uav, -fdef-res-id/-fno-def-res-id,
-wokth=int/--waves-opt-kernel-threshold,
-ilkth=int/--inline-kernel-size-threshold,
-ilsth=int/--inline-size-threshold, -ilcth=int/--inline-cost-threshold,
-scopt=int/--sc-opt-level, -flib-no-inline/-fno-lib-no-inline,
-fuser-no-inline/-fno-user-no-inline,
-scras=int/--sc-si-opt-reg-alloc-strategy, -fsc-post-ra-sched,
-fsc-live-sched/-fno-sc-live-sched, -fsc-use-buffer-for-hsa-global,
-fsc-schedule-no-reorder, -fsc-min-reg-schedule,
-fsc-bias-schedule-to-minimize-insts,
-fsc-bias-schedule-to-minimize-regs, -fsc-disable-merge-memory,
-fsc-disable-loop-unroll, -fsc-use-mubuf/-fno-sc-use-mubuf,
-fsc-selective-inline/-fno-sc-selective-inline,
-fsc-keep-calls/-fno-sc-keep-calls, -slc=0|1/--simplifylibcall,
-stack-alignment=<n>, -fdiv2fmul=0|1, -prt-opt-liveness=0|1,
-liveness=0|1, -SRAE-threshold=<value>, -memcombine-max-vec-gen=<value>,
-small-global-objects, -fast-fmaf, -fast-fma, -bfo=0|1, -ebb=0|1, -aa,
-mem2reg=0|1, -licm=0|1, -unroll-allow-partial,
-unroll-threshold=<positive integer>, -unroll-count=<positive integer>,
-apt/--ap-threshold=<positive integer>, -srt/--sr-threshold=<positive
integer>, -fdebug-linker/-fno-debug-linker, -fbin-gpu64/-fno-bin-gpu64,
-fbin-disasm/-fno-bin-disasm, -fbin-bif30, -fbin-hsail/-fno-bin-hsail,
-fbin-amdil/-fno-bin-amdil, -fbin-spir/-fno-bin-spir, -fonly-bin-source,
-fper-pointer-uav/-fno-per-pointer-uav

Change-Id: I1af5b0a11b55bf75b727057143159fbbf1bb8f0e
2023-12-21 10:18:37 -05:00
Anusha GodavarthySurya 748c6b3520 SWDEV-422207 - Fix simple graph test when DEBUG_CLR_GRAPH_PACKET_CAPTURE flag is enabled
- For new AccumulateCommand we enqueue nop barrier packet. So during stream sync we need system flush.

Change-Id: I0b97b626bcdae582ef95e7c95030d78df1fa5a54
2023-12-20 22:50:36 -05:00
Anusha GodavarthySurya 9b6cf0f74b SWDEV-351966 - Rename hip::__hipExtModuleLaunchKernel to hip::hipExtModuleLaunchKernel
Change-Id: Ie922760f37bf0c9abf2653d36e32705a12ab5a90
2023-12-20 22:50:01 -05:00
kjayapra-amd e05923b139 SWDEV-413997 - Enable Virtual Mem support by default.
Change-Id: Ia3db3919701708cf95574692e1d47375ca99d7fd
2023-12-20 12:49:16 -05:00
Alex Xie 06ff62da61 SWDEV-438177 - move ldconfig to amd opencl package instead of icd
Change-Id: I2486f38d398a508ead7d24f03d4cf7816d5c157c
2023-12-20 10:04: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 Andryeyev 3fa4e31180 SWDEV-311271 - Release freed memory from MemPools
Runtime has to release extra memory, held by the pools,
in synchronization points for event, stream or device.

Change-Id: Id533a5e1d137812aa72bdfe101b4b333c6a43d66
2023-12-19 13:47:04 -05:00
German adf9406a16 SWDEV-1 - Promote PAL verison to 843
Change-Id: I2b8d2fd1df61b376598da53bef530243f8d6e757
2023-12-19 10:25:32 -05:00
Rahul Garg 92aa9d0fba SWDEV-388256 - Add support of hipExtGetLastError
Change-Id: Ie119d5ea611019996b8a80f7b820ca6a160496a6
2023-12-18 22:03:22 -05:00
Ioannis Assiouras d3bfb55d7a SWDEV-437817 - Fix hipMemCpy2D case that erroneously fails with invalid argument error
When an offset is applied to the source or destination pointers plus the kind is set to
hipMemcpyDefault and the source or destination is allocated with hipMallocManaged
hipMemCpy2D erroneously fails with hipErrorInvalidValue.

Change-Id: I0db4c17514f743652d8f9a2691da6601a2abb2a1
2023-12-18 07:31:56 -05:00
Anusha GodavarthySurya 4a7291ded8 SWDEV-436405 - Move hipChooseDevice out of hip namespace
Change-Id: I47a3cc5e5409f418b282d1a2e250128c769f4778
2023-12-18 04:37:39 -05:00
taosang2 d6d235a111 SWDEV-435296 - Fix sporatic segment fault
Fix sporatic segment fault in texture test
via retaining image in texture object which
references the image.
The image will be released when the texture
object is destroyed.

Change-Id: Ic3fefa2d5dda6afebd1acd4d41ad310b138af6dd
2023-12-15 21:06:20 -05:00
Ioannis Assiouras fe739047e5 SWDEV-433745 - Added demangled symbol for hipExtModuleLaunchKernel
Change-Id: Ib8051fcbdf0c8c99e97c845b777d6562220701a0
2023-12-15 16:59:40 -05:00
German Andryeyev a6d480e098 SWDEV-436869 - Destroy host memory
Recent changes disabled system memory allocation
in the abstraciton layer. That requires memory
allocation/destruction in ROCR. Add destruction logic.

Change-Id: I68fe6b0a620ca743fe5850052ea0efa8bb7931c2
2023-12-15 16:39:41 -05:00
kjayapra-amd f9fd5f4049 SWDEV-413997 - Alignment should be a multiple of device granularity.
Change-Id: Ie9c636385bbe3139c2dc24c16f31c9d5e2d56b95
2023-12-15 13:27:23 -05:00
German cfc07c88ee SWDEV-436796 - Enable device memory for kernel arguments
Extra CPU read back will be performed before every submission to make sure
previous writes over PCIE reached GPU. HDP flush is done by CP.

Change-Id: I402d28ca26c8cee4a3920feb3599af8c285d0889
2023-12-15 13:11:50 -05:00
German c8b3253a24 SWDEV-432575 - Disable direct map for persistent memory
Persistent memory should use direct access for write map and
indirect for read map.

Change-Id: I9fc84836d60088b24012ed25f7ef8c16e33796a3
2023-12-15 10:59:01 -05:00
Rahul Garg 35ce9f81d8 SWDEV-422771 - Update links of ROCm projects
Change-Id: I211308814adce86549ce327ed0a823f799b3de03
2023-12-15 08:09:21 -05:00
Anusha GodavarthySurya 3e72b8d1e1 SWDEV-436405 - Add hipGetDevicePropertiesR0000 and hipChooseDeviceR0000 to hip dispatch table
Change-Id: I5b373ac030502eb88477d20a1d216bc48369b51d
2023-12-15 06:26:52 -05:00
Jaydeep Patel 9551d48e7f SWDEV-411343 - Import VK buffer memory exported by name.
Change-Id: Idc7c840fcd6bf758ecc29ffd6558d24e5bd0a25b
2023-12-14 22:16:11 -05:00
jiabaxie f80985f6a1 SWDEV-435477 - correct MACH IDs and add strx1/halo and krackan support for hip
Change-Id: I5b7ed449f4755d69f10677b90ab2b0ceae050b3d
2023-12-14 13:07:03 -05:00