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

13474 Коммитов

Автор SHA1 Сообщение Дата
Ioannis Assiouras 8f54aeb765 SWDEV-511813 - Fix linkage of hipRTC-header.o into libhiprtc.a
Using target_link_libraries does not properly link the hipRTC-header.o
into libhiprtc for static build. Change to use target_sources instead.
This does not affect the linkage in the shared build.

Change-Id: I626f9eacc1637b792a50e7ddddb5db09e704ac4a
2025-03-06 16:29:57 -05:00
Jacob Lambert 2e2b6b3592 SWDEV-518221 Fix major/minor Comgr version check
Change-Id: I2210aadafcae984dafc68c3fe16508bb2b409077
2025-03-06 13:02:34 -05:00
Julia Jiang e5425393b4 SWDEV - 508961 - Update requestedHanleTye in CLR repos
Change-Id: I6949a36c5b0bb8e88a2a33ed13ae8f278a5b19c7
2025-03-06 11:37:31 -05:00
taosang2 d91e1f19d0 SWDEV-512613 - Improve device atomics functions
Also part of SWDEV-510994.
1. Fix atomicMin/Max_system() for float and double.
2. Remove logics of gfx941 which isn't supported.

Change-Id: Iacfdc1bc13e8da2f5df8751bb315b37d33cea667
2025-03-06 10:05:59 -05:00
Ioannis Assiouras e963d30b5d SWDEV-517715 - Remove dependency on non-static hipcc from hip-static-devel
Change-Id: I1184680949fa73d7dc0957062292e6682179b203
2025-03-06 10:01:58 -05:00
Saleel Kudchadker 940347ad42 SWDEV-508004 - Improve hipStreamWaitEvent & Fix typo
- hipStreamWaitEvent may not resolve streams
- Correct usage of flag passed to streamWait function

Change-Id: I2ee163615d303b98937c1035d60da283cce6f677
2025-03-05 11:56:01 -05:00
Pengda Xie ae3b053ddf SWDEV-518317 - Don't attempt to remove managedVars when map is empty
Change-Id: I25c33487dc08f96c087b6acc1abe42a4a666a609
2025-03-05 11:53:18 -05:00
Branislav Brzak c2d1776ebd SWDEV-516564 - SWDEV-512817 - Remove mentions of gfx940 and gfx941
Change-Id: Ia069fcb9c6948c3fc9a00961593c9dcc59609375
2025-03-05 04:26:07 -05:00
Saleel Kudchadker e03e4f3b5d SWDEV-502365 - Track last used command
- This change tries to save extra synchronization packets we may insert
  as we didnt track the completion signals for every command. We track
the current enqueued command until it exits the enqueue stage. We also
record the exit scope to know if we flushed the caches
- Handle correct release scopes and store completion signal as HW events
- Use a new finishCommand implementation to only wait for the command
  passed as the argument

Change-Id: Ie4350c5dd24f5d48dfa6ccbabd892f0544caadcc
2025-03-04 16:05:02 -05:00
German Andryeyev cece301fd4 SWDEV-518474 - Add comgr debug mask
Move prints from CO processing under COMGR debug mask.

Change-Id: I2a417e42a1f4e2922a34eb104c69e4db10b5f1c6
2025-03-04 14:37:08 -05:00
Julia Jiang 81db54d3f9 SWDEV-509855 - Update hipDeviceAttributePciDomainID in CLR
Change-Id: I79939b333ef6114b97009ca4bfb67f63a9a22784
2025-03-04 14:08:08 -05:00
Marko Arandjelovic 3ec1d2d2f1 SWDEV-512344 - Unmap all subbuffers
Since hipMemMap can be called for multiple device handles on the same virtual memory, the same is true for hipMemUnmap, meaning that virtual memory can be "partially unmapped".

This means that the unmap function can be called for a specific part of the reserved address, meaning that only the designated subbuffer should be released. If unmap is called on the entire reserved memory, then all subbuffers should be released.

The main point is that for every hsa_amd_vmem_map, there should be a corresponding hsa_amd_vmem_unmap. Otherwise, if entire memory is unmapped by a single unmap call, then HSA will report the memory as "in use" if an attempt is made to delete it.

