Nouveau Re-Clocking, NVIDIA vs. Nouveau Drivers

Written by Michael Larabel in Display Drivers on 8 October 2012 at 11:48 AM EDT. Page 1 of 3. 5 Comments.

After some dabbling this weekend with Ubuntu 12.10 on both the Nouveau and NVIDIA graphics drivers, there's both good and bad news to share.

Some light weekend benchmarks were done from the Lenovo ThinkPad W510 notebook with an Intel Core i7 720QM processor and NVIDIA Quadro FX880M graphics on Nouveau and the NVIDIA binary blob, following the Unity 6.8 desktop benchmarks. The good news is that the reverse-engineered open-source Nouveau driver is performing more competitive to the NVIDIA binary blob for this discrete mobile GPU when using the Nouveau Gallium3D stack found in Ubuntu 12.10. The Quantal Nouveau stack consists of the Linux 3.5 kernel, Mesa 9.0, and xf86-video-nouveau 1.0.2.

The performance was fairly decent for Nouveau on Ubuntu 12.10, although from Canonical's end they have found Nouveau to be in a funky state. The Nouveau kernel driver was just overhauled, but that's in Linux 3.7 and not in Linux 3.5 as found in Ubuntu Quantal. Unfortunately in the Ubuntu 12.10 kernel or in the upstream mainline kernel they still don't have proper re-clocking and power management support quite yet. At least for some GeForce hardware, the Linux 3.8 kernel might bring better re-clocking.

Manual re-clocking of the Quadro FX880M was attempted, as outlined in Nouveau Reclocking: Buggy, But Can Boost Performance, but that failed miserably. On Linux 3.5 as found in the Ubuntu 12.10 repository, when attempting to have Nouveau run the GPU into its highest power state it clearly failed:

The re-clocking failure also happened with the vanilla Linux 3.6.1 kernel. When attempting to re-clock the mobile NVIDIA GPU on the Linux 3.7 Git code as of earlier today, there was a null pointer dereference within the Nouveau DRM driver.

The NVIDIA binary Linux graphics driver can run the GPU with a 550MHz core clock and 790MHz memory clock. Meanwhile with the broken re-clocking support for the FX 880M, the GPU was stuck at its boot speeds of a 405MHz core and 324MHz for the dedicated video memory.


Related Articles