Commit Graph

63 Commits

Author SHA1 Message Date
Andryeyev, German 4c9cc6ba30 SWDEV-497841 - Add VmHeapArray support (#76)
Add VmHeapArray class to reduce the pressure on VA reservation, since
multiple memory pools can be active at the same time.

[ROCm/clr commit: e974f7fde1]
2025-04-03 21:04:18 +05:30
Patel, Jaydeepkumar b217d3a4e6 SWDEV-508632 - Align address to 2 MBs for hidden heap allocation. (#29)
[ROCm/clr commit: b5c9cbc236]
2025-04-02 16:33:29 +05:30
Julia Jiang 1495cc77eb SWDEV-513294 - fix regression on SVM sub-test failure in Conformance
Change-Id: Ic2449dd34a9cd2b623d5f8fbe89fd042566a56e3


[ROCm/clr commit: b7eaec76fc]
2025-02-20 15:40:23 -05:00
German Andryeyev f9d9b2c441 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


[ROCm/clr commit: 296dce5570]
2025-02-20 10:55:49 -05:00
agunashe 52a1f5dbf7 SWDEV-507967 - Deprecate gfx9, gfx8, gfx7 on Windows
PAL_CLIENT_INTERFACE_MAJOR_VERSION from 872 --> 910

Change-Id: I03dfa2924ccdae4c2f13f09d5f34ee58298e1343


[ROCm/clr commit: ea804e16f8]
2025-02-17 02:59:41 -05:00
Aidan Belton-Schure dc2fa93f37 SWDEV-482851 - Do not release last suballocator chunk
Change-Id: Ib28dc9df68e454ee0c0c699c1ff17588fd55f802


[ROCm/clr commit: 451b0ce768]
2025-01-13 10:14:40 -05:00
Ioannis Assiouras 407d1346f2 SWDEV-463865 - changed device,roc and pal namespaces to be nested under amd
Change-Id: Icad342843c039c634e249a13a7aa31400730b1dd


[ROCm/clr commit: 775dc204aa]
2024-06-07 12:23:06 -04:00
kjayapra-amd bc5a2e3b1e SWDEV-463872 - Request the same va_addr on the second device, if not fail.
Change-Id: I791625b6434a3980b35b8d6d6d3b6070fa159614


[ROCm/clr commit: 4fb06f94d1]
2024-06-01 12:53:09 -04:00
German Andryeyev 74d80fb509 SWDEV-440746 - Remove obsolete code
The "optimized" version of memcpy is outdated and
was used in win32 only.

Change-Id: I7f2e0e9051e37cec95438266824b5b0025c324c6


[ROCm/clr commit: 7448113cfc]
2024-04-22 09:56:42 -04:00
German Andryeyev 4f123e9c10 SWDEV-449922 - Remove a global lock for queues on wait
The new logic has a lock for PAL call and doesn't require the lock for queues.

Change-Id: I61b67c3c4abd2ede44809de1d6beed756766032e


[ROCm/clr commit: 2f3ad43c4a]
2024-03-28 18:17:46 -04:00
German Andryeyev 31ace540fa SWDEV-449922 - Remove per queue residency update
alwaysResident setting doesn't require per queue residency tracking.
Thus, the logic can be skipped to avoid the lock of queues.

Change-Id: Ib5cff5b79d3ecb8c2f2eb2565cf069f9a69438b0


[ROCm/clr commit: 95e3958748]
2024-03-28 16:16:37 -04:00
German Andryeyev eb355d0159 SWDEV-449558 - Update barrier's logic
PAL optimized the logic for the barriers, which caused failures with CP DMA on Navi4x.
Change barrier's code to match the most recent PAL optimizations.

Change-Id: I55eeab20f51eb8e920bcbb4b55fbe3c7f77fd3fa


[ROCm/clr commit: 1239309c90]
2024-03-18 10:52:32 -04:00
pghafari f77ed12c4d SWDEV-430356 - updated VArange to use SVM
Change-Id: Ice3582732dd6f43af6d566e5420234a581a1c194


[ROCm/clr commit: c13864abed]
2024-03-13 11:47:36 -04:00
German ab59c1e7fa 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


[ROCm/clr commit: eaa61fc740]
2024-01-09 17:51:30 -05:00
German 5718f13901 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


[ROCm/clr commit: 85c15d720d]
2024-01-08 10:11:52 -05:00
German fa8e88b108 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


[ROCm/clr commit: c8b3253a24]
2023-12-15 10:59:01 -05:00
Jaydeep Patel 526e60cb70 SWDEV-411343 - Import VK buffer memory exported by name.
Change-Id: Idc7c840fcd6bf758ecc29ffd6558d24e5bd0a25b


[ROCm/clr commit: 9551d48e7f]
2023-12-14 22:16:11 -05:00
German 32e02383ba SWDEV-430256 - Expose HIP_FORCE_DEV_KERNARG under PAL
Add support of HIP_FORCE_DEV_KERNARG under PAL.
Fix persistent memory detection for a resource view.

Change-Id: Ifb7db2db14e0c2205a9661cfa53887ec61ab26a4


[ROCm/clr commit: 5f297d75d9]
2023-11-08 10:01:22 -05:00
taosang2 28524520e6 SWDEV-364236 - Fix layered Image issue
Fix wrong logic to get layer index;
Make layered image's layout match cuda spec;
Fix wrong comparision of element size.
Remove amd::BufferRect from ihipMemcpyAtoHCommand()
and ihipMemcpyHtoACommand().
Change-Id: Icc6a4233fbce2e9b2dc6feb79e6bfbd761684c7d


[ROCm/clr commit: 5a0085e516]
2023-10-19 16:06:20 -04:00
taosang2 c9b9210059 SWDEV-299127 - Support External Mipmap
Support hipExternalMemoryGetMappedMipmappedArray().
Add ImageExternalBuffer to differiate ImageBuffer.
Currently we only support tiling_optimal mode as
vulkan driver doesn't provide tiling information.

Change-Id: I7e3524cdde53e4df9f728894bcebf4bd3f58d4d9


[ROCm/clr commit: 6398f604b0]
2023-10-05 09:58:17 -04:00
victzhan 779e5c3a22 SWDEV-274425 - fix bad assignment of imageOffset.y and imageOffset.z to PAL
Change-Id: I6adce05928f6ff61aad845f289687d9bc0d17476


[ROCm/clr commit: b14bd96d3c]
2023-08-18 00:17:31 -04:00
victzhan 8a7a86847f SWDEV-274425 - fix bad initialization of array slice index for 1d image array in partialMemCopyTo()
Change-Id: Id9a0c55d4296de8cd89f1870b2c8028ce6cf601b


[ROCm/clr commit: 4fb24c48b0]
2023-08-15 12:55:10 -04:00
victzhan 2fab383d94 SWDEV-385303 - remove bad row pitch assignment
Change-Id: If959be2fa51035c54c3b08e74711077ad52ac4c8


[ROCm/clr commit: 7e3d8243b7]
2023-08-14 15:21:56 -04:00
Todd tiantuo Li cd9fa7af05 SWDEV-333557 - add PAL_HIP_IPC_FLAG for PAL HIP device allocations
Change-Id: I9017f4e3b03d4817bf233c788e30775fb2297589


[ROCm/clr commit: 04b9ab49eb]
2023-07-17 08:10:25 -04:00
Todd tiantuo Li 677c88a9a6 SWDEV-333557 - 1.Add support for IPC memory to enable hipIpcGetMemHandle() and hipIpcOpenMemHandle() in PAL path. Set interprocess flag for device allocations in HIP PAL. 2.Fix PAL IPC path with ResourceCache and SubAllocation 3.Minor fixes for IpcBuffer constructor and IpcAttach 4.Remove redundant checks that may go wrong
Change-Id: Ie9d99847c7c2c7b3b2aaefaaf60d23bf71b68635


[ROCm/clr commit: 8434feed16]
2023-07-12 17:49:32 -04:00
German c8e65415ea SWDEV-311270 - Clean-up IPC path in ROCclr
- Make IPC interfaces generic between devices and rely on the IPC buffer
for attach/detach logic

Change-Id: Id3c18d122030329b7ee532bbb6317de9dd6a0bbe


[ROCm/clr commit: 9aa6f25f1c]
2023-06-20 15:18:21 -04:00
sdashmiz 2216908962 SWDEV-403638 - Fix warnings
- disable deprecated function use warning
- disalbe size_t to .type' warning
- disable conversion from 'type1' to 'type2' warning

Signed-off-by: sdashmiz <shadi.dashmiz@amd.com>
Change-Id: I64161fd37cf56de3d132102103267ae8da40193a


[ROCm/clr commit: 38a67df312]
2023-06-15 12:17:22 -04:00
German af5944dc71 SWDEV-311270 - Add IPC support for memory pools
Initial implementation for hipMemPoolExportToShareableHandle,
hipMemPoolImportFromShareableHandle,
hipMemPoolExportPointer and hipMemPoolImportPointer

Change-Id: I0ebdc48e9163b394ded560adca6c38bbc5aee7d1


[ROCm/clr commit: 1a0c3e4dc4]
2023-06-15 11:36:52 -04:00
Jaydeep Patel 23af1d59d3 SWDEV-392870 - Enable p2p support for image using PAL.
Change-Id: I3acbbc01ee11e488e93204814361b8c3431bca4f


[ROCm/clr commit: 82e4859e03]
2023-05-03 00:34:08 -04:00
victzhan 2278d7e0ad SWDEV-345751 - fix misinitialize arraySlice in partialMemCopyTo()
Change-Id: I622c368957b1bd39e973f9afa4ee01593dd9e8ac


[ROCm/clr commit: d9c00767dc]
2023-05-01 13:07:44 -04:00
pghafari 82219d2fb1 SWDEV-366992 - adding handle type for vk interop
Change-Id: I79ee0d89b948c21b96709e9e607abe7901621a97


[ROCm/clr commit: 78de2ae692]
2023-04-18 16:59:25 -04:00
Jaydeep Patel be5d6fb005 SWDEV-370537 - PAL does 64kb alignment so no need to do it in runtime. Reverting alignment to 4kb.
Change-Id: If3eaac65bf63bb9b8b73a3cad1bb34d357f1adeb


[ROCm/clr commit: cd7034c9bb]
2022-12-08 14:54:46 -05:00
German e7d9a3f450 SWDEV-368308 - Remove HW debug extension
Change-Id: If0c68023c09f0dac9111d52ecc0ad63719aa4e70


[ROCm/clr commit: e5a36ab1ad]
2022-11-18 10:29:44 -05:00
German bc14b745e8 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


[ROCm/clr commit: 473621c008]
2022-11-03 10:04:53 -04:00
German c04e2300c8 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


[ROCm/clr commit: ff6b4db70b]
2022-10-31 10:02:01 -04:00
German c15bee3157 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


[ROCm/clr commit: dc4ad8c99c]
2022-10-27 16:39:29 -04:00
Alex (Bin) Xie d77a150bf9 SWDEV-361591 - clean up header files
Change-Id: I25ca37a94524da0521f5b856a9fa9bab73f103c1


[ROCm/clr commit: 06867f0c04]
2022-10-21 10:23:55 -04:00
Christophe Paquot b2d02fe704 SWDEV-322620 - Virtual Memory Management
Hooked up the start VA hint address to PAL.

Change-Id: I4301d3eaaabcc85faf63fb25291291dcc3e8ebd1


[ROCm/clr commit: 470c4d7335]
2022-10-19 10:50:07 -04:00
Christophe Paquot 2c3faaa3a0 SWDEV-322620 - Virtual Memory Management
Add a virtualMemoryManagement_ flag to device.info.

Change-Id: Iabd039010d83fc51b4bcef600c609f5c65e7b1ae


[ROCm/clr commit: b4645c7d4e]
2022-05-09 22:54:42 -07:00
Christophe Paquot 1024cb58a7 SWDEV-322620 - Virtual Memory Management
Adding virtual memory management APIs to rocclr.
The HIP layer will handle virtual allocs on devices.

Change-Id: Ia978f105c2c3fed3959c77580ba228e845105754


[ROCm/clr commit: b5f555f9ec]
2022-04-15 00:10:02 -04:00
German Andryeyev 3c4f97f66c SWDEV-286150 - Remove GSL backend
Change-Id: Iba9a997ee7d5ff6ac00d5888ff189a4514958fe9


[ROCm/clr commit: 525a1bbf1a]
2022-02-09 17:16:39 -05:00
Payam 26d897966e SWDEV-245531 - GLInterop adding svm support
Change-Id: Id7f2a7a214f5ad692b4a7acf26cfb1dc423ed54a


[ROCm/clr commit: b473a80f6a]
2022-01-26 08:17:58 -05:00
German Andryeyev 22182e12bd SWDEV-286150 - Switch PAL to 678 interface
Change-Id: I3c130998902654e1dffc954ddf33530ea998ac34


[ROCm/clr commit: 4aea2ad172]
2021-10-27 17:25:02 -04:00
jujiang f0ec01f657 SWDEV-291787 - Fix persistent direct map
Change-Id: Ic1507cc6d63e9ed574e8e169bce7bf56f4792c19


[ROCm/clr commit: 84b971c7c1]
2021-08-22 23:56:08 -07:00
agunashe 49f0546637 SWDEV-293742 - Update copyright end year VDI repo
Change-Id: I69d2fea4a7a43adf96ccea794270e4af991c5261


[ROCm/clr commit: d96481fb36]
2021-08-22 23:56:07 -07:00
Jason Tang f63a008110 SWDEV-287088 - Workaround VM page fault on Windows
Some chunk memory are not guaranteed to be resident during
initial allocation. Use CPDMA to force resident.

Change-Id: If1a2da3e75f136caaa4c7a29d8f604d6af2639fa


[ROCm/clr commit: b793811ef6]
2021-08-22 23:56:07 -07:00
Alex Xie bfc21e4a59 SWDEV-290122 - OpenGL tests fails with CL_MEM_ALLOCATION_ERROR
Change-Id: I34d7063f05dd46c32cf59a88c455691ba5099679


[ROCm/clr commit: b5b1ccc990]
2021-08-22 23:56:07 -07:00
German Andryeyev 118a1a9295 SWDEV-86035 - Update the new DOPP flag in PAL interface
Change-Id: Ia3de452bf77220ae0403b3427e13c6ad26009128


[ROCm/clr commit: cdccb6ebc9]
2021-04-27 17:51:23 -04:00
pghafari 01db6a04b3 SWDEV-245532 - HIP - Vulkan interop
Change-Id: I0e5bc4862925f344b3fcadf1fa0c0acaeaae6c4d


[ROCm/clr commit: 6e888b15ff]
2021-03-23 23:40:17 -04:00
Vladislav Sytchenko c122c28e5d SWDEV-86035 - [PAL] Propagate gl2Uncached setting to the backend
Change-Id: I594f304a20d448fe198ec27901e6c97b265c1183


[ROCm/clr commit: dbcf023cb1]
2021-02-21 13:52:38 -05:00