Commit Graph

12807 Commits

Author SHA1 Message Date
Jaydeep Patel 43e2bb6126 SWDEV-447384 - Handle double free case.
Change-Id: I7a1d45c2f7510180911507d56ec863982b161f6c
2024-03-13 23:08:27 -04:00
Jacob Lambert 6311ed8a8e 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
2024-03-13 20:34:59 -04:00
jiabaxie 14bcbcc25b SWDEV-450204 - hipGetProcAddress check for null corrected
Change-Id: Ic34b0d561d3d70f3411a60924a64c3b89954394f
2024-03-13 16:44:08 -04:00
pghafari c13864abed SWDEV-430356 - updated VArange to use SVM
Change-Id: Ice3582732dd6f43af6d566e5420234a581a1c194
2024-03-13 11:47:36 -04:00
Jaydeep Patel 79162c244b SWDEV-447525 - Fix merge conflict.
Change-Id: I9dc852e634fb702a0d17ace3fad53e14178d4da0
2024-03-13 11:52:28 +00:00
Jaydeep Patel b72d8da1bd SWDEV-447525 - maxSize param for Mem pool props.
Change-Id: Ib743611a66921aeaa449b6622b933cc8b9190d87
2024-03-13 00:58:48 -04:00
Saleel Kudchadker f1adecd186 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
2024-03-12 19:00:03 -04:00
kjayapra-amd f5ca620baa SWDEV-423835 - Fixing kernel launch issues on Virtual Memory Management path.
Change-Id: I9f5e8a3d83af3809b2c50b21a10697e26113dd23
2024-03-12 17:22:07 -04:00
taosang2 dd43dc930d SWDEV-448792 - Fix clinfo local buffer type
Change-Id: I0228c5e97ce7c466983fd4af71d25e7f8161c2c8
2024-03-12 13:48:59 -04:00
taosang2 4c82df817f SWDEV-450225 - Add missing targets in hipRtc
Change-Id: Ifccdddfc8ac72585f6ba145578e5bbb7e3cd1643
2024-03-12 10:34:08 -04:00
German Andryeyev 1d8562eb7d SWDEV-311271 - Correct the error codes in mempool
Change-Id: Iacf8ad2cc454dfe53ccdb47c08d871b24ecf4107
2024-03-12 10:18:44 -04:00
Satyanvesh Dittakavi 1b25484f0f 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
2024-03-12 02:10:27 -04:00
sdashmiz 315d0fc46e SWDEV-447458 - remove check for image support
- remove the check from hipmallocpitch

Signed-off-by: sdashmiz <shadi.dashmiz@amd.com>
Change-Id: Ife3a95381be703b1c1b7492abfd4432c4a8141c8
2024-03-11 11:39:14 -04:00
German Andryeyev 0f3391b93e SWDEV-311271 - Enable mempool under Windows
Change-Id: Ifa4cac4a8d52e031d63f62515439ca09efe7b4cb
2024-03-11 10:45:51 -04:00
Shilei Tian a09204388a 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
2024-03-11 10:02:12 -04:00
Sameer Sahasrabuddhe 0421a35f71 SWDEV-295298: hide warp sync builtins in ROCm 6.2 (absent in 6.1)
Change-Id: I6d59e4f3a133dce5ea0521fc9d09f93f9fd0f376
2024-03-11 02:44:20 -04:00
Ioannis Assiouras 5e294f89a8 SWDEV-444670 - Register the Runtime::tearDown function to be called at exit
Change-Id: I2200b8154ce6806bf99150d0d68f6f20138fa3dc
2024-03-08 18:46:59 -05:00
Jaydeep Patel 66f6a3e255 SWDEV-446219 - Validate option value.
Change-Id: Ifccdddfc8ac71585f6ba045578e5bbb7e3cd1649
2024-03-07 12:53:34 -05:00
Anusha GodavarthySurya 4feb1f9337 SWDEV-448586 - Added implementation for new API hipStreamBeginCaptureToGraph
Change-Id: I1ce802102cef2b66c92d3375f769983841de793f
2024-03-07 05:24:49 +00:00
German Andryeyev 17d0c166d2 SWDEV-311271 - Add dependency tracking for streams
Mempool has capability to track dependency between streams for
faster memory reuse. Enable that capability.

Change-Id: I28266a7e38d0fc4c5d027b9542d3719653840821
2024-03-05 12:53:09 -05:00
German Andryeyev 11a6be1ede SWDEV-311271 - Return different errors
Match errors with the tests

