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

Nouveau's OpenGL Performance Approaches The NVIDIA Driver

Michael Larabel

Published on 21 March 2011
Written by Michael Larabel
Page 1 of 6 - 94 Comments

As I began to share over the weekend, the community-created Nouveau driver that's open-source and is written by clean-room reverse-engineering the NVIDIA binary display driver, has reached a serious milestone. For low-end NVIDIA GPUs, the Nouveau driver based upon the Mesa Gallium3D architecture is now as fast, or even faster, than NVIDIA's official proprietary driver.

Crossing this milestone happens with the Linux 2.6.39 kernel, which has not even had its first release candidate yet with the Linux 2.6.38 kernel being released just one week ago. The early change that so greatly affects the Nouveau OpenGL performance is the merging of KMS/DRI2 page-flipping for the Nouveau DRM (Direct Rendering Manager) driver within the Git tree that will form the Linux 2.6.39 release. In last week's pull, DRI2/KMS page-flipping was enabled for the Nouveau DRM along with z-compression and various other changes that have built-up since the 2.6.38 kernel merge window was open back in January.

It was in the Linux 2.6.38 kernel where the Radeon page-flipping was introduced for ATI/AMD hardware, and that resulted in dramatic performance improvements for the open-source driver too. Page-flipping is a major win as it allows for faster performance by simply changing a pointer between the screen's front and back-buffers rather than copying the contents to/from the front/back-buffers. This page-flipping not only allows for faster performance, but it also ensures tear-free screen updating since nothing has to be copied to the front-buffer. The benefits are the same for the Nouveau driver, but with this open-source driver already performing quite good in relation to the proprietary NVIDIA driver, it happens to be that for some GPUs this is enough to push it to running at the same speed as the proprietary NVIDIA driver.

For these initial Nouveau tests using the latest Mesa 7.11-devel Gallium 0.4 Git code as of 2011-03-18 and also the Git code of the xf86-video-nouveau DDX and Linux kernel (from the linus-2.6.git tree) from the same date, an Intel Sandy Bridge system was used. It was the Intel Core i5 2500K CPU, Sapphire Pure Black P67 Hydra motherboard, 2GB of DDR3 system memory, and 250GB Seagate SATA HDD. The NVIDIA graphics cards tested in this article include the GeForce 8500GT 512MB, GeForce 9500GT 1024MB, GeForce 9800GT 512MB, and GeForce GT 220 1024MB. Why no other NVIDIA graphics cards for this testing? It is explained at the end of the article.

The binary driver used in testing was the NVIDIA 270.30 Beta. Besides the updated graphics stack and kernel, this was an Ubuntu 10.10 x86_64 installation with GNOME 2.32 and Compiz, X.Org Server 1.9.0, GCC 4.4.5, and an EXT4 file-system.

Tests included Nexuiz, OpenArena, World of Padman, Urban Terror, VDrift, and Lightsmark via Phoronix Test Suite 3.0 and OpenBenchmarking.org.

Worth noting with the Nouveau driver that, unlike the Radeon driver, there is no SwapbufferWait xorg.conf option with the xf86-video-nouveau DDX. There is a page-flipping xorg.conf option for the Nouveau driver, but with the 2.6.39 kernel and latest DDX, page-flipping is enabled by default.

<< Previous Page
1
Latest Linux Hardware Reviews
  1. CompuLab Intense-PC2: An Excellent, Fanless, Mini PC Powered By Intel's i7 Haswell
  2. From The Atom 330 To Haswell ULT: Intel Linux Performance Benchmarks
  3. AMD Radeon R9 285 Tonga Performance On Linux
  4. Apotop Wi-Copy
Latest Linux Articles
  1. AMD Moves Forward With Unified Linux Driver Strategy, New Kernel Driver
  2. MSI: Update Your BIOS From The Linux Desktop
  3. NVIDIA vs. AMD 2D Linux Drivers: Catalyst Is Getting Quite Good At 2D
  4. 15-Way GPU Comparison With Mesa 10.3 + Linux 3.17
Latest Linux News
  1. EXT4 In Linux 3.18 Has Clean-ups, Bug Fixes
  2. Emacs 24.4 Has Built-In Web Browser, Improved Multi-Monitor Support
  3. NVIDIA's NVPTX Support For GCC Is Close To Being Merged
  4. KDE's KWin On Wayland Begins Using Libinput
  5. Khronos Releases OpenVX 1.0 Specification
  6. Linux Kernel Working Towards GNU11/C11 Compatibility
  7. Ubuntu 15.04 Is Codenamed After A Monkey: Vivid Vervet
  8. Following GCC, Clang Looks To Default To C11
  9. Users/Developers Threatening Fork Of Debian GNU/Linux
  10. Linux 3.18-rc1 Released One Week Early With Many Changes
Latest Forum Discussions
  1. HOPE: The Ease Of Python With The Speed Of C++
  2. Users/Developers Threatening Fork Of Debian GNU/Linux
  3. Bye bye BSD, Hello Linux: A Sys Admin's Story
  4. NVIDIA Presents Its Driver Plans To Support Mir/Wayland & KMS On Linux
  5. AMD Is Restructuring Again, Losing 7% Of Employees
  6. Open-Source AMD Fusion E-350 Support Takes A Dive
  7. Upgrade to Kaveri, very slow VDPAU performance
  8. ChromeOS Drops Support For EXT2/EXT3/EXT4 File-Systems