Marek Takes To Possible AMDGPU Winsys Memory Optimizations
AMD's Marek Olšák known for his many additions and performance optimizations to RadeonSI and who is leading Mesa development this year with the most commits has been working on some AMDGPU winsys optimizations.
The Winsys in the Gallium3D space is what sits between the Gallium3D user-space driver and the operating system / DRM kernel driver. Marek's latest work in this area are slab allocation improvements and changes around memory address translation.
The slab allocation has been optimized for 2MB AMDGPU page tables up from a buffer size of 128KB, the number of sub-allocators was increased from one to three due to a new layered approach, there has been some cleanups around the buffer object virtual memory alignment, over-allocating buffers for GFX9/Vega, and other tweaks around the buffer handling within the winsys.
These changes do slightly increase the video memory in use, but for the tests Marek conducted the vRAM only went up by about 1% or so. But in terms of the actual performance benefits from these seven patches, he doesn't have much test data at this point for determining the real benefits from this code. So we'll see where these patches end up heading.
The Winsys in the Gallium3D space is what sits between the Gallium3D user-space driver and the operating system / DRM kernel driver. Marek's latest work in this area are slab allocation improvements and changes around memory address translation.
The slab allocation has been optimized for 2MB AMDGPU page tables up from a buffer size of 128KB, the number of sub-allocators was increased from one to three due to a new layered approach, there has been some cleanups around the buffer object virtual memory alignment, over-allocating buffers for GFX9/Vega, and other tweaks around the buffer handling within the winsys.
These changes do slightly increase the video memory in use, but for the tests Marek conducted the vRAM only went up by about 1% or so. But in terms of the actual performance benefits from these seven patches, he doesn't have much test data at this point for determining the real benefits from this code. So we'll see where these patches end up heading.
14 Comments