Граф коммитов

12688 Коммитов

Автор SHA1 Сообщение Дата
pghafari 0cff14c9e1 SWDEV-441258 - remove full path for HIP LOG windows
Change-Id: Ibad6e9542c0cede38f5a114dcd352356ddedf019
2024-01-16 15:26:06 -05:00
German 13c6f56ca9 SWDEV-440746 - Enable hipExtAnyOrderLaunch extension for PAL
Extension allows to execute the kernels without a wait barrier and L1
invalidation.

Change-Id: I96c485204303f54a0240b93134f4560673e4bd17
2024-01-16 15:20:39 -05:00
kjayapra-amd 0f9c624f4c SWDEV-413997 - Physical address size could be more than mapped size, only virtual address needs to be match the size of unmap request.
Change-Id: If0e973149d8ce1b6f01000ab951cf6e9f4b38e97
2024-01-16 07:09:50 -05:00
Maneesh Gupta 4b6912031b SWDEV-1 - Temporarily disable rocprofiler-register support
Change-Id: I2e4b4c5f6c0640fc4e1378dd920b080b88583921
2024-01-16 04:15:05 +00:00
Saleel Kudchadker 0b0df605d4 SWDEV-301667 - Remove resetFenceDirty
Dont track the status of fence_dirty_ flag on the host, instead clear it
when we submit a barrier on the respective stream.

Change-Id: I4d98dbf20c81379c9c5da9f5b67629a8f9f6dfcd
2024-01-15 15:43:14 -05:00
Jonathan R. Madsen 0f1fdc7794 Add rocprofiler-register support
- Add API table versioning defines to hip_api_trace.hpp
- Add rocprofiler-register implementation in hip_api_trace.cpp
  - created ToolInit implementation
  - moved some local functions into anonymous namespace
  - renamed some function to be overloads
  - made most of the initialization code templated (reduced code duplication)
  - enforce ABI
- Updated hipamd/src/CMakeLists.txt
  - find rocprofiler-register package (enabled by default but not required)
- Address review comments
  - simplify size calculation for dispatch table
  - remove setting .size field in GetDispatchTableImpl
- Fix windows build
- Do not enforce ABI on Windows

Change-Id: I08766e8a083528a1236996274bf4522e0e8a1b9f
2024-01-13 01:02:59 -06:00
German 31101c6219 SWDEV-440746 - Limit WG for compute P2P
Use only 16 workgroups for compute P2P copies.
That should be enough to utilize XGMI bandwidth.

Change-Id: I60dfe019279bb95f93c8874244c1738aad1896d8
2024-01-12 14:56:29 -05:00
sdashmiz d23835ffbe SWDEV-421027 - Add hipGraphAddNode
Signed-off-by: sdashmiz <shadi.dashmiz@amd.com>
Change-Id: Ic8cf293ff483ee2547b52d2975062bcb9a6f5d17
2024-01-12 11:36:30 -05:00
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