Is The Open-Source NVIDIA Driver Fast Enough For Steam On Linux Gaming?

Written by Michael Larabel in Display Drivers on 19 November 2014 at 11:39 AM EST. Page 1 of 3. 33 Comments.

Following the recent articles about the open-source AMD Linux OpenGL performance for gaming (16-way Open-Source Radeon Linux Driver GPU Comparison and AMD Radeon Gallium3D Is Catching Up & Sometimes Beating Catalyst On Linux), here's a look at the Counter-Strike: Global Offensive and Team Fortress 2 performance when testing the games on the latest open-source NVIDIA (Nouveau) Linux graphics driver code.

While I generally don't recommend Nouveau for Linux gaming systems due to the re-clocking still being a huge work-in-progress to allow the graphics cards to effectively operate at their designated clock frequencies / performance states, I decided to run some fresh tests using the Linux 3.18 kernel and Mesa 10.4-devel to see where things stand today. For the tested Kepler graphics cards that support re-clocking, I tested them at their maximum obtained re-clocked frequencies where the system was stable -- generally still below their rated core/memory frequencies.

The tests in this article were focused around the NVIDIA GeForce 400/500 "Fermi" and GeForce 600/700 "Kepler" graphics cards. While at Phoronix we have all of the currently available GeForce GTX 750/970/980 Maxwell graphics cards as featured in our other NVIDIA Linux reviews, the open-source Nouveau state still leaves a lot to be desired. The new GeForce GTX 970/980 graphics cards aren't yet supported by Nouveau. The GTX 750/750 Ti will work with Nouveau but you still need to manually extract the GPU firmware/microcode from the binary blob to expose hardware acceleration support. Additionally, there's no re-clocking support for Maxwell by Nouveau as of Linux 3.18.

The re-clocking support is also still M.I.A. for Fermi graphics cards while the Kepler graphics re-clocking is okay. The GPU core re-clocking generally works well for Kepler but the memory re-clocking is where it's still been problematic for Nouveau developers. The only tested graphics card in this article that could re-clock to its stock core/memory frequencies was the GeForce GTX 650 while the other GeForce 600/700 GPUs could only re-clock to their "0a" performance state with anything higher causing problems like illustrated below. If you want to try Kepler re-clocking with Nouveau on a modern kernel, read this article for the steps involved.

The graphics cards tested for this article included the GeForce GTX 460, GTX 550 Ti, GTX 650, GTX 680, GTX 760, GTX 770, and GTX 780 Ti. The tests happened from an Ubuntu 14.10 x86_64 system with the Xfce desktop while upgrading to the Linux 3.18 Git kernel and also xf86-video-nouveau 1.0.11 Git and Mesa 10.4-devel Git from this week.

The below table that's auto-generated by the Phoronix Test Suite benchmarking software shows the GPU core/memory frequencies acheived by each of the NVIDIA graphics cards when re-clocking with the latest Nouveau driver code.

Nouveau Valve Steam On Linux Gaming

Like the other recent AMD tests, besides looking at the raw OpenGL performance the CPU usage, GPU temperature, and power consumption were monitored to when using the Phoronix Test Suite for automated open-source Linux benchmarking. On the following pages are the results. For those curious how the Linux 3.18 + Mesa 10.4-dev Nouveau driver compares to the NVIDIA binary blob, those complementary numbers are coming out in the next few days.


Related Articles