Arceri Is Working To Further Improve Mesa's Shader Cache Startup Performance

Written by Michael Larabel in Mesa on 12 March 2017 at 08:38 AM EDT. 1 Comment
MESA
Timothy Arceri at Valve is still working on the on-disk Mesa shader cache even though the GLSL/TGSI shader cache and RadeonSI binary caches have landed. In particular, his recent effort has been about improving the cold performance -- or when there isn't a shader cache present or it needs to be re-generated.

Then the shader cache is cold, he and others riding Mesa Git have found it to be much slower than the previous behavior or when the shader cache is disabled on Mesa Git. As of a few days ago, Deus Ex: Mankind Divided took three minutes and 15 seconds to load with the shader cache disabled, but four minutes and 23 seconds to load when the cache is enabled but cold. Fortunately, he's worked out a patch to reduce that cold cache time to three minutes and 33 seconds. So there is still some time involved when needing to store the shader in the cache, but it's much better than before. That patch is outlined here.

Most recently, Timothy has been experimenting with a thread queue for shader cache compression/writes as another effort towards improving the cold shader cache performance. With his "RFC" patches for the thread queue, he didn't find any difference on a Core i5 Skylake but is thinking users with slower AMD CPUs may see more of a positive impact. Those latest patches can be found here.

Overall good progress is being made on the shader cache and RadeonSI's benefits can be quite noticeable. There still is the chance the cache might be disabled by default for Mesa 17.1, but so far on Git master it remains enabled by default. Mesa 17.1 is releasing in early May so Timothy and others have until then for ensuring the shader cache is in good shape.
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