Sponsored By

Valve's Got a Driver Conundrum

A Linux native's perspective on the present state of Linux graphics drivers.

Wyatt Epp, Blogger

September 23, 2013

4 Min Read
Game Developer logo in a gray background | Game Developer

So they've gone ahead and done it; Valve has planted their flag in the Linux distro soil with SteamOS.  I'm a bit surprised, to be quite honest, and I have a lot of questions and concerns about this move.  But the thing I'm most interested in is what this means for graphics vendors and, in particular, their drivers.  Because, right now?  It's honestly kind of rough.

Many will tell you if you want a good Linux experience, you want to use Nvidia's binary driver.  For some people I gather it works quite well.  But my experience across the last five years has been that Nvida's kernel module is opaque and crashes often.  It has a devil of a time making sense of multi-monitor configurations, and when something goes wrong it tends to bring the whole machine down.  Your open-source alternative is to take a chance on the reverse-engineered noveau driver (if it supports your chipset) but the performance will be...probably less than half of what you'd get otherwise (if it works at all).

AMD's binary driver is known by the relatively cryptic moniker of  "fglrx" or the more commonly-known "Catalyst".  I haven't used it for a few years, but given that I'm STILL hearing horror stories about installing it, and I STILL hear complaints about thoroughly abysmal 2D performance...well, buyer beware and all that.  The open alternative (or your only choice on older hardware) is simply called "radeon", and I rate its stabilty highly.  In addition to some superstar community members and abundant documentation, AMD has been payrolling developers for the open source drivers.  They are improving at a nice clip, but still: you're generally looking at around half the performance of fglrx for the moment.

Intel only has their open-source drivers in Linux -- They've been a model citizen when it comes to contributions to Linux plumbing.  And to be honest, those drivers are quite good.  I've been using them in my home desktop and have had no complaints.  But Intel's best GPU hardware is the Iris Pro.  That's decent in the grand scheme of things (low mid-range, roughly), but thus far only comes on certain laptop chips from their newest (Haswell) line of processors.  I'm expecting they'll expand that over time, but a look at the Steam hardware survey is revealing when it comes to the current state of market share.

Speaking of open drivers, their general health is pretty astonishing given the amount of work involved in writing a compliant GL implementation.  Mesa, the shared implementation used by all three mentioned above, currently advertises OpenGL 3.1; and they'll be up to 3.3 once GLSL 1.5 and geometry shaders are finished!  But realistically, they're not going to catch up to Khronos for at least a couple years.  There's just too much stuff. (For a more granular view of where things are at: http://cgit.freedesktop.org/mesa/mesa/tree/docs/GL3.txt )  And this doesn't even take into account optimising it all.  The amount of resources ATI/AMD/Nvidia have invested in catching corner cases and oddities in their drivers probably exceeds the total lifetime investment in all aspects of Linux graphics.

Sounds pretty dire, right?  But Valve does have a certain something that distros have lacked thus far: Valve has the clout required (i.e. possibly millions of users) to push Nvida and AMD to up their game when it comes to Linux drivers.  If those two can be budged even a little bit to offer better desktop support, this is a win for everyone.  Because this isn't about a single hardware contract for a singular "SteamBox", as Gabe Newell has stressed repeatedly.

To be sure, I could see e.g. AMD semi-customs doing a special driver for one piece of hardware, but I find that scenario unlikely.  Since they've already been openly helping the Intel driver team find optimisation opportunities, I don't think it's a stretch to say they're actively trying to avoid a single-vendor ecosystem: consider that going to bat with Intel exclusively would be met with derision and scorn from long-time PC enthusiasts.  I also suspect that Valve isn't keen on excluding people with hardware more than a couple years old, hardware that may only run with the open source drivers (this happens more than you'd think).  This might even materialise in the form of Valve contributing to Mesa.

It's too early to tell just what they're doing about their software stack and I'm not one for mind reading but, far more than sound (another barrel of worms entirely), GPU drivers are a huge unknown and I see them as the single factor most likely to torpedo Valve's distro ambitions.

Read more about:

2013Blogs

About the Author

Daily news, dev blogs, and stories from Game Developer straight to your inbox

You May Also Like