Commit Graph

30 Commits

Author SHA1 Message Date
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
German Andryeyev 64360211fe SWDEV-86035 - switch PAL interface to 656 version
Change-Id: I162ba6e49aa866c013f37a114df5bb7ea3e08874


[ROCm/clr commit: 70f06c79fa]
2021-02-12 13:08:59 -05:00
Vladislav Sytchenko 95655fd5fd SWDEV-268186 - [PAL] Enable MALL for persistent allocations
Change-Id: Ibc21255d5be52289cb4de3de7d12e0415fd1bc91


[ROCm/clr commit: 0d0739a39b]
2021-01-28 12:47:18 -05:00
Vladislav Sytchenko 5ba1294a49 [PAL] Change free mem tracking logic to use PAL size
PAL may internally align up the allocation size to the page size
reported by KMD. This will cause a mismatch in size between OCL and PAL.

To avoid this, use PAL size when updating the free memory counter on
both alloc and free.

Change-Id: Ic6e8c861a52170476474fb70a769eef93be3261f


[ROCm/clr commit: be66e29e94]
2020-10-20 12:10:14 -04:00
Vladislav Sytchenko 36c8902ed8 [PAL] Allow more heaps for non-SVM suballocations
On ReBar systems the invible heap is not present, so in theory we should
fail creating the suballocation chunk, however PAL doesn't report any
errors.

To make sure we never fail, allow creating the allocation in the visible
heap and system memory.

Change-Id: Iea9cc68d98b9cb396a2b7a37398b98b66274083b


[ROCm/clr commit: 330b674821]
2020-10-14 16:56:12 -04:00
Laurent Morichetti c863b2074b Use std::atomic
Replace amd::Atomic with std::atomic. Remove make_atomic uses by
converting the variable to std::atomic and making sure the memory
order is relaxed when synchronizes-with is not needed.

Delete utils/atomic.hpp.

Change-Id: I0b36db8d604a8510ac6e36b32885fd16a1b8ccfa


[ROCm/clr commit: 5d4b6f74d3]
2020-09-09 14:55:29 -04:00
Vladislav Sytchenko 618619e903 Navi21 support
Change-Id: I7263556fdb85dc0152a2a72cc0ec4d7cd5e978a6


[ROCm/clr commit: d6e89ec371]
2020-09-03 11:14:37 -04:00
Jason Tang f1110d715e Set the tiled_ flag according to ImageCreateInfo
Change-Id: I3e1b2fdd15e32c3c24f4341001b068738c98e388


[ROCm/clr commit: 138b2d3ce2]
2020-06-19 12:34:07 -04:00
Jason Tang fb0be5d639 Merge pal Resource mapLayers/unmapLayers logic into map/unmap
Change-Id: I0198fb96f104539fb557f91160665e60ba576132


[ROCm/clr commit: 155ff5bdcc]
2020-06-19 10:51:48 -04:00
German Andryeyev 29c091d624 SWDEV-224639 - Device memory is still occupied
- Add cache free on OCL context destroy
- Remove std::mem_fun() usage, since it was removed in c++17

Change-Id: If6acd08f13a2298912ecd78fc025dcf0b32aee54


[ROCm/clr commit: 9f795d750d]
2020-03-30 17:39:21 -04:00
Payam 123f91240d clean up
Change-Id: I1a5bbd12bba35af5d52f9ddc0df71dd0d004d122


[ROCm/clr commit: 9106a7dff4]
2020-03-04 13:35:49 -05:00
German Andryeyev 801fe99636 SWDEV-222307 - Add CMake support for PAL
Remove dependency on COMGR headers from backends.
Remove GFX103 PAL defines.

Change-Id: I6ff76dca2a0c84bc191e8fc8b639f2f5872d2085


[ROCm/clr commit: 1be1e69f2a]
2020-02-18 10:56:31 -05:00
Laurent Morichetti e284923583 Update copyright info
Change-Id: Ia4f9ff0f5f873b4223a8cca154188bb0d2f1abba


[ROCm/clr commit: b4c6143a2f]
2020-02-04 09:26:14 -08:00
Laurent Morichetti 011f3e945b Merge branch 'origin/pghafari/vdi-prototype' into lmoriche/amd-master
Change-Id: Id3b833d405596735becb3346f3b08c6da57033fe


[ROCm/clr commit: 20c7173849]
2020-01-30 20:12:13 -08:00