Change-Id: I039308eafb820decfb1c09f60347f26cdad1a362
2025-03-02 13:41:48 -05:00
Todd tiantuo Li 0558a8cd8a SWDEV-1 - skip OCLMemoryInfo test for APUs
Change-Id: I5afc244f68115a538eb3d989c3aa119e0f279deb
2025-02-28 13:10:40 -05:00
Saleel Kudchadker 37d606d193 SWDEV-513197 - Unify getBuffer implementation
- Use getBuffer/releaseBuffer in BlitManager
- Cleanup XferBuffer as we use ManagedBuffer for both reads/writes

Change-Id: I2661b85dd012763b17a38a743fec1b1d79125f67
2025-02-28 12:47:51 -05:00
Saleel Kudchadker ca530c660b SWDEV-513197 - Improve launch perf for Device Heap kernels
- If any kernel uses device heap, the launch needs to be preceeded by an
  init kernel, Save on the extra barrier packet launch/flush between the
init heap kernel and user kernel

Change-Id: I8ebc6246188200e5f673dc464bc76a53bcb8b7c6
2025-02-27 19:17:51 -05:00
Ioannis Assiouras e9b33af45a SWDEV-509788 - Code cleanups in Event class
Change-Id: I4163ce6c1dabeaab92de13b51b6a46b7be83e2bd
2025-02-27 17:16:50 -05:00
Alex Xie 375a147e51 SWDEV-514060 - Use newer OpenCL API in test using AMD extension API
Change-Id: Ifdbb3c45628116e48f68ae29324e4cc554c9f2d5
2025-02-27 11:20:37 -05:00
Rahul Manocha 4bf634dfca SWDEV-510849 - Restore pinned memory copy path
1) Create getBuffer method to return pinned host memory or staging buffer
2) for D2H path use managed buffer instead of static buffer
3) use staging buffer copy for 16KB < size < 1MB
4) use pinned memory copy for size > 1MB

Change-Id: I13d4d6ab60691bc6c7724239db1e11e23f0f3dc2
2025-02-26 11:25:02 -05:00
Jacob Lambert 187648429b SWDEV-360440 - Prepare CLR dynamic Comgr load for V3
Change-Id: Iffd835056740ff10711468cc752b7b55078b9f8f
2025-02-26 11:22:18 -05:00
Pengda Xie ade704dd2f SWDEV-512044 - Fix logic error in texture size validation
Change-Id: I6aefcfed25b099c17bf0856d621081c0a5ce46c5
2025-02-26 11:20:58 -05:00
Ioannis Assiouras a8f309049d SWDEV-516994 - Fix race condition in the implementation of graph AutoFreeOnLaunch on Windows
Change-Id: I3c98d0d4bffe2a9e0aa5cfa24b6c8e9a8087da29
2025-02-26 02:36:31 -05:00
Rahul Manocha 5930f047bb SWDEV-489106 - Linker API addition to runtime
1) Add Linker APIs to runtime to support SPIRV linking
2) Migrate Internal implementations to runtime and share with rtc
3) Add Support to bundled and unbundled SPIRV Code object linking.

Change-Id: Ic1fd4431f842a208a2468e8aec54a65b5fa6b0e3
2025-02-22 13:39:23 -05:00
Li, Todd tiantuo 9faaf20aae SWDEV-508980 - [6.4 Preview] fix hipDeviceSetCacheConfig during stream capture
Change-Id: I8e89774a8163fdc120155f742606ee2c0aa7103b
2025-02-22 01:05:28 -05:00
Li, Todd tiantuo c07468e53c SWDEV-510271 - [6.4 Preview] fix hipCreateSurfaceObject & hipDestroySurfaceObject during stream capture
Change-Id: I19e149549c271d847f52b72e04cb2427ca194b24
2025-02-22 01:04:35 -05:00
Ioannis Assiouras 721c5800ca SWDEV-509788 - Use stream memory operation in hipStreamWaitEvent
This change removes the stream callback from hipStreamWaitEvent and
uses a stream memory wait operation instead. This allows the
hipStreamWaitEvent to be non-blocking on the host.

