Earlier this month an Intel employee began asking about making optimizations to Mesa's shader compiler (on the Mesa-dev list
). This Intel employee was not one of their usual Open-Source Technology Center developers commonly working on their Linux graphics stack as part of Keith Packard's team, but instead it was an uncommon name: Benjamin Segovia. Ben is from Intel's Advanced Graphics Lab team where previously he worked on ray-tracing techniques, but as of late seems to be at least dedicating some of his Intel effort towards optimizing Mesa.
Ben's original Mesa thread (linked above) can be read for more details on his original thoughts and intentions, but today he has just submitted one of his first patches and it provides better GPU program optimization within the Mesa front-end. This patch touches just under 500 lines of code and provides improved optimizations of GPU programs with better swizzle support and analyzes control flows (though in a very crude form right now). Next up, Ben is working to tackle instruction merging and register renaming to avoid unnecessary moves. In his testing of this patch, all of his tests are working out and the GPU shader code is "clearly improved."
While Segovia is an Intel employee, his work right now that's taking place is happening within Mesa's front-end in a common area of this open-source code-base, so it should be of benefit to all users, but his testing has just been with the Intel driver and hardware. Ben though has also expressed interest in making some improvements to the Intel-specific Mesa shader compiler back-end. The initial patch that's not yet committed to Mesa's mainline code-base can be found on the mailing list
Eric Anholt and Ian Romanick (of Intel's normal OSTC Linux graphics crew) are also working on a new shader compiler for Mesa
, among other improvements. Any and all optimizations and improvements to the open-source 3D Linux graphics stack should certainly be appreciated by the community. While Intel focuses all of their Linux support for their in-house IGPs on an open-source driver (not to be confused with their other nasty side
), their Windows driver is still a whole lot faster
Hopefully a good portion of this work will be ready in time for Intel's Sandybridge launch
. Ben has also mentioned Sandybridge -- Intel's upcoming CPU with a better integrated graphics core than Clarkdale
-- within the mailing list thread.