RadeonSI + ACO Now Supports Monolithic Merged Shaders
Qiang Yu continues leading the charge on integrating the ACO compiler back-end into the RadeonSI Gallium3D driver as an optional alternative to the AMDGPU LLVM shader compiler back-end.
ACO is the compiler back-end started by Valve developers years ago for the RADV Vulkan driver. ACO has done wonders on the RADV side for speeding up game load times and enhancing overall performance. ACO continues working out great while in recent months Qiang Yu of AMD has been spearheading the effort to get ACO optionally supported by the RadeonSI Gallium3D driver for OpenGL.
Over the past few months ACO has gained support for different shader types and has continued expanding the range of shaders supported for RadeonSI + ACO. The latest milestone is support for compiling monolithic merged shaders.
Monolithic merged LS/HS and ES/GS shaders when targeting GFX9/Vega or newer graphics hardware is now capable with ACO+RadeonSI. The support landed overnight with this merge request with Qiang Yu already working on additional follow-up code.
When all is said and done it will be interesting to see how ACO vs. AMDGPU LLVM compares for RadeonSI and if AMD ends up eventually siding with the ACO code path by default. Granted with more and more games directly using Vulkan or using Vulkan by way of Direct3D or OpenGL compatibility layers, ultimately the benefits these days to overhauling the compiler back-end for OpenGL is less important than if it had taken place years ago.
ACO is the compiler back-end started by Valve developers years ago for the RADV Vulkan driver. ACO has done wonders on the RADV side for speeding up game load times and enhancing overall performance. ACO continues working out great while in recent months Qiang Yu of AMD has been spearheading the effort to get ACO optionally supported by the RadeonSI Gallium3D driver for OpenGL.
Over the past few months ACO has gained support for different shader types and has continued expanding the range of shaders supported for RadeonSI + ACO. The latest milestone is support for compiling monolithic merged shaders.
Monolithic merged LS/HS and ES/GS shaders when targeting GFX9/Vega or newer graphics hardware is now capable with ACO+RadeonSI. The support landed overnight with this merge request with Qiang Yu already working on additional follow-up code.
When all is said and done it will be interesting to see how ACO vs. AMDGPU LLVM compares for RadeonSI and if AMD ends up eventually siding with the ACO code path by default. Granted with more and more games directly using Vulkan or using Vulkan by way of Direct3D or OpenGL compatibility layers, ultimately the benefits these days to overhauling the compiler back-end for OpenGL is less important than if it had taken place years ago.
2 Comments