Commit Graph

677 Commits

Author SHA1 Message Date
Jacob Lambert 50d77d17fd SWDEV-356171 - Adding new Comgr mangled name fetching APIs
amd::Comgr::populate_mangled_names()
  amd::Comgr::get_mangled_name()

Change-Id: Ie6ebf3aae76632f7e7cfef3c90642b2e3cd10b48
2022-12-14 12:40:18 -05:00
jatang a4fadb191a SWDEV-1 - Fix another build warning.
Change-Id: Ifed33732752e9d9ec74a244a0104bf571a9fc6c5
2022-12-14 10:14:49 -05:00
jatang e8cd1e93e8 SWDEV-1 - Not to truncate size_t in print when it's 64bit
Change-Id: Iab8b7eb128c767b6808b19cbeac5169b7a97f1ad
2022-12-13 09:13:33 -05:00
kjayapra-amd e56a611b92 SWDEV-371904 - Adding pseudo fine grain flag to hsa memory allocation for device fine grained memory.
Change-Id: I8cada90f0e3880dfbc5bf5a3fac4554e7a0cb08e
2022-12-11 08:15:17 -05:00
Todd tiantuo Li 9168415ca2 SWDEV-354868 - Queue::Create() for RT queue should fail when number of reserved CU's for RT queue is zero (most likely due to being aligned down by dedicatedCuGranularity).
Change-Id: I234e7ff83cb312bf44f5ad4b1a897c079f5106a9
2022-12-09 16:45:10 -05:00
Ioannis Assiouras 72b45e2a1f SWDEV-369581 - Convey copy API metadata to ROCclr
Change-Id: I569462d6d268700d419510255e201bf7d80d6714
2022-12-09 00:27:15 -05:00
pghafari 402504f548 SWDEV-366279 - updating p2p error msg
Change-Id: I294e7770efd11f511dd5817eb28bd3c97d9d4926
2022-12-09 00:05:04 -05:00
Jaydeep Patel cd7034c9bb SWDEV-370537 - PAL does 64kb alignment so no need to do it in runtime. Reverting alignment to 4kb.
Change-Id: If3eaac65bf63bb9b8b73a3cad1bb34d357f1adeb
2022-12-08 14:54:46 -05:00
German 8cf53e7dff SWDEV-370901 - Force sysmem allocation
Adobe AE allocates/destroys system memory per each frame
in some effects, which is a very expensive operation.
Disable pinning and force sysmem allocation in VidMM.
That allows to trigger resource cache in runtime and
avoid paging operations, caused by pinning.
The actual benchmark doesn't have significant improvement
from the change, but GPU view traces are much cleaner.

Change-Id: I92cdd87d37c64611788f05250f71d6fe489b4d7e
2022-12-08 13:06:51 -05:00
Saleel Kudchadker 4f64d89026 SWDEV-371123 - Use barrier value packet for event records
Change-Id: I5e5e5e89e0d96a2430b4682d168b76848fa5b94e
2022-12-07 17:57:36 -05:00
Tao Sang 8c582a02ef SWDEV-347733 - Remove luxmark workaround for gfx11
Make gfx11 always use LC by default.
Fix switch order of Navi3x.
Change-Id: I5774563edf4d1aed29a4e92723630adbfb75c48c
2022-12-05 18:38:08 -05:00
Sourabh Betigeri 5d7f3f9f3c SWDEV-305894 - Cooperative groups grid and multi grid sync support for gfx940+
Change-Id: I35d72f1cb50c3a96eee56a612b72d641852b145f
2022-12-05 16:30:30 -05:00
Saleel Kudchadker 10ecf8f159 SWDEV-371123 - Refactor dispatchBarrierValuePacket
Change-Id: I846bd3f60dd8db125e2ca5475e9d25fdd567922b
2022-12-02 12:22:31 -05:00
Jason Tang 56fe793134 SWDEV-1 - Fix a build error.
Change-Id: I5f14cdca04ee9867f0ae63fff197a0f21ee5f1d2
2022-12-01 10:31:34 -05:00
Jason Tang c825d06454 SWDEV-1 - Fix a build warning.
Change-Id: I085fcc68ef3aaebf85515ea45fca99d7ec845721
2022-11-30 11:07:15 -05:00
Ioannis Assiouras b445717f72 SWDEV-369547 - Ensure that ipc_mem_detach is not called for non-ipcShared MemObj.
Change-Id: Ia73b60b9f08d593301879e0f72c395edbc215112
2022-11-30 02:16:13 -05:00
kjayapra-amd 61b6a94627 SWDEV-358915 - Wait for 10 micro secs, if the next engine is SDMA.
Change-Id: Ib3ed91510e62090f47d4f55be8de635caaee083d
2022-11-28 12:14:16 -05:00
Anusha GodavarthySurya 446a3fc688 SWDEV-354074 - cache hsa queue and delete when device is destroyed
Change-Id: I26365521d785f0bc612e32bdcdb6caacb3af9a11
2022-11-23 07:17:45 +00:00
Alex Xie 9e00c674c8 SWDEV-363271 - Add some performance counter logs
Change-Id: I368ba4afe47357eb6051b2a06f762b8050e5a560
2022-11-19 16:27:14 -05:00
German e5a36ab1ad SWDEV-368308 - Remove HW debug extension
Change-Id: If0c68023c09f0dac9111d52ecc0ad63719aa4e70
2022-11-18 10:29:44 -05:00
German 79d12df147 SWDEV-363074 - Adjust staging copy limits in Windows
Pinned copy can cause big performance drops, because slow pinning under Windows.
Use up to 128MB for staging transfers. Change staging buffer size to 4MB.
Linux path should still have the old defaults.

