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 Begins To Work Towards Unreleased GK110

NVIDIA

Published on 07 September 2012 06:39 PM EDT
Written by Michael Larabel in NVIDIA
3 Comments

While the hardware hasn't even been released yet by NVIDIA, support for the very interesting and powerful GK110, a.k.a. "Kepler 2", is already starting to materialize within the open-source reverse-engineered Nouveau driver.

The GK110 graphics processor is coming later in the year and is massive: it's home to approximately 7.1 billion transistors, or nearly double that of the current-generation Kepler GPUs in the GeForce 600 series. This next-gen Kepler is going to really ramp up the double floating-point performance (as much as 2~3x faster) plus other optimizations for much greater GPGPU/Compute abilities. The initial graphics card to sport a GK110 will be the NVIDIA Tesla K20 GPU-compute accelerator and then later on should work from the workstation/cluster market into consumer-grade market.

The GK110 is a radically different GPU design compared to current-generation Kepler GPUs. By now you have likely read all about the GK110 for months if you're interested in low-level graphics processor details. NVIDIA has publicly released a 24-page white-paper on the GK110 architecture, which is viewable as a PDF.
"Comprising 7.1 billion transistors, Kepler GK110 is not only the fastest, but also the most architecturally complex microprocessor ever built. Adding many new innovative features focused on compute performance, GK110 was designed to be a parallel processing powerhouse for Tesla® and the HPC market. Kepler GK110 will provide over 1 TFlop of double precision throughput with greater than 80% DGEMM efficiency versus 60‐65% on the prior Fermi architecture. In addition to greatly improved performance, the Kepler architecture offers a huge leap forward in power efficiency, delivering up to 3x the performance per watt of Fermi."
What's interesting though is that Nouveau GK110 work has already begun in a very early form... NVIDIA officially doesn't back the Nouveau project at all, they aren't an open-source-friendly company, Nouveau has no official corporate backer besides Ben Skeggs being employed by Red Hat and some sponsorship by PathScale, and the expensive GK110 hardware isn't even publicly available yet.

The first Nouveau GK110 commit I spotted happened earlier today hit mainline Mesa Git. The commit, which introduced nearly 1,700 lines of new code, was authored by Christoph Bumiller. Bumiller is a student out of Vienna that has long committed to the Nouveau driver. This Git commit is entitled "nvc0/ir: add initial code to support GK110 ISA encoding."

From the NVC0 Gallium3D driver, this code provides the basics of a code emitter for the GK110 encoding of the Fermi/Kepler instruction set architecture. Much work is left before the GK110 ISA code emitter is fully ready for the Gallium3D driver, but it's a measurable start with 1,691 lines of fresh code.

I have yet to see any GK110-related code hit the xf86-video-nouveau DDX or the Nouveau DRM tree for the Linux kernel driver to provide kernel mode-setting, etc. Still though it's noteworthy that GK110 in the Nouveau world is already being thought about when initially this hardware is just targeting the HPC market where Nouveau really doesn't have much of a presence with its OpenGL and OpenCL/CUDA support not being up to scratch. There's basic OpenCL support now in the Gallium3D world plus a basic open-source CUDA run-time, but it's far from parity for now with the officially supported NVIDIA Linux binary blob. Nouveau doesn't even have proper power management support yet.

It's interesting that the GK110 Nouveau support has begun, albeit in a very early and yet-to-be-usable form with the DRM driver changes not even having been made yet to provide mode-setting support, but noteworthy nevertheless. It's also unknown right now what the motives are for Christoph Bumiller to be working on support for the unreleased NVIDIA graphics processor.

With the current-generation GeForce 600 "Kepler" series, there was also an interesting incident where this community-based reverse-engineering driver managed initial same-day support for the GeForce GTX 680. At least two Nouveau developers managed to get their hands early on GeForce GTX 680 graphics cards and were able to begin working on the support, albeit going from Fermi to Kepler the initial driver changes weren't too extensive. The same-day Kepler support worked, but required first running the NVIDIA binary driver in order to extract some important firmware (the "FUC" microcode) so the graphics card can later initialize with the Nouveau driver.

Within the mainline Linux kernel this Kepler acceleration support is still limited until the DRM driver can generate its own support. In addition, there isn't yet any re-clocking or power management support for Nouveau Kepler, so the performance is quite slow with the boot speeds tending to be very low. At least these limitations have since been addressed with Nouveau's support for the previous-generation NVIDIA Fermi GPUs, but there they're still working on better re-clocking support and other improvements.

Anyhow, in terms of the Linux support for the GK110-based graphics cards on launch day, there will be official support for sure within the binary NVIDIA Linux graphics driver.

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 Launches The Core i7 5960X, Mighty Powerful Haswell-E CPUs
  2. AMD Radeon R9 290: Gallium3D vs. Catalyst Drivers
  3. AMD Radeon R9 290 Open-Source Driver Works, But Has A Ways To Go
  4. Trying The Configurable 45 Watt TDP With AMD's A10-7800 / A6-7400K
Latest Linux Articles
  1. The Fastest NVIDIA GPUs For Open-Source Nouveau With Steam Linux Gaming
  2. Testing For The Latest Linux Kernel Power Regression
  3. The Most Energy Efficient Radeon GPU For AMD Linux Gaming
  4. 20-Way Radeon Comparison With Open-Source Graphics For Steam On Linux Gaming
Latest Linux News
  1. A New AMD Catalyst Linux Driver Unofficially Surfaces
  2. LibreOffice Ported To 64-bit ARM (AArch64)
  3. Enlightenment E19 RC3 Shows Off The New Wayland Compositor
  4. Metro Redux Is Going To Require OpenGL 4.x On Linux
  5. Jailhouse v0.1 Released As A Basic Hypervisor For Linux
  6. Google's Chromebook "Samus" Now Supported By Coreboot
  7. Chrome 38 Now In Beta With Exciting Advancements
  8. Ubuntu's Utopic Unicorn 14.10 Beta 1 Released
  9. Genode OS 14.08 Has New GUI Architecture, Pluggable VFS
  10. Another Intel Linux Power Regression Is Being Investigated
Latest Forum Discussions
  1. Catalyst 14.201.1008
  2. Btrfs Gets Talked Up, Googler Encourages You To Try Btrfs
  3. It's Now Possible To Play Netflix Natively On Linux Without Wine Plug-Ins
  4. Users defect to Linux as OpenBSD removes Lynx from base system
  5. Updated and Optimized Ubuntu Free Graphics Drivers
  6. Canonical Joined The Khronos Group To Help Mir/Wayland Drivers
  7. Radeon HD5670 and Ubuntu 14.04
  8. AMD Releases UVD Video Decode Support For R600 GPUs