Change-Id: Ie5530febda5a5bcb5daa0db8a01249d6b137fd43
2025-02-21 11:46:09 -05:00
Julia Jiang b7eaec76fc SWDEV-513294 - fix regression on SVM sub-test failure in Conformance
Change-Id: Ic2449dd34a9cd2b623d5f8fbe89fd042566a56e3
2025-02-20 15:40:23 -05:00
kjayapra-amd 1f583a6870 SWDEV-516303 - Remove SDMA retainer logic to select the engine.
Change-Id: I818129444131825cdb87e06cb495afa3e5cdb683
2025-02-20 11:34:38 -05:00
German Andryeyev ba8e740be4 SWDEV-515356 - Make the round-robin queue selection
- Add custom compare to the map of queues, which will help with
 the round-robin selection

Change-Id: Ie67a820bfb1a5b484a1b3edced967eed94228bb8
2025-02-20 11:09:54 -05:00
German Andryeyev 296dce5570 SWDEV-497841 - Add virtual memory heap
Add initial implementation of virtual memory heap with
dynamic virtual memory mapping support for memory pools.
DEBUG_HIP_MEM_POOL_VMHEAP controls the new method.

Change-Id: I8dc5be2e0f34ab472f1800f43bb6243639a5e500
2025-02-20 10:55:49 -05:00
German Andryeyev 63cf3057ba SWDEV-497619 - Allocate extra space in CB
Compute doesn't support IB chaining, but RGP may collect
perf counters, which require more space in CB.
Increase CB size if RGP is enabled.

Change-Id: Iaa0a620ead8541a679b0dfe5e5711af5afdba545
2025-02-20 10:40:09 -05:00
Jimbo Xie 7a4a22d454 SWDEV-477219 - implement hipEventRecordWithFlags
Change-Id: Icf07e85fc8c15f921f6e7c9fbd31dd3856dc988b
2025-02-19 13:53:00 -05:00
Jatin Chaudhary c3f49c8788 SWDEV-511239 - make fp8 standalone host compileable
- Use correct header in device_library_decl
- use std:: instead of __hip_internal:: for host compilation
- hide device specific stuff behind __clang__ and __HIP__ check

Change-Id: I2f3647e00555ed0e79f9954a459c41394c3cd49b
2025-02-18 19:07:45 -05:00
Jatin Chaudhary 0391aec14a SWDEV-515255 - do not free bitcode object before code gen
- Also add a cache, which allows compiled code objects to be reused
  instead of compiling again. This should improve performance on
  multigpu systems.

Change-Id: Ib135d616c076b77f8aaf28de275d408b38021d89
2025-02-18 12:39:31 -05:00
Tim Gu 84a867fb73 SWDEV-502248 - Parse file path with space characters
Signed-off-by: Tim Gu <Tim.Gu@amd.com>
Change-Id: I67fb9cf5559c9c06f24627a1b25fec3e89b2d1cf
2025-02-18 10:31:21 -05:00
agunashe ea804e16f8 SWDEV-507967 - Deprecate gfx9, gfx8, gfx7 on Windows
PAL_CLIENT_INTERFACE_MAJOR_VERSION from 872 --> 910

Change-Id: I03dfa2924ccdae4c2f13f09d5f34ee58298e1343
2025-02-17 02:59:41 -05:00
Anusha GodavarthySurya 199e464402 SWDEV-469422 - hipgraph remove static typecast to parent
Change-Id: I339250cfd26a7c04543722a82301acbb41c7d5d7
2025-02-14 11:09:32 -05:00
David Salinas c942833b34 Deprecate roc-obj* tooling
- make Perl packages RECOMENDS/SUGGESTS for hip-dev
  - update CHANGE log

  SWDEV-511528 - TECH Remove ROCM Perl dependency - hip-dev
  SWDEV-333176 - Shift functionality of 'roc-obj-*' perl scripts into llvm-objdump

Change-Id: Iec3ba245848781f95c825f0d37aff4b4fb54f5e4
2025-02-13 11:42:57 -05:00
Vladana Stojiljkovic 061c5d877f SWDEV-510059 - Format CU mask properly
Change-Id: I80e94b4f3ea25f6988fc06d83aeb398e81ccddd1
2025-02-13 11:02:56 -05:00
harkgill-amd 935b538261 Specify C++ language mode for warning post amdgpu-arch failure
Change-Id: I55bf6734a1e8dc06dd0a1ee12086b7667332206f
2025-02-13 09:40:13 -05:00
Aidan Belton-Schure 179801a750 SWDEV-508279 - Improve HIP event profiling
There are 2 functional changes to this patch:
* Use GPU timing for internal markers for HIP.
* Measure CPU time closer to GPU timer, to reduce delta between GPU/CPU timestamp measurements.

