Shader Optimizations Revived For R600 Gallium3D

Written by Michael Larabel in Mesa on 14 February 2013 at 02:25 AM EST. 11 Comments
MESA
Vadim Girlin has revived his "shader optimization" branch of Mesa that focuses upon improvements to the AMD R600 Gallium3D graphics driver.

Going back to late 2011, Girlin was working on shader optimizations for R600g and he finally found time to revive his work on this code. He said on Wednesday that the code is now mostly done, correct, and featureful -- at least for the Radeon HD 5000 "Evergreen" series. It's still a "work in progress" for the efficiency of generateds shader code and the back-end itself, but he's becoming quite happy with the progress.

Vadim Girlin spent time in 2012 studying the R600 GPU LLVM back-end too, but he decided that it would be easier to implement all of his desired functionality into his own implementation.

In his new mailing list post, Vadim writes, "Currently the branch has no regressions with piglit's quick-driver.tests on evergreen (it doesn't rely on the fallback to unoptimized code for the shaders with relative addressing and other cases unlike the previous branch), and so far I don't see any rendering issues with the apps that I used for testing - Lightsmark 2008, Unigine Heaven 3.0 and some others. There are also some performance improvements with the gpu-bound apps."

The code in its current form can be found in this Mesa branch. In his mailing list post, Vadim provides a lot more detail about the current work and features surrounding this shader optimization code for the open-source R600g driver. It's not known what will ultimately happen of this R600g code, but it's worth checking out. Right now Vadim is seeking the comments and review of other open-source Radeon Linux driver developers.
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