Intel Has Quietly Been Working On A New Gallium3D Driver Being Called "Iris"

Written by Michael Larabel in Intel on 17 August 2018 at 04:41 PM EDT. 30 Comments
INTEL
After resisting Gallium3D for the past decade with a preference on continuing to maintain their "i965" Mesa classic driver and all they've invested into its compiler stack and more, it seems times are changing as the open-source Intel team has been starting up development of a modern Gallium3D driver.

This is not to be confused with the former i915g or i965g efforts from about a decade ago that were the experiments of Tungsten/LunarG for driver research/experimentation purposes or in the case of i915g to handle some features with LLVM in software, but this is a modern Gallium3D driver targeting their current hardware.

There appears to be no formal announcement of this new driver yet, but when reading this patch series on the Mesa mailing list today by Intel's Jason Ekstrand, I noticed the mention of one of the benefits of this storage image lowering pass for NIR being "this will make Ken's life way easier as he tries to hook up images in the new Gallium driver." Wait, a new Gallium3D driver?!?! From Intel??? That certainly got me excited.

The only Ken I am aware of on the Intel driver team is Kenneth Graunke, a longtime contributor to Mesa and the open-source driver efforts. After checking FreeDesktop Git and seeing he migrated his personal repositories to the new FreeDesktop.org Gitlab... Sure enough, in his Mesa repository was a branch named Iris that was recently updated... When checking it out, sure enough. What many of you have been wanting to see for years... An Intel Gallium3D driver!

Thinking at first it might just be some personal side project, the commit history shows that this new Iris Gallium3D driver has been in the works for several months. In fact, Iris has been in the works for the past eight months.

While Iris Gallium3D is taking shape, this driver still has more work ahead on DRI3 and for handling advanced OpenGL features like compute shaders, the Mesa shader disk cache, etc. Additionally, the primary support target seems to be focused on current-generation "Gen 9" graphics and not the older Gen 8 hardware nor the future Gen 10 Cannonlake and Gen 11 Icelake graphics.

Long story short, there is an Intel Gallium3D driver in the works called Iris. It appears to be a ways out but will be very interesting to see how it develops and when it becomes ready for primetime and officially announced -- assuming everything goes okay and it makes it that far.

It's very interesting to see Intel invest now in a Gallium3D driver as Vulkan continues taking off and their ANV driver is in great shape there. The maturity of NIR and multiple Mesa drivers centering around this intermediate representation does also make their change over to Gallium3D more feasible than it's been years ago. This vetted NIR compiler is being used by Iris, obviously.

Going with Gallium3D should yield them the ability to use the Gallium "Nine" state tracker for faster Direct3D 9 support under Wine, possible compute support via Clover (granted Intel already has the separate Beignet and OpenCL-NEO projects providing great OpenCL support today), and more code sharing among the other Gallium drivers, along with different Gallium state tracker possibilities like VA-API/VDPAU video acceleration (again, Intel already has their independent VA-API driver implementation).

As far as the Iris name, Intel has used it for branding their higher-end graphics over HD/UHD Graphics. Given the timing, we also can't help but wonder if this Iris Gallium driver stack is part of their forward planning for the eventual bring-up of Intel's discrete graphics card expected in 2020. Exciting times ahead...

Update: Confirmation.
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