radeonsi: enable ACO by default

NIR+ACO is the best SSA-based shader compiler for AMD GPUs that exists.

There are many reasons why NIR+ACO is better than LLVM, and I have a long
list that I've collected over the years, but the major ones are better GPU
performance (faster GPU memory access thanks to better clauses and
scheduling, a lot less SGPR/VGPR spilling, better loop support, slightly
smaller shader binaries), 8x lower shader compile times, and smaller memory
footprint of the IR.

It also shows that NIR is a mature SSA-based shader compiler that helps
drivers generate optimized code very quickly.

And most importantly, radeonsi has slightly better Viewperf performance
with NIR+ACO than LLVM, and that's difficult to ignore.

Reviewed-by: Qiang Yu <yuq825@gmail.com>
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38070>
This commit is contained in:
Marek Olšák
2025-10-27 01:19:04 -04:00
committed by Marge Bot
parent 4713df944b
commit e26c28f311
4 changed files with 4 additions and 26 deletions

View File

@@ -1784,8 +1784,8 @@ RadeonSI driver environment variables
Use old-style monolithic shaders compiled on demand
``nooptvariant``
Disable compiling optimized shader variants.
``useaco``
Use ACO as shader compiler when possible
``usellvm``
Use LLVM as shader compiler when possible
``nowc``
Disable GTT write combining
``check_vm``