Change-Id: I32db83843e45e0f09359149ea9fd7a532c881e16
2024-03-04 17:02:30 -05:00
Rahul Manocha e5e7687fd8 SWDEV-448281 - Fix for CG Tile Partition Dynamic Size
Change-Id: Ibdccec45470caf55a8c00194e6da0dde73e4b180
2024-03-04 13:00:24 -05:00
Vikram 6f390f5af9 SWDEV-424956 - Fix OpenCL printf bug while printing vectors of half type
OpenCL printf handling did not process vector of half precision floats properly
 (mainly because compiler packs 2 halfs into a dword and runtime failed to extract the
 individual parts).

 This patch fixes the issue.

Change-Id: Ia1f15ccfb5db52b71c43cfd588dd38f551ee5277
2024-03-04 03:53:18 -05:00
Ioannis Assiouras 74cae705ae SWDEV-445960 - Fix __umul64hi __mul64hi on windows
Change-Id: I4857d269bc80fcc0e6b77df941f24ff1964a4d42
2024-03-03 12:42:42 -05:00
cadolphe 47e3ed545d Revert "SWDEV-374668 - Observed one subtest failure in ocltst32"
This reverts commit 60d413a5b9.

Change-Id: I42d6248204107f741a462101f9608e01a7ba91d5
2024-03-02 14:05:44 -05:00
Saleel Kudchadker 984c86f407 SWDEV-301667 - Better log
- Print SWq for AQL packets, this helps correlating a stream to the HWq
mapped

Change-Id: I610430c0872a1abc6636027c00163ec46983cd65
2024-03-01 16:43:06 -05:00
Jatin Chaudhary 7f9651d4bb SWDEV-441629 - add some missing hiprtc link options
Change-Id: I10019823e212c6d4de6df30c0fe1c20d9e992f29
2024-03-01 07:49:57 -05:00
ChingShihLi 6723277ad4 SWDEV-413377 - Segfault for hipLaunchKernel with multi GPUs
- Using runtime unbundler, no any gfx device can load fat binary,
if there is any device without available code object.

- Extract available code object to corresponding gfx devices. So
users can work ROCm with those ready devices without segmentation
fault.

Change-Id: I9f14c65ecebf2d3c4b127a007cb434a3ae98c450
2024-03-01 02:24:22 -05:00
jujiang 574d946cfb SWDEV-444835 - Porting changelog from 6.1 to staging
Change-Id: I85b2993485da797df4ac3e146481c341680c4595
2024-02-29 23:44:02 -05:00
Saleel Kudchadker 94c7004df8 SWDEV-301667 - Increase default signal pool to 4096
Change-Id: I4ab23b0f87e295b40ab76ad6e96249d11b8ad04d
2024-02-29 22:52:02 +00:00
Saleel Kudchadker 68f40f78dd SWDEV-443760 - Enable device kernel args for MI300
- Enable Device kernel args for MI300* for now.
- Fix a perf issue which impacts graph instantiate when dev kernel args
are enabled.

Change-Id: I962e58fd9d8dd1a8db95e601cb03a8e9c7bac97f
2024-02-28 19:10:04 -05:00
Rahul Manocha 2c0fa829b4 [SWDEV-448077][SWDEV-448067] - Changes to Kernel Node Attribute related APIs
Change-Id: Ibbf773fd5f134a62b7ce04f6956b10c1086b1782
2024-02-28 18:14:41 -05:00
Anusha GodavarthySurya e0e63eb04d SWDEV-447545 - Fix Enable/Disable node with hipGraph
Node can be enabled/disabled only for kernel, memcpy and memset nodes.
If the node is disabled it becomes empty node.
To maintain ordering just enqueue marker with respective node dependencies.

Change-Id: I710f3e88ab4e76c81f6f86a40a7dc61fd4c7e440
2024-02-28 17:34:03 -05:00
Anusha GodavarthySurya ea66946399 SWDEV-444988 - Fix hiddenheap variable initialization
Change-Id: Icdb32ef4718b8ca0beedd569a4aaf40a9f4fb49d
2024-02-28 17:22:32 -05:00
German Andryeyev d808ae6782 SWDEV-311271 - Update mempool errors
Add extra validations for negative tests.