Change-Id: I954edceb3ec89e8e670be116aa2d0a9564c8b11c
2022-11-17 14:48:16 -05:00
German b40823ccc1 SWDEV-328670 - Enable ROCr interop
Change-Id: I932afa2a0e75b1f1771c4be1e984b32966636afb
2022-11-17 09:40:34 -05:00
Juan Manuel MARTINEZ CAAMAÑO 9b8005d758 SWDEV-287018 - Generate tempraries for _optimized.bc and _linked.bc if -save-temp-all is passed.
Change-Id: Ie8a7af66f0764f0a94948d45d7deed786f799c96
2022-11-15 07:49:07 -05:00
Jason Tang 2c09557d60 SWDEV-1 - Add LOG_ERROR output for Pal::CreatePlatform failure
Change-Id: Id5c3fdcd8f822bfa67ae570c09ede7ddc8a936ef
2022-11-10 09:30:10 -05:00
Maneesh Gupta a52f5bda8f SWDEV-299940 - Query global memory available on device with HSA attribute HSA_AMD_AGENT_INFO_MEMORY_AVAIL
This reverts commit 4afca0647e.

Reason for revert: ROCr query should now be usable in upcoming release.

Change-Id: I2207761ca6af5d585d090bae1af09eb9a8e9bad6
2022-11-09 10:48:47 -05:00
Julia Jiang 9d616ad0f4 SWDEV-360748 - Update return value for hipExtGetLinkTypeAndHopCount_Positive_Basic test on Windows
Change-Id: I0eb984da6e96c2409e1b1bbda61ae694c8bebe94
2022-11-07 10:00:32 -05:00
German c1b22840fa SWDEV-286150 - Switch PAL to 775 version
Change-Id: I8e64cbe0fea273d4bd6f7d3ebd66feb628fac6b9
2022-11-07 09:54:22 -05:00
Saleel Kudchadker feca11d5e3 SWDEV-301667 - Improve logging
Change-Id: Ifa6da876b85cb503967cf09aac6d477b10db8e63
2022-11-04 18:23:18 -04:00
Saleel Kudchadker 3e465c5ff8 SWDEV-364052 - Print free memory on queue callback
Change-Id: I7d15b6f6277326d5f3e9b784a3443f18ec6ba58a
2022-11-04 13:19:33 -04:00
Todd tiantuo Li 246429bd68 SWDEV-302996 - add gfx1103 Phoenix support - OCL runtime
Change-Id: Ib6b7efa085b734bda6b5b50c720fe9d93e6dbf95
2022-11-04 12:07:22 -04:00
kjayapra-amd ea0ce45ad3 SWDEV-329423 - Enable NV3x target ID related changes on mainline.
Change-Id: I54fafb371976aaa16a452ec65b0c340c5682c264
2022-11-03 21:11:24 +00:00
German 473621c008 SWDEV-365121 - Use CP DMA for tiny transfers
Sync between compute and SDMA engines can be very expensive under Windows.
Use CP DMA for tiny transfers (< 1KiB) to avoid syncs and improve performance.

Change-Id: I9db39a2199f7b9e337ed08fd36d9cbc150502f1f
2022-11-03 10:04:53 -04:00
Tao Sang 06573ac92f SWDEV-363140 - Support performance counter on gfx11
Change-Id: I2216f71f4d4db6dd3766333b0c821cb3d35d7851
2022-11-03 07:59:24 -04:00
Laurent Morichetti b043b4f5a2 SWDEV-351980 - Store the correlation ID in the dispatch packet
The profiler can retrieve this correlation ID to attribute waves to
specific dispatch locations.

Change-Id: I700e8a91219d612f6a2028c0dda0c92753f3526a
2022-11-02 23:40:10 -04:00
jatang 166ef6b622 SWDEV-293816 - Only dispatch Counter Aql packet when it is created successfully.
Change-Id: Ic8a7374d19012754c6de5d483ec5d07a56661d1b
2022-10-31 15:11:41 -04:00
Saleel Kudchadker cf1fd98074 SWDEV-301667 - Use queue base address for AQL log
Change-Id: Ie525991b341deeb93ab3cb2d77550e8e1d87ee20
2022-10-31 13:54:49 -04:00
German ff6b4db70b SWDEV-363074 - Clean-up sync between SDMA and compute
HIP can't rely on the resource tracking, used in OCL and requires different explicit sync.
Make sure ROCCLR syncs compute only when SDMA is used and vise versa.
The new logic will allow to enable CPDMA without unnecessary waits.

