Nouveau Kepler Re-Clocking Is Working A Lot Better On Linux 4.4

Written by Michael Larabel in Display Drivers on 20 November 2015 at 10:00 AM EST. Page 1 of 3. 11 Comments.

With the in-development Linux 4.4 kernel, NVIDIA GeForce GTX 600/700 series (Kepler) graphics cards are manually re-clocking a lot better to allow better performance on this unofficial NVIDIA Linux driver.

The Nouveau Linux 4.4 pull request enables re-clocking support for GDDR3-based graphics cards from the G94 through G200. However, for modern NVIDIA customers, the GDDR5 PLL stability fix and other Kepler changes is leading to a much better experience. See Experimental Nouveau DRM Branch Yields Better GDDR5 Kepler Re-Clocking. In my testing so far of the post-4.4-rc1 code, the Kepler re-clocking with graphics cards using GDDR5 video memory is indeed working much better!

On previous kernels, my GDDR5 graphics cards were never able to reach the highest exposed performance state (0f) but would always either lead to a lock-up or screen corruption when trying to peg a core/memory frequency about the 0a performance state. However, with Linux 4.4, so far so good for my GeForce GTX 600/700 series hardware in being able to re-clock to 0f state!

I'm running tests on many different NVIDIA Kepler cards right now while in this article today are just results for a GeForce GTX 780 Ti. Over the weekend results on more cards should be available. Re-clocking with Nouveau on Linux 4.4 still requires enabling the functionality (nouveau.pstate=1 as a module parameter) and then writing the desired performance state via sysfs (though for Linux 4.5 it looks like that will be moved over to debugfs).

So far no Kepler re-clocking stability issues! I was using my Linux 4.4 kernel build atop Ubuntu 15.10 while also using the Padoka PPA for easy access to Mesa 11.1-devel Git.

All benchmarks were done via the open-source Phoronix Test Suite. The GTX 780 Ti preview results here today show the card running out-of-the-box without any pstate modifications, the results re-clocked to 0a as the previous maximum power state achieved on Nouveau, and then with the 0f performance state as it's now working on Linux 4.4. The graphic on this page show the frequency differences when re-clocking.

Related Articles