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

NVIDIA Posts Working "GK20A" Support For Nouveau

NVIDIA

Published on 24 March 2014 12:30 PM EDT
Written by Michael Larabel in NVIDIA
3 Comments

A NVIDIA Linux engineer has published a new set of twelve patches for the open-source Nouveau driver. These kernel patches paired with a modified Mesa driver yield a open-source combination that can start to run shaders and render triangles.

Alexandre Courbot of NVIDIA published these patches for providing initial hardware support for the GK20A graphics core inside of Nouveau, the open-source NVIDIA Linux driver that originally started out via community reverse-engineering. It was only in September of last year that NVIDIA officially decided to start helping out Nouveau in ways they can -- we've seen some patches surface, clarification of some technical items that have troubled Nouveau developers, and some very basic documentation. However, there have yet to be any huge desktop GPU code drops or public documentation dumps like we see from AMD and Intel, but this work on the GK20A is getting close.

The GK20A is the Kepler-based graphics core found within the Tegra K1, NVIDIA's very powerful next-generation ARM SoC that will eventually feature 64-bit ARM cores and a graphics core derived from their mainline Kepler architecture. While there's been separate work in the past on Tegra "GeForce" graphics, with Tegra K1 and beyond they're on the same architecture as the desktop GeForce graphics and can be relying upon the same driver code-base.

NVIDIA Posts Working "GK20A" Support For Nouveau
The Tegra K1 is reportedly about 50 times faster than the Tegra 2, the dual-core ARM Cortex-A9 SoC with GeForce ULP graphics, what's found in the previously reviewed Trim-Slice.

In early February NVIDIA began working on open-source Tegra K1 support for Nouveau. While NVIDIA currently isn't planning desktop Nouveau patches, on the mobile side with the Tegra K1 they are planning to ensure there's working code in place to support the GK20A core. We have seen some patches while the patches coming out today in this second patch-set provide the actual hardware enablement for the GK20A inside the Nouveau DRM driver.

The set of twelve patches have the actual chip support and work to the point where a slightly-modified version of Mesa with the Nouveau Gallium3D drivers can run shaders and render triangles on GBM. There's still a few hacks to work through and the Nouveau Gallium3D changes have not yet been published by NVIDIA, but this overall is a big milestone.

NVIDIA Posts Working "GK20A" Support For Nouveau
The Tegra3-based "Cardhu" reference tablet that's now pale in comparison to the power offered by the NVIDIA Tegra K1 SoC.

From these patches we learn that the GK20A core resembles the "NVE4" graphics processor, what is officially the GK102~GK106 GPUs. This graphics core was the first Kepler family part and is what's found in the GeForce GTX 660 Ti, GTX 680, GTX 760, and other early GeForce 600/700 graphics cards. Much of Nouveau's NVE4 code works for the Tegra K1 GK20A graphics.

These brand new Nouveau patches for bringing up the GK20A can be found on the DRI-devel mailing list. While the Linux 3.14 kernel has yet to be released, it's probably unlikely to see these new patches merged for the Linux 3.15 kernel given the review time, length of the merge window, etc. The user-space Gallium3D patches for the GK20A remain to be seen. There's also open questions like how the performance / battery life would be on this driver, given that Nouveau currently doesn't support dynamic power management / re-clocking and the Nouveau Kepler support isn't in the best shape.

While NVIDIA is working on this open-source Tegra support, their official graphics driver on Linux and Android will be the binary-only NVIDIA graphics driver. Their mainline NVIDIA Linux driver will work with the hardware and since last year they ported their binary GPU driver to ARM.

In terms of the Tegra K1 hardware, there's no official release date yet on the first K1 devices but last week when I was out at GDC 2014 I was trying out a few reference designs and found the Tegra K1 to be wonderful and very efficient, at least under Android with the binary NVIDIA driver. The 32-bit K1 will have a quad-core Cortex-A15 MPCore R3 with low-power companion core while the first 64-bit K1 is expected to be a dual-core "Project Denver" chip. The Kepler-based GK20A GPU has 192 GPU shader cores, a reported 950MHz clock speed, and is reportedly capable of 364 GFLOPS.

About The Author
Michael Larabel is the principal author of Phoronix.com and founded the web-site in 2004 with a focus on enriching the Linux hardware experience and being the largest web-site devoted to Linux hardware reviews, particularly for products relevant to Linux gamers and enthusiasts but also commonly reviewing servers/workstations and embedded Linux devices. Michael has written more than 10,000 articles covering the state of Linux hardware support, Linux performance, graphics hardware drivers, and other topics. Michael is also the lead developer of the Phoronix Test Suite, Phoromatic, and OpenBenchmarking.org automated testing software. He can be followed via and or contacted via .
Latest Linux Hardware Reviews
  1. Intel Pentium G3258 On Linux
  2. SilverStone Precision PS10
  3. ASRock Z97 Extreme6
  4. Nouveau Re-Clocking Is Way Faster, Shows Much Progress For Open-Source NVIDIA
Latest Linux Articles
  1. X.Org Server 1.16 Officially Released With Terrific Features
  2. Ubuntu With Linux 3.16 Smashes OS X 10.9.4 On The MacBook Air
  3. Preview: Benchmarking CentOS 7.0 & Scientific Linux 7.0
  4. Linux 3.16 File-System Tests On A Hard Drive
Latest Linux News
  1. The Linux Kernel Bang-Bang Thermal Governor Is Banging
  2. NVIDIA Releases K1-Powered Shield Tablet & Controller
  3. Xen Project Announces Mirage OS 2.0
  4. Canonical Community Team Changes Announced For Ubuntu
  5. Raspberry Pi B+ ARM Debian Benchmarks
  6. Mozilla Unleashes Firefox 31 Web Browser
  7. GCC 5.0 Is Expected Next Year
  8. PHP5's Successor Might Be PHP7
  9. AMD "Hawaii" Open-Source GPU Acceleration Still Not Working Right
  10. AMDKFD Driver Still Evolving For Open-Source HSA On Linux
Latest Forum Discussions
  1. AMD "Hawaii" Open-Source GPU Acceleration Still Not Working Right
  2. Next-Gen OpenGL To Be Announced Next Month
  3. Ubuntu With Linux 3.16 Smashes OS X 10.9.4 On The MacBook Air
  4. Updated and Optimized Ubuntu Free Graphics Drivers
  5. AMD Publishes Open-Source Linux HSA Kernel Driver
  6. KDE Plasma 5 Officially Released
  7. Vote For GOG To Make Galaxy Open Source
  8. TSC Problem on Gigabyte GA-X79-UP4 (rev 1.1)