There are some smaller non-functional updates:
* waifForFence -> waitForFence typo
* Remove unused drmProfiling

Change-Id: I4c5fa600a842ab60e454888779edcac8449a902a
2025-02-13 04:15:40 -05:00
Jatin Chaudhary c23913f6e7 SWDEV-474146 - use __bf16 to do operations
Change-Id: I568dfa97238fd760f5362a8e560c33402f96cff3
2025-02-12 07:03:05 -05:00
Jatin Chaudhary e560d94d2c SWDEV-504769 - Allow hipEvent_t to record on hipStreamLegacy
Change-Id: Ib86412255adad172598620ea81214e5eb56020ea
2025-02-12 07:02:35 -05:00
Ioannis Assiouras 1cdfbfd270 SWDEV-514686 - Fixed hipEventSynchronize/hipStreamWaitEvent for IPC events
Resolved an issue where hipEventSynchronize and hipStreamWaitEvent APIs
did not function correctly for events created with the hipEventInterprocess flag.
The bug caused the event to be incorrectly marked as "recorded,"
leading to these APIs failing to wait for the event as expected.

Change-Id: Ic9fdfaab2393beb93d6e0b83661545e902a63499
2025-02-11 18:43:06 -05:00
kjayapra-amd cf6aabb823 SWDEV-511672 - Special case the Remote USWC memory usage for HIP, if the alloc size is large.
Change-Id: I524c1402b249cedfd58b56f494caa2ac057e1623
2025-02-11 06:42:18 -05:00
Saleel Kudchadker 4c95ee5e1e SWDEV-504494 - Further copy improvements
- Fix regression for D2H pinned copies which adds systemscope release.
- Skip cpu wait for D2H unpinned copies as we can pass the signal of the
  barrier to rocr copy.
- Fix an old bug in sdmaEngineRetainCount_ logic
- Improve logging

Change-Id: If074bddb05564b15949b0d5f9bf12acd3692174e
2025-02-11 00:55:52 -05:00
victzhan ca35d93672 SWDEV-485042 - Remove -I option passed into comgr when file type is not FILE_TYPE_ASM_TEXT
Change-Id: If8e469f881651f7b3dae364e8182ef1ba6f3a0d1
2025-02-10 11:47:04 -05:00
Ioannis Assiouras a8edb8d467 SWDEV-508435 - Use the stream of the src/dst image memory object in A2H and H2A commands
Change-Id: I9b776a54760a4633d5f84cf7b467d2d3ba8cbdde
2025-02-07 13:38:31 -05:00
taosang2 de83d7a6ae SWDEV-446880 - Make ocltst MemoryInfo pass in EMU
Make ocltst -m tests/ocltst/liboclruntime.so -t OCLMemoryInfo
pass in emu where GPU memory is very big.

Cherry pick
  https://gerrit-git.amd.com/c/compute/ec/clr/+/1014858

Change-Id: I0228c5e87ce7c366983fd4af71c25e7f8161c2c7
2025-02-07 09:16:24 -05:00
Satyanvesh Dittakavi 4b443f8133 SWDEV-477584 - hipExtGetLastError should return the immediate previous API error
hipGetLastError should return the error by any of the previous APIs
in the same host thread to match the CUDA behavior, whereas
hipExtGetLastError will return the error by the immediate previous API.
This Ext API was added earlier to facilitate the existing HIP apps which
are following the current behavior of hipGetLastError

Change-Id: I61e95b1fc136cc761e2434e02187b7ed2598b733
2025-02-06 23:30:48 -05:00
Ioannis Assiouras d05ecea253 SWDEV-508435 - Added a fix for double free of hsaImageObject
Change-Id: I9397f7c9dbbad7c249b359155df312cb920eba6c
2025-02-05 22:21:24 +00:00