Change-Id: I7b2879b8840b5d1b6c5cb0d919a651cd868b7529
2024-02-28 17:13:49 -05:00
Sourabh Betigeri 3fdd46ae59 SWDEV-425640 - An instantiated graphExec should retain a copy of every reference in the source graph
Change-Id: Idf6b224449ca642af2860b33dc739f51a6248e4c
2024-02-28 12:04:53 -05:00
Satyanvesh Dittakavi 15a058cb60 SWDEV-446781 - Check validity of hiprtc link state before using it
Change-Id: I864e8d1a79bb28d9df0e4ee528cb50a96bc245cc
2024-02-28 00:27:17 -05:00
Anusha GodavarthySurya 4b4ec7fc52 SWDEV-445981 - Handle hipGraphExecUpdate to update graph kernel node params with graph performance optimizations
Change-Id: I3b05c6bfc83404152bcae9b31cfdf56af7cc61a4
2024-02-27 15:20:23 -05:00
Jonathan R. Madsen d84c5ae3af SWDEV-443227 - Update hip_api_trace.cpp
- enforce incrementing the table versioning number when a table size changes outside of ifdef for ROCPROFILER_REGISTER
- add new HIP_ENFORCE_ABI entries
- update the HipDispatchTable size and bump HIP_RUNTIME_API_TABLE_STEP_VERSION to 1
- re-enable rocprofiler-register

Change-Id: Ie0cc1d8491c5640056e5dd393ea243e4dce4e8a9
2024-02-27 13:29:33 -05:00
Anusha GodavarthySurya 2dc6ec68a5 SWDEV-444988 - Fix __amd_rocclr_initHeap sync with DEBUG_CLR_GRAPH_PACKET_CAPTURE
When kernel does device side malloc, initial heap is allocated with __amd_rocclr_initHeap.
During graph launch kernel __amd_rocclr_initHeap is enqueued followed by actual kernel . So kernel will execute after initHeap kernel.

But with graph optimizations during capture initHeap gets enqueued on device null stream and actual kernel on graph launch stream.
So no proper synchronization. Switch to command creation and enqueue during launch for kernel node with hidden heap.

Change-Id: Iaf600251faef9a448853f19429023c118aa760b9
2024-02-27 13:11:31 -05:00
Ajay e643406caa SWDEV-347670 - StreamWait and StreamWrite on Windows
__amd_streamOpsWrite blitkernel in device-libs has only 3 args.
so getting rid of the 4th unused arg (sizeBytes)

Change-Id: I81cc1107f8b424bf58558c93a2495a1b878aef91
2024-02-26 22:45:10 -05:00
kjayapra-amd 8a715ba58c SWDEV-446959 - Check fatbinaryinfo for nullptr and return hipErrorInvalidDevice.
Change-Id: Iabc0d8b66ddf73a92e67dd469f1a8bc0b54b9309
2024-02-23 14:45:43 -06:00
German Andryeyev e2d2fad56c SWDEV-440746 - Fix a crash during RGP capture
With multiple HIP streams it's possible to have a race condition when
one thread stops the traces, but another still performs submisisons.
That may cause a crash on the barrier callback.

Change-Id: Ic56f8277fcfd2c2142a4821d927b938b9f313add
2024-02-22 23:53:35 -05:00
Jaydeep Patel 4177b4b675 SWDEV-359287 - uniform_work_group_size is interger type is 1 for true and 0 for false.
Change-Id: Iac5584c3cdd3bf78e3f1e89033b9ce7e07afefca
2024-02-22 22:37:31 -05:00
German Andryeyev 8f9a20738e SWDEV-404889 - Don't report trap handler
Trap handler shouldn't be reported for debugger and RGP

Change-Id: I149dacfed49584503c1874120d5f552fdec323a7
2024-02-22 14:49:54 -05:00
Rahul Garg b954d0d6e0 SWDEV-443760 - Disable HIP_FORCE_DEV_KERNARG by default
Change-Id: I8c3d8e65aa954bd28499eebefbc532d1177445dc
2024-02-22 04:37:51 -05:00
Satyanvesh Dittakavi 821ae6a103 SWDEV-426272 - hipPointerGetAttribute shouldn't segfault when host ptr is passed
Check the pointer if its present in the arrayset before trying to dereference
it as it can cause access violation if the pointer is allocated using malloc

Change-Id: Ida72b9015dc22269fc1fbe0728e66e3de29fda3d
2024-02-21 16:37:21 +00:00
jujiang 4c28f4aefd SWDEV-446296 - Update README for the repos link change
Change-Id: I13f73e3c9a066c5e92f630bcd06f777790087e5e
2024-02-20 18:53:07 -05:00
Ioannis Assiouras 1f6d416684 SWDEV-446399 - Fixed segfault in hipMemSetAccess
Change-Id: Ia1200d9bee03e8abade211287505f081e635ceec
2024-02-20 18:51:05 -05:00
Todd tiantuo Li 7bfee3481b SWDEV-333557 - Enable PAL_HIP_IPC_FLAG by default
Change-Id: Ibb2ca0b9521aff4eca190e4817dcc5f8d697b172
2024-02-20 18:45:25 -05:00