Change-Id: Ib9d1788cfd5afa5ea2fec4c96a37d8b9c4d0059d
2022-10-31 10:02:01 -04:00
German dc4ad8c99c SWDEV-363074 - Enable resource cache for SVM
Blender creates and destroys big allocations during the benchmark.
That causes big delays, because vidmm has to page-in/page-out memory.

Change-Id: I2baf4545807127406e3d2870a7581ff9ae7bcdb5
2022-10-27 16:39:29 -04:00
Ajay 261620a2ef SWDEV-357207 - Linux: enable StreamWrite/Wait APIs in deviceAttribute
Change-Id: I593df2dbb7a0233dd42f8d873510d85bbb27feff
2022-10-21 12:44:35 -04:00
German c1c5127875 SWDEV-360183 - Finish the trace if queue was destroyed
- Make sure SQQT trace is captured for RGP server if the queue is destroyed before normal capture is done.
- Remove prepare queue from the logic. It's not really used for any HW capture and can cause RGP server abort if destroyed before capture is even started(delayed capture)

Change-Id: I6eb19963190a5769c6477a5496c1b831a6d59b89
2022-10-21 10:44:10 -04:00
Alex (Bin) Xie 06867f0c04 SWDEV-361591 - clean up header files
Change-Id: I25ca37a94524da0521f5b856a9fa9bab73f103c1
2022-10-21 10:23:55 -04:00
Tao Sang 3d281114fb SWDEV-360706 - Fix WriteAqlArgAt() crash in X86
In X86 on Windows, sizeof(size_t)=4, but size=8, for
amd::KernelParameterDescriptor::HiddenGlobalOffsetX/Y/Z items.
Loose the condition to prevent crash.

Change-Id: I2216f71f4d4fd6dd3766023b1c821cb3d35d7848
2022-10-20 18:04:49 -04:00
Sourabh Betigeri b2665ccc4b SWDEV-361730 - Fix to match the kernel arg allocation sizes between gpu visible mem and host/runtime mem
Change-Id: I6495aa57e97b46373c1d90cc230435780fdcf3ef
2022-10-20 14:20:37 -04:00
Ajay a5b550e828 SWDEV-360944 - palBlit setArgument desc.size_ --> argSize
Fixes AMF tests that were impacted on Windows

Change-Id: I0326e794ec5a34fdec7a5ff4ed79d5bd055997d2
2022-10-20 12:44:15 -04:00
Laurent Morichetti 9a82118c85 SWDEV-362046 - Report HIP_OPS activities using the ROCr driver_node_id instead of the device's index
The ROCclr assigns zero-based IDs to GPUs in the order they are
discovered. That zero-based ID is what is used to identify the GPU
on which the HIP_OPS activity took place.

When multiple ranks are used, each rank's first logical device always
has GPU ID 0, regardless of which physical device is selected with
CUDA_VISIBLE_DEVICES. Because of this, when merging trace files from
multiple ranks, GPU IDs from different processes may overlap.

The long term solution is to use the KFD's gpu_id which is stable
across APIs and processes. Unfortunately the gpu_id is not yet exposed
by the ROCr, so for now use the driver's node id.

Change-Id: Ib78854527d600d175bb76e2df0747c33f898c615
2022-10-20 12:31:30 -04:00
Julia Jiang dacd55f3d7 SWDEV-357122 - fix failure in vdi so as to handle unreasonable input size in MallocManagedNegativeTest
Change-Id: I1ed1916b652afc67327b0935c3c60fc2a404df30
2022-10-20 12:19:22 -04:00
Christophe Paquot 470c4d7335 SWDEV-322620 - Virtual Memory Management
Hooked up the start VA hint address to PAL.

Change-Id: I4301d3eaaabcc85faf63fb25291291dcc3e8ebd1
2022-10-19 10:50:07 -04:00
kjayapra-amd 951a5b9e7d SWDEV-307411 - Require comment/message string in guarantee().
Change-Id: I55a699c5366f6a7d167ede4c9be2ec5b15cea9d0
2022-10-13 16:21:21 -04:00
Saleel Kudchadker 6405b6cdba SWDEV-359548 - Detect fence optimization
- Use a dirty flag to determine fence optimization
- If fence is dirty submit a marker at top level to sync.

Change-Id: I53fb19b5bb05b7c7b37c41637a6c7aaf870b639a
2022-10-10 14:15:16 -04:00
Saleel Kudchadker eef2f99513 SWDEV-356482 - Improve logging
Change-Id: I0c6286fcdb9d94398ed66262e95e8837898ff9fe
2022-10-06 11:13:24 -04:00