Mesa Hack Makes Nouveau Faster For Team Fortress 2

Posted by Michael Larabel on January 08, 2013

Two performance-related commits were made today to Mesa for the Nouveau Gallium3D driver.

Christoph Bumiller pushed some new Mesa commits today concerning Nouveau. The first one is nouveau: increase max order of suballocated buffers by 1. This commit can make Nouveau run at 70 FPS now for Team Fortress 2 compared to 20 FPS prior to the commit, but unfortunately it's a hack.

The commit description says, "This is really a hack to make TF2 (considerably, up to 20 -> 70 fps at low res) faster." One of the code comments goes on to say, "TODO: Higher orders can waste a lot of space for npot size buffers, should add an extra cache for such buffer objects. HACK: Max order == 21 to accommodate TF2's 1.5 MiB, frequently reallocated vertex buffer (VM flush (?) decreases performance dramatically)."

The other commit improves buffer transfers for Nouveau. "Save double memcpy on uploads to VRAM in most cases. Properly handle FLUSH_EXPLICIT. Reallocate on DISCARD_WHOLE_RESOURCE to avoid sync." This commit is larger and introduces around 500 lines of new code.

A few other Nouveau code commits were made today to mainline Mesa, but nothing else that is overly exciting.

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.
Latest Hardware Reviews
  1. Sumo Lounge Emperor
  2. Gallium3D Continues Improving OpenGL For Older Radeon GPUs
  3. 15-Way Open vs. Closed Source NVIDIA/AMD Linux GPU Comparison
  4. Nouveau vs. NVIDIA Linux Comparison Shows Shortcomings
Latest Software Articles
  1. The Cost Of Ubuntu Disk Encryption
  2. Btrfs vs. EXT4 vs. XFS vs. F2FS On Linux 3.10
  3. AMD Radeon R600 GPU LLVM 3.3 Back-End Testing
  4. F2FS File-System Shows Regressions On Linux 3.10
Latest Linux News
  1. QEMU 1.5 Supports VGA Passthrough, Better USB 3.0
  2. Handbrake 0.9.9 Supports OpenCL Offloading
  3. Freedreno Gallium3D Now Banging The Adreno A3XX
  4. Jolla Announces Their First Phone
  5. Mageia 3 Released, Still Using Legacy GRUB
  6. NetBSD 6.1 Brings In More Features
  7. Using Six Monitors With AMD's Open-Source Linux Driver
  8. Benchmarking The Intel P-State, CPUfreq Changes
  9. FreeBSD Still Working On Next-Gen Package Manager
  10. DNF Still Advancing As Experimental Yum For Fedora
  11. Logitech Begins Supporting Linux Users
Latest Forum Talk
  1. Mageia 3 Released, Still Using Legacy GRUB
  2. Jolla Announces Their First Phone
  3. Ubuntu To Look At Replacing Firefox With Chromium
  4. What Would You Like To See Next?
  5. QEMU 1.5 Supports VGA Passthrough, Better USB 3.0
  6. FreeBSD Still Working On Next-Gen Package Manager
  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