Show Your Support: Did you know that you can get Phoronix Premium for under $4 per month? Try it today to view our site ad-free, multi-page articles on a single page, and more while the proceeds allow us to write more Linux hardware reviews. At the very least, please disable your ad-blocker.
Some Good & Bad News For The Nouveau Driver
With our big AMD Linux GPU / driver comparison we found its open-source Gallium3D driver to be noticeably faster than the classic Mesa DRI driver across an array of Radeon hardware from multiple generations. However, the official Catalyst driver was multiple times faster (roughly 5.18x faster) than the Gallium3D driver, not to mention its lack of proper support for OpenGL 3/4, VA-API/VDPAU/XvBA video playback, and many other features only found within the proprietary Catalyst driver. Now though it is time to see how the Gallium3D Nouveau performance compares to that of NVIDIA's proprietary Linux driver across different GeForce graphics cards.
The original plans for this Nouveau versus NVIDIA testing was to carry it out just like the ATI/AMD testing with using multiple graphics cards spanning generations of NVIDIA GPUs. With the Nouveau developers having abandoned their classic Mesa driver early on (besides a classic Mesa driver still in existence for the oldest of NVIDIA GPUs), it is strictly a Gallium3D versus proprietary driver comparison on the NVIDIA side. However, once using the very latest Linux, libdrm, xf86-video-nouveau DDX, and Mesa/Gallium3D code as used in our ATI testing, our hopes of doing a large multi-generation comparison were quickly diminished.
We went as far back as the GeForce 6 series, but once digging out an old PCI Express 6600GT and using that, the system would quickly lock-up during testing. Kernel mode-setting and compositing worked fine, but when running games like OpenArena and Nexuiz, the system would lock-up with this very latest code. After the GeForce 6600GT failure, the next testing was with different GeForce 9 graphics cards we previously have used the Nouveau DRM and Gallium3D drivers with, such as the GeForce 9500GT, GeForce 9800GT, and GeForce 9800GTX. However, that support ended up regressing too with the OpenGL support being unstable with the latest code. In the end, only the GeForce 8 series hardware had played well for us with the latest Linux 2.6.37 kernel, Mesa 7.10-devel / Gallium 0.4, and libdrm code from the end of December.
The tested GeForce 8 hardware included the GeForce 8400GS, GeForce 8500GT, GeForce 8600GT, and GeForce 8800GT. All four of these cards had run fine using the open-source code and of course worked great with the proprietary NVIDIA driver. The test system remained the same of using an Intel Core i5 750, an ECS P55H-A motherboard, 4GB of DDR3 system memory, and a 500GB Western Digital SATA HDD. The base system was also the same with Ubuntu 10.10 x86_64 on GNOME 2.32.0 with Compiz, X Server 1.9.0, GCC 4.4.5, and an EXT4 file-system and then loading in the latest open-source 3D components. The proprietary NVIDIA driver tested was the latest 260.19.29 release providing OpenGL 3.3.
The tests were also like our ATI testing with using Nexuiz, Warsow, OpenArena, World of Padman, Smokin Guns, Tremulous, VDrift, and Lightsmark via the Phoronix Test Suite. Like with the ATI Gallium3D testing, we were limited to using games that could actually run on the open-source driver stack.