Modern Intel Gallium3D Driver Proposed For Mainline

Written by Michael Larabel in Mesa on 16 April 2013 at 01:52 PM EDT. 8 Comments
MESA
Early this morning I delivered benchmarks of the new Intel Gallium3D driver developed by a LunarG employee. Coincidentally, hours later, the developer has proposed merging this Gallium3D graphics driver for Sandy Bridge and Ivy Bridge hardware into mainline Mesa.

The "i965g-next" driver was started late last year and continues to be frequently worked on by Chia-I Wu. Checking in on it recently, there still was fresh Git activity, I decided to run some benchmarks comparing it to Intel's official Mesa "classic" DRI driver. The DRI driver is still a ways faster than this experimental driver.

To much surprise, Chia-I Wu has proposed merging the driver into mainline Mesa in "a day or two."

He's also re-based his driver atop Mesa master and cleaned-up the history, which implements the i965 Gallium3D hardware driver and Winsys over 24 patches. In terms of the Ivy Bridge "Gen7" support he says it's working but stencil buffer support is missing. He's also fixed up tons of bugs so that Piglit is able to pass 7999 of 8428 test cases. Unfortunately, his compiler back-end going from TGSI to the Intel instruction set is still "messy, missing some features, and non-optimizing."

In response to the proposed merging, Matt Turner wrote: "My only objection is over adding a driver that is explicitly a toy, the confusion it will cause users, and the developer time it will waste. It wasn't uncommon for a user to waste a nontrivial amount of someone's time in #intel-gfx only to discover that they were trying to use the (old) i965g driver that no one maintained. I think everything Marek said was correct. If you could extend Gallium to consume GLSL IR it might actually be an interesting project."

Intel's Kenneth Graunke also made similar comments within our forums. "If I had to hazard a guess [about the performance difference between the Gallium3D driver and i965 classic], I'd say it's because of the shader compiler backend. Note that it's TGSI-based and named "toy compiler": https://github.com/olvaffe/mesa/tree...rs/i965/shader Now that Gallium supports both TGSI and LLVM IR (i.e. more than one kind), it probably wouldn't be too hard to add support for GLSL IR and drop in the classic driver's compiler backend. Less than a week, I'd imagine."

Intel's Ian Romanick is also in similar standing about merging this alternative Intel open-source Linux graphics driver. "I agree. People had this problem with r300c vs r300g and i915 vs i915g. I'm not interested in reliving that."

Hopefully Chia-I Wu decides to at least optionally hook in support for the i965 Gallium3D driver to handle GLSL IR so it could be used in conjunction with Intel's classic Mesa shader compiler, which would indeed be very interesting for performance and comparison purposes. Regardless, this proposal is simply about merging the i965g driver and not about making it the default over the i965 classic Mesa driver, which is out of the question for the foreseeable future.
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