Nouveau's OpenGL Performance Approaches The NVIDIA Driver

Published on March 21, 2011
Written by Michael Larabel
Page 6 of 6
Discuss This Article

The performance improvements on multiple GeForce graphics cards in a number of OpenGL tests is quite an achievement considering the Radeon driver isn't even at a performance parity to the proprietary Catalyst driver and even AMD's open-source engineers don't think they'll quite reach a parity to their highly-optimized multi-platform proprietary driver. With the Radeon X1000 (R500) GPUs on their Gallium3D driver the performance is quite competitive, but usually there is still some small difference in performance.

In some tests -- such as the more demanding Lightsmark -- there is still a huge performance difference between the latest Nouveau code and where the latest NVIDIA binary driver is currently performing. With higher-end NVIDIA GPUs, the Nouveau driver also does not perform nearly as well, likely due to some critical elements missing from this open-source driver right now. With the lower-end GeForce hardware, however, that is where the Nouveau driver is shining right now.

While the OpenGL frame-rate performance is much closer now for the Nouveau Gallium3D driver to the proprietary NVIDIA driver, it is not approaching the blob on all fronts. The proprietary NVIDIA driver supports OpenGL 3 or OpenGL 4 (depending upon the hardware) where as the Nouveau Gallium3D support is still bound to OpenGL 2.1. Granted, of course, this is not anything Nouveau-specific but is rather an unfortunate limitation of all open-source Mesa/Gallium3D drivers.

The Nouveau driver also lacks support for many other features supported by the proprietary driver: multi-GPU SLI support, VDPAU video acceleration, OpenCL/CUDA compute, TV-Out (it's working on Nouveau for only some GPUs), and HDMI audio. The Nouveau driver also has only primitive power management / dynamic core and memory clocks support for some GeForce generations. Mobile users with NVIDIA hardware are still best off with the proprietary driver for much better power management and video acceleration support.

There is also GPUs for which the Nouveau support is broken. As part of the early 2.6.39 Nouveau testing, I had plans for a much larger graphics processor comparison, but that was reduced due to broken Nouveau support. A vintage GeForce 6600GT had serious 3D issues, GeForce 8 hardware can be unstable in some tests (hence the GeForce 8500GT failing in some of the tests), and a GeForce GT 240 would encounter a lock-up upon initialization that would drop it back to Mesa's software rasterizer. Those were just the most easily spotted issues. The best Nouveau support overall right now is with the GeForce 9 family where the support seems to be the best. There is also early GeForce 400/500 "Fermi" support, but that currently requires "non-free" firmware/microcode for acceleration support.

Overall though the Nouveau developers are doing an impressive job considering the situation and anyone planning to use this open-source NVIDIA Linux driver will definitely want the Linux 2.6.39 kernel. Unfortunately, this work is too late for Ubuntu 11.04, Fedora 15, and others, with many of the upcoming Linux distributions using 2.6.37/2.6.38. It is also unlikely that the page-flipping support will be back-ported since it is not the most trivial patch.

These results can also be analyzed on OpenBenchmarking.org.

Discuss this article in our forums, IRC channel, or email the author. You can also follow our content via RSS and on social networks like Facebook, Identi.ca, and Twitter (@Phoronix and @MichaelLarabel). Subscribe to Phoronix Premium to view our content without advertisements, view entire articles on a single page, and experience other benefits.

6
Next Page >>
Latest Hardware Reviews
  1. Gallium3D Continues Improving OpenGL For Older Radeon GPUs
  2. 15-Way Open vs. Closed Source NVIDIA/AMD Linux GPU Comparison
  3. Nouveau vs. NVIDIA Linux Comparison Shows Shortcomings
  4. AMD Radeon Gallium3D More Competitive With Catalyst On Linux
Latest Software Articles
  1. Btrfs vs. EXT4 vs. XFS vs. F2FS On Linux 3.10
  2. AMD Radeon R600 GPU LLVM 3.3 Back-End Testing
  3. F2FS File-System Shows Regressions On Linux 3.10
  4. Previewing The Radeon Gallium3D Shader Optimizations
Latest Linux News
  1. Modern Intel Gallium3D Driver Still Being Toyed With
  2. Linux 3.10 Kernel Benchmarks On A Core i7 Laptop
  3. GCC 4.8.1 Compiler Due To Be Out Next Week
  4. Linux 3.10 Kernel Benchmarks For Intel Ivy Bridge
  5. Linux's "Ondemand" Governor Is No Longer Fit
  6. Firefox 22 Beta Enables WebRTC Support
  7. OpenSUSE 13.1 Milestone 1 Released
  8. DRM Graphics Driver Comes For Dove/Cubox
  9. JADE: An LLVM-Based Video Decoder For MPEG RVC
  10. Ubuntu 13.10 Likely Switching To Chromium Browser
  11. Unity 7, Compiz To Be Polished For Ubuntu 13.10
Latest Forum Talk
  1. Ubuntu 13.10 Likely Switching To Chromium Browser
  2. Btrfs vs. EXT4 vs. XFS vs. F2FS On Linux 3.10
  3. Features Being Developed For KDE 4.11 Desktop
  4. Left 4 Dead 2 Beta Surfaces For Linux Gamers
  5. Unity 8, Mir To Be Experimental Choice In Ubuntu...
  6. X3: Albion Prelude Released For Linux Gamers
  1. Computers
  2. Display Drivers
  3. Graphics Cards
  4. Motherboards
  5. Peripherals
  6. Processors
  7. Software
  8. Operating Systems
  9. All Articles
  1. Linux Benchmarking
  2. OpenBenchmarking.org
  3. Phoronix Test Suite