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. Preview: AMD's FX-9590 Eight-Core At Up To 5.0GHz On Linux
  2. Intel Launches The Core i7 5960X, Mighty Powerful Haswell-E CPUs
  3. AMD Radeon R9 290: Gallium3D vs. Catalyst Drivers
  4. AMD Radeon R9 290 Open-Source Driver Works, But Has A Ways To Go
Latest Linux Articles
  1. Ondemand vs. Performance CPU Governing For AMD FX CPUs On Linux 3.17
  2. How Intel Graphics On Linux Compare To Open-Source AMD/NVIDIA Drivers
  3. The Fastest NVIDIA GPUs For Open-Source Nouveau With Steam Linux Gaming
  4. Testing For The Latest Linux Kernel Power Regression
Latest Linux News
  1. Marek Lands Radeon Gallium3D HyperZ Improvements
  2. Mozilla Firefox 32 Surfaces With HTML5, Developer Changes
  3. Nouveau X.Org Driver Released With DRI3+Present, Maxwell, GLAMOR
  4. Microsoft & AMD Release C++ AMP Compiler With Linux Support
  5. AMD, Wine & Valve Dominated August For Linux Users
  6. Linux 3.17-rc3 Kernel Released Back On Schedule
  7. Lennart Poettering Talks Up His New Linux Vision That Involves Btrfs
  8. Mesa 10.3 RC2 Arrives Via Its New Release Manager
  9. Ubuntu 14.10's Lack Of X.Org Server 1.16 Gets Blamed On AMD
  10. MSI Motherboard BIOS Updating Remains A Pain For Linux Users
Latest Forum Discussions
  1. Lennart Poettering Talks Up His New Linux Vision That Involves Btrfs
  2. Best Radeon for a Power Mac G5?
  3. The dangers of Linux kernel development
  4. Updated and Optimized Ubuntu Free Graphics Drivers
  5. AMD Releases UVD Video Decode Support For R600 GPUs
  6. SSD seems slow
  7. Is laptop with Intel CPU and AMD dGPU worth buying considering especially AMD Enduro?
  8. Radeon HD5670 and Ubuntu 14.04