Marek Lands 40 Patch Series To Further Enhance The Open-Source AMD Graphics Driver
([Mesa] 6 Hours Ago
New Shaders)
- Reference: 0001470245
- News link: https://www.phoronix.com/news/Marek-Universal-Optimized-Comp
- Source link:
Well known open-source AMD OpenGL/Gallium3D driver developer Marek Olšák has landed a big patch series into Mesa 24.2 for a universal optimized compute image clear/blit shader and MSAA-resolving pixel shader.
The rework adds nearly two thousand lines of new code to Mesa ahead of the v24.2 stable release due out in August. After a month in review/testing, the code was merged this past week to Git.
Marek explains in the [1]merge request :
"This MR optimizes all image clears, blits, and MSAA resolving. Most of the MR are radeonsi changes, but the last 3 commits move a lot of that work to amd/common, including the computation of compute dispatch parameters.
...
The compute image clear/blit shader itself is optimized for Navi31. The selection of the fastest path is optimized for all generations (gfx6-11).
...
- If the tiling is thin, the pixel shader path for image clears, blits, and MSAA resolving usually outperforms all paths including the complicated compute shader in this MR.
- In a few cases, the pixel shader path also outperforms the DCC comp_to_single clear.
- The pixel shader path almost always outperforms the fixed-func CB_RESOLVE path.
- If the tiling is thick or linear or the copy is L2T or T2L, the compute shader path usually outperforms all paths.
- Both the compute shader and the pixel shader trade blows, with the pixel shader being faster in the more common cases."
This latest AMD code is in [2]Mesa 24.2 which will be branched from mainline Git in July and begin its dance towards release in August alongside a large number of driver changes not only for the AMD Radeon stack but also the NVK NVIDIA Vulkan driver, the Intel OpenGL and Vulkan drivers, and the various other smaller drivers.
[1] https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28917
[2] https://www.phoronix.com/search/Mesa+24.2
The rework adds nearly two thousand lines of new code to Mesa ahead of the v24.2 stable release due out in August. After a month in review/testing, the code was merged this past week to Git.
Marek explains in the [1]merge request :
"This MR optimizes all image clears, blits, and MSAA resolving. Most of the MR are radeonsi changes, but the last 3 commits move a lot of that work to amd/common, including the computation of compute dispatch parameters.
...
The compute image clear/blit shader itself is optimized for Navi31. The selection of the fastest path is optimized for all generations (gfx6-11).
...
- If the tiling is thin, the pixel shader path for image clears, blits, and MSAA resolving usually outperforms all paths including the complicated compute shader in this MR.
- In a few cases, the pixel shader path also outperforms the DCC comp_to_single clear.
- The pixel shader path almost always outperforms the fixed-func CB_RESOLVE path.
- If the tiling is thick or linear or the copy is L2T or T2L, the compute shader path usually outperforms all paths.
- Both the compute shader and the pixel shader trade blows, with the pixel shader being faster in the more common cases."
This latest AMD code is in [2]Mesa 24.2 which will be branched from mainline Git in July and begin its dance towards release in August alongside a large number of driver changes not only for the AMD Radeon stack but also the NVK NVIDIA Vulkan driver, the Intel OpenGL and Vulkan drivers, and the various other smaller drivers.
[1] https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28917
[2] https://www.phoronix.com/search/Mesa+24.2
pharmasolin