RadeonSI ACO Code Lands More Functionality

Written by Michael Larabel in Mesa on 4 June 2023 at 06:40 AM EDT. 16 Comments
MESA
The ACO "Amd COmpiler" started by Valve for the Mesa RADV Vulkan driver has shown it can do wonders for Linux gaming performance and reducing game load times compared to AMD's official AMDGPU LLVM shader compiler back-end. Recently thanks to the work of Qiang Yu there has been much work hitting upstream Mesa for beginning to enable using the ACO compiler by the RadeonSI Gallium3D driver.

For a few weeks now it's been possible to use the ACO compiler for certain shaders with RadeonSI and can be activated by the AMD_DEBUG=useaco environment variable as an alternative to using the AMDGPU LLVM compiler. Initially the support was for monolithic pixel shaders while now Mesa 23.2-devel has expanded that scope a bit.

RadeonSI MR


With this week's newly-merged code, radeonSI ACO can now be enabled for monolithic standalone vertex shaders (VS) too. See this merge request for the latest RadeonSI ACO activity.

Outside of RadeonSI, other ACO compiler improvements continue to happen and just two days ago another addition of a VOPD scheduler was opened. ACO continues working out very well for RADV while in the scope of RadeonSI it's coming years late and at a time where most Linux games directly or indirectly (via DXVK / VKD3D-Proton) are targeting Vulkan with OpenGL having a much more limited role these days on the Linux desktop.
Related News
About The Author
Michael Larabel

Michael Larabel is the principal author of Phoronix.com and founded the site in 2004 with a focus on enriching the Linux hardware experience. Michael has written more than 20,000 articles covering the state of Linux hardware support, Linux performance, graphics drivers, and other topics. Michael is also the lead developer of the Phoronix Test Suite, Phoromatic, and OpenBenchmarking.org automated benchmarking software. He can be followed via Twitter, LinkedIn, or contacted via MichaelLarabel.com.

Popular News This Week