Intel's Linux Graphics Stack Is Close To Landing A Code-Generator Generator

Written by Michael Larabel in Intel on 3 February 2020 at 04:14 PM EST. 4 Comments
Intel's Linux graphics stack has seen a lot of major changes in recent years besides the addition of their "ANV" Vulkan driver. The Intel Linux OpenGL driver saw their new Gallium3D driver, NIR has come about as the new intermediate representation used across their drivers, and other fundamental changes and improvements. The latest underlying work is introducing a pattern-based code generator for their graphics compiler.

Longtime open-source Intel Linux developer Ian Romanick spoke at FOSDEM 2020 this weekend in Brussels about the automatic, pattern-based code generation he's been working on for the Intel Mesa code. This comes after more than a decade of experimenting with the idea before of a code-generator generator only to hit roadblocks.

But with the evolution of their graphics software architecture as well as hardware advancements, the code-generator generator is now a possibility that is likely to be merged soon into mainline Mesa.

Watch the presentation (WebM/VP9) for those interested in the topic of graphics compiler topics. So far "a couple simple optimizations" have helped a couple hundred shaders by a couple percent, but still more possibilities of tuning this further lay at hand.

This merge request has been pending since the end of last year to introduce the Intel code-generator generator. It missed the Mesa 20.0 window but now with Mesa 20.1 at play, hopefully we'll see it land soon. The code-generator generator itself is written in Python and has been a work-in-progress by Ian for the past year.
Related News
About The Author
Michael Larabel

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, LinkedIn, or contacted via

Popular News This Week