1. Computers
  2. Display Drivers
  3. Graphics Cards
  4. Memory
  5. Motherboards
  6. Processors
  7. Software
  8. Storage
  9. Operating Systems


Facebook RSS Twitter Twitter Google Plus


Phoronix Test Suite

OpenBenchmarking.org

Open-Source NVIDIA Driver Approaches Stable State

Michael Larabel

Published on 13 April 2012
Written by Michael Larabel
Page 1 of 12 - 9 Comments

Nouveau, the reverse-engineered open-source graphics driver for NVIDIA's entire range of graphics processors, is reaching a stable state where it's exiting the "staging" area of the Linux 3.4 kernel and being considered part of the standard, stable kernel configuration. How though is the Nouveau driver working out compared to NVIDIA's official, closed-source Linux graphics driver? Here are some new benchmarks from ten different graphics cards and other information on the state of Nouveau.

The Nouveau driver has had a long and challenging journey to get where's it at today where the developers are now comfortable with the Nouveau driver leaving the Linux kernel's staging area and thus also fully committing to a stable ABI for their kernel driver (their DRM version is also now marked as v1.0). Nouveau began more than a half-decade ago; I first wrote about the project in 2006 and it wasn't until 2007 that OpenGL began to sort of work on this free software driver that was started by Stephane Marchesin (he's no longer directly involved with Nouveau as for a while now he's been off working for Google on Chrome OS). Nouveau's journey has been quite interesting and in the past six years has earned itself 450 news posts where I have written about this open-source NVIDIA driver and over 60 featured articles that have included benchmarks or more extensive information on this Linux driver.


The selection of NVIDIA graphics cards for today's Nouveau testing.

Aside from the kernel component, there's the user-space Nouveau 3D drivers in the form of Gallium3D for all modern NVIDIA generations and the classic Mesa DRI driver for the old fixed-function NVIDIA GPUs. The Mesa/Gallium3D support has been mainline in Mesa for a few years. The libdrm support for Nouveau has also long been in mainline, but requires that this DRM library be built with the --enable-nouveau-experimental-api build flag. The xf86-video-nouveau DDX driver remains available in Git form but it has yet to experience a release in all its life.

In the past three years the pace of Nouveau's development has really picked up pace as more distributions begin to use the Nouveau driver as their "out of the box" NVIDIA Linux graphics driver since it's open-source. In particular, it is largely because in 2009 Linus called for the Nouveau driver to be merged. Nouveau was merged into the Linux 2.6.33 kernel staging area at Torvalds request, which made it much easier for new users and developers to begin trying out this community-backed project.

The Nouveau developers continue to be playing catch-up in some areas such as when it comes to proper power management support and GPU core/memory re-clocking and various other features compared to the NVIDIA Linux driver (SLI, 3D Vision, and other features are also out at this point), but they have been successful in developing a truly open-source OpenGL 2.1/3.0 driver for GeForce/Quadro hardware without any support from NVIDIA Corp. Besides OpenGL, back in February they even got the first bits of OpenCL running on the NVIDIA GPUs, but this code is still a work-in-progress and not yet mainline. There is also an open-source NVIDIA CUDA implementation that came out last month.

For those wondering about the Nouveau driver support for a particular hardware generation there is the Nouveau Wiki Feature Matrix that documents from the latest Fermi (NVC0) and Kepler (NVE0) generations all the way back to the Riva TNT (NV04/NV05) with what driver capabilities are implemented.

Across the board from the TNT through Fermi/Kepler, most 2D acceleration support is in place except for proper video decoding. On the 3D side, the oldest NVIDIA hardware (GeForce 3/4) and prior that's fixed-function uses a classic Mesa DRI driver rather than a Gallium3D implementation like the newer generations so the OpenGL support for the oldest hardware is in a rotting state within the Nouveau driver. However, for around the GeForce 6 series and newer, there is a decent level of OpenGL 2.1+ support in place. Nouveau's mode-setting and other display functionality continues to be implemented via KMS-only with all user-space mode-setting support having been abandoned by the project long before it was even deemed stable; the xf86-video-nouveau DDX still has not seen an official release. Functionality like dual-head and TV-Out is mostly working along with suspend-and-resume.

<< Previous Page
1
Latest Linux Hardware Reviews
  1. Btrfs On 4 x Intel SSDs In RAID 0/1/5/6/10
  2. AMD Radeon R9 290 On Ubuntu 14.10: RadeonSI Gallium3D vs. Catalyst
  3. MSI X99S SLI PLUS On Linux
  4. NVIDIA GeForce GTX 970 Offers Great Linux Performance
Latest Linux Articles
  1. Windows 8.1 vs. Ubuntu 14.10 With Intel HD Graphics
  2. 6-Way Ubuntu 14.10 Radeon Gallium3D vs. Catalyst Driver Comparison
  3. NVIDIA vs. Nouveau Drivers On Ubuntu 14.10
  4. Ubuntu 14.10 Offers AMD Radeon Driver Performance Improvements
Latest Linux News
  1. GTK+ 3.16's New GtkGLArea Widget Gets Improved
  2. X.Org Server 1.17 ABI Bumped
  3. Fedora 21 Beta To Be Released Next Week
  4. Go 1.4 Beta Release Brings Big Runtime Changes
  5. SIMD For JavaScript Continues Coming Along
  6. GNOME 3.15.1 Released
  7. Red Hat Software Collections 1.2 Adds GCC 4.9, Nginx 1.6
  8. GLAMOR Acceleration Continues To Be Cleaned Up
  9. Russia's Yandex Web Browser Finally Released For Linux
  10. Linux Kernel Finally Being Optimized For SSHDs
Latest Forum Discussions
  1. Is foolish currently develop in machine code, hexadecimal and assembly?
  2. Reducing The CPU Usage In Mesa To Improve Performance
  3. How to get rid of Linux
  4. Help diagnosing problems with a Readon HD 4670 on Mesa 10.3.2-1
  5. Advertisements On Phoronix
  6. nv and xorg.conf under Debian PPC
  7. Looking for a Open-Source AMD experienced Linux mentor
  8. Bad perfomance in gaming