An Initial Look At The Intel Iris Gallium3D Driver Performance
One of the most exciting developments in the open-source Intel driver space this year was the Iris Gallium3D driver taking shape as what's destined to eventually succeed their "classic" i965 Mesa driver. With Iris Gallium3D maturing, here's a look at how the performance currently stacks up to their mature OpenGL driver.
The Intel Iris Gallium3D driver is designed for Skylake (potentially Broadwell too) support and newer generations while being a forward-looking driver and utilizes their mature NIR compiler support. Iris holds much more performance potential than their classic Mesa driver albeit the developers haven't really taken to performance optimizations yet but rather getting the driver up and running, eliminating test suite failures, and getting to the point of feature parity with the i965 driver.
Iris has been maturing quite nicely in terms of features and support and it's looking like in 2019 we could see the driver mainlined to Mesa. It's especially exciting on the Intel Linux graphics front with Intel preparing for their discrete GPU efforts.
Before sharing our initial benchmark results, keep in mind the driver is still very much experimental and not yet optimized for speed. Intel open-source developer Kenneth Graunke recently commented, "Performance is still worse than i965, and that's expected - I haven't hooked up fast clears, color compression, hierarchical Z, or any of the other major bandwidth saving features. Been trying to finish up missing features and functional regressions first. That's getting closer, there are about 210 Piglit regressions (vs i965) and 560 OpenGL CTS failures. So, working on performance will probably come soon. I've also been cleaning up a bunch of prep work for merging, but there's more to do there too."
For getting an idea to the current state of Iris as we approach the end of 2018, on an Intel Core i7 8700K box with UHD Graphics 630, I compared the performance using Mesa 19.0 between Iris Gallium3D and the classic "i965" Mesa driver. A variety of basic OpenGL games and synthetic tests were run for an initial gauge as to the performance.