Etnaviv Gallium3D Picks Up A NIR Compiler

Written by Michael Larabel in Mesa on 7 August 2019 at 12:11 AM EDT. 1 Comment
MESA
Landing on Tuesday ahead of this week's Mesa 19.2 feature freeze is an experimental NIR compiler for the Etnaviv Gallium3D driver that provides open-source OpenGL driver support for Vivante graphics IP.

Open-source developer Jonathan Marek merged the support yesterday that allows for a NIR-based compiler as an alternative to its own homegrown compiler infrastructure for dealing with OpenGL shaders. NIR is the "new" Mesa common IR used by the likes of Intel's OpenGL/Vulkan drivers, RADV, optionally for RadeonSI, and other drivers like Freedreno and V3D. By leveraging NIR, this should help in their OpenGL (ES) advancement and potential for squeezing more performance optimizations as the Etnaviv reverse-engineered driver continues maturing.

For Mesa 19.2, the code path for Etnaviv isn't enabled by default but requires setting the ETNA_MESA_DEBUG=nir environment variable. This new shader compiler amounts to over two thousand lines of new code for Etnaviv.
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