NIR Improvements Land In Mesa 19.1, Helping RadeonSI & Intel
Written by Michael Larabel in Mesa on 13 March 2019 at 01:14 AM EDT. 7 Comments
Over the past day there has been some notable NIR improvements landing in Mesa 19.1.

First up, Timothy Arceri working for Valve landed partial loop unrolling support to the common NIR compiler code. For a Rise of the Tomb Raider compute shader test this partial loop unrolling drops the GPU time from 350 to 325 seconds. The shader-db coverage also is in favor on various Radeon and Intel systems. Timothy also pushed several follow-on patches with related enhancements.

Connor Abbott, the original developer who started NIR, added a stripping pass to improve the cache-ability of NIR shaders for where the shaders are nearly identical except for some cruft like the program name and any other excess bits. When enabling it for RadeonSI, a shader-db shader compilation test dropped from 40 to 30 seconds. While it's quite an improvement to the shader compilation time, RadeonSI's existing TGSI shader compiler back-end can handle the same collection in about 19 seconds. So there still is more area for optimization ahead.

Rounding out the interesting NIR work for the day was Intel's Jason Ekstrand landing a change to vectorize all IO and ultimately this fixes a 10% performance regression for the GfxBench tessellation test.

Mesa 19.1 is shaping up to be quite an exciting update for the open-source Linux graphics drivers and should debut around the end of May.
Related News
About The Author
Author picture

Michael Larabel is the principal author of 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 automated benchmarking software. He can be followed via Twitter or contacted via

Popular News This Week