Mesa 20.0 Lands A Load/Store Vectorizer As Latest "ACO" Backend Improvement

Written by Michael Larabel in Mesa on 26 November 2019 at 04:33 AM EST. 8 Comments
MESA
While the Radeon "ACO" compiler back-end performance is already looking very good in the speed department over the AMDGPU LLVM back-end for the Vulkan driver as shown in recent benchmarks, it's getting even better.

On Monday another batch of ACO improvements landed. One of the big changes is the introduction of a load/store vectorizer that has been under review for four months before being approved for merging yesterday. This work by Rhys Perry is designed to "greatly reduce the number of memory operations."

In the patch enabling the vectorizer, it yielded a code decrease of around 13% less for NeiR:Automata and about 15% less generated code for GTA V. Other games are likely to benefit too. Ultimately the less code to deal with means faster load times and also possible frame-rate implications.

Mesa contributor Connor Abbott meanwhile has merged his work on an LLVM-independent way for handling shader arguments for helping ACO too. This work should lead to lower resource handling in NIR, making it easier to support ACO for other drivers, and other benefits.

Unrelated to ACO but also of interesting work is the long-standing merge request by Eric Anholt finally being honored for a NIR scheduling pass for register pressure and similar to code he's written for Intel and Broadcom VC4 but with it now being done in NIR should be reusable across drivers.

Exciting times as always in Mesa Git land! Mesa 20.0 will be out as stable around the end of February.
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