NVIDIA Confirms It's Working On Optimus Linux Support

Posted by Michael Larabel on August 31, 2012

At long last, NVIDIA confirms they are working on supporting their multi-GPU Optimus Technology under Linux with their proprietary graphics driver.

Thanks to the work done by the open-source community -- in large part by David Airlie of Red Hat -- with RandR 1.4 and GPU provider object support along with PRIME buffer sharing, Optimus is becoming a reality on Linux. The DRM PRIME work in turn is built upon DMA-BUF.

Aaron Plattner, one of the lead NVIDIA Linux engineers, publicly wrote "So I've been experimenting with support for Dave Airlie's new RandR 1.4 provider object interface, so that Optimus-based laptops can use our driver to drive the discrete GPU and display on the integrated GPU. The good news is that I've got a proof of concept working."

This work comes down to basically being able to share the buffer contents from one GPU and send it over to the other GPU that's driving the actual display output(s). Thanks to this shared multi-GPU implementation work being built upon the generic DMA-BUF infrastructure and X.Org Resize and Rotate (RandR) extension, multiple drivers can play together so that NVIDIA and Intel drivers can co-exist on the same system. Up to this point it's just been the open-source Nouveau, Radeon, and Intel drivers really playing with this support but it's wonderful to see the proprietary NVIDIA graphics drivers getting into this game. AMD has yet to acknowledge any plans for their Catalyst driver's support.

Concerns expressed by NVIDIA with the current implementation include the output source being responsible for allocating the shared memory, no fallback mechanism if sharing can't be negotiated, and it not being clear how memory should be allocated.

Aaron Plattner shared this NVIDIA Optimus Linux work via the dri-devel list.

This is really great news since up to this point NVIDIA Optimus laptops have been a pain to use properly under Linux. While there is DMA-BUF/PRIME support for the Nouveau driver, using the reverse-engineered open-source NVIDIA driver isn't ideal there since the driver lacks reliable and useful power management support (a.k.a. a very short battery life and potentially a warm lap). Let's hope this support gets stabilized soon.

Word of NVIDIA Optimus Linux support comes after Linus Torvalds openly criticized NVIDIA for lack of this feature that's becoming very common to modern notebooks.

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. 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. DNF Still Advancing As Experimental Yum For Fedora
  2. Logitech Begins Supporting Linux Users
  3. Modern Intel Gallium3D Driver Still Being Toyed With
  4. Linux 3.10 Kernel Benchmarks On A Core i7 Laptop
  5. GCC 4.8.1 Compiler Due To Be Out Next Week
  6. Linux 3.10 Kernel Benchmarks For Intel Ivy Bridge
  7. Linux's "Ondemand" Governor Is No Longer Fit
  8. Firefox 22 Beta Enables WebRTC Support
  9. OpenSUSE 13.1 Milestone 1 Released
  10. DRM Graphics Driver Comes For Dove/Cubox
  11. JADE: An LLVM-Based Video Decoder For MPEG RVC
Latest Forum Talk
  1. Linux's "Ondemand" Governor Is No...
  2. Btrfs vs. EXT4 vs. XFS vs. F2FS On Linux 3.10
  3. X3: Albion Prelude Released For Linux Gamers
  4. DNF Still Advancing As Experimental Yum For Fedora
  5. Modern Intel Gallium3D Driver Still Being Toyed...
  6. Greater Radeon Gallium3D Shader Optimization Tests
  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