Valve's ACO Shader Compiler For The Mesa Radeon Vulkan Driver Just Landed
It was just two days ago that Valve's performance-focused "ACO" shader compiler was submitted for review to be included in Mesa for the "RADV" Radeon Vulkan driver. Just minutes ago that new shader compiler back-end was merged for Mesa 19.3.
ACO, short for the AMD COmpiler, is the effort led by Valve at creating a more performant and optimized shader compiler for the Radeon Linux graphics driver. Besides trying to generate the fastest shaders, ACO also aims to provide speedy shader compilation too, as an alternative to the AMDGPU LLVM shader compiler back-end. Initially ACO is for the RADV Vulkan driver but it may be brought to the RadeonSI OpenGL driver in the future. At the moment ACO is in good shape for Volcanic Islands through Vega while the Navi shader support is in primitive form.
Just a few minutes ago the 25,000+ lines of code implementing ACO was merged into Mesa 19.3, which will premiere as stable in December.
The ACO back-end with RADV isn't enabled by default at this time but requires setting the RADV_PERFTEST=aco environment variable to activate. Having this mainline is great news for encouraging more testing and feedback. We'll be running some fresh ACO benchmarks shortly for providing the latest Radeon Vulkan performance numbers for Linux gaming.
ACO, short for the AMD COmpiler, is the effort led by Valve at creating a more performant and optimized shader compiler for the Radeon Linux graphics driver. Besides trying to generate the fastest shaders, ACO also aims to provide speedy shader compilation too, as an alternative to the AMDGPU LLVM shader compiler back-end. Initially ACO is for the RADV Vulkan driver but it may be brought to the RadeonSI OpenGL driver in the future. At the moment ACO is in good shape for Volcanic Islands through Vega while the Navi shader support is in primitive form.
Just a few minutes ago the 25,000+ lines of code implementing ACO was merged into Mesa 19.3, which will premiere as stable in December.
The ACO back-end with RADV isn't enabled by default at this time but requires setting the RADV_PERFTEST=aco environment variable to activate. Having this mainline is great news for encouraging more testing and feedback. We'll be running some fresh ACO benchmarks shortly for providing the latest Radeon Vulkan performance numbers for Linux gaming.
19 Comments