Marek Threads RadeonSI Gallium3D, Big Performance Gains For Many Games

Written by Michael Larabel in Mesa on 10 May 2017 at 07:44 PM EDT. 39 Comments
MESA
Not to be confused with the recently-landed OpenGL threaded dispatch support that recently landed in Mesa Git, Marek Olšák has now published a set of patches for threading Gallium3D for RadeonSI: moving the execution of all Gallium3D pipe_context calls into a separate CPU thread.

This Gallium3D threading code won't immediately be beneficial to all Gallium3D drivers as the drivers must themselves be thread-safe around their pipe context functions.

Marek says the performance improvements aren't very high for some games/apps and there could be more done around thread synchronization, but with RadeonSI he's getting good enough results in a number of games where he's hoping to enable it by default. RadeonSI would enable threaded Gallium by default for OpenGL core and compatibility profiles along with OpenGL ES.

Some of the noted improvements are 16% better performance in Alien Isolation, 13% better performance in BioShock Infinite, 12% better performance in Borderlands 2, 10% better performance in Civilization VI, 8% better performance in Counter-Strike: Global Offensive, 12% better performance in ET: Legacy, and 27% better performance in OpenArena. Games that are GPU-bound won't see an advantage out of this threaded Gallium work.

This threaded Gallium3D code also benefits GtkPerf and X11 performance too with GLAMOR, leading up to double digit percentage improvements.

The 13 patches implementing threaded Gallium and flipping it on for RadeonSI can be found on Mesa-dev. Hopefully the work will be merged soon into Mesa Git and of course I'll be running a number of benchmarks when that happens.
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