Open-Source 3D/Compute Finally Materializing For NVIDIA Volta / Turing GPUs
Written by Michael Larabel in Nouveau on 9 June 2020 at 09:36 AM EDT. 9 Comments
The open-source Nouveau kernel driver has supported Volta GPUs for some time and since Linux 5.6 also supported open-source initialization of Turing GPUs for hardware acceleration. But missing for Volta and Turing has been the Mesa-side support for enabling 3D (OpenGL) and compute (OpenCL) functionality on these newer GPUs. That is finally changing with pending Mesa patches.

Nouveau's Ben Skeggs of Red Hat opened a merge request on Monday for adding the Volta and Turing support to the Nouveau NVC0 Gallium3D driver. Up to now the Mesa support hasn't went beyond Pascal while with these likely soon-to-be-merged patches, Volta and Turing can begin seeing OpenGL and OpenCL support when running on a recent Linux kernel -- and paired with NVIDIA's signed binary-only microcode images needed for hardware acceleration.

But besides the microcode mess, there still is the number one limitation for Nouveau that's been present since the GTX 900 "Maxwell" series and remains with Volta/Turing: no re-clocking support for being able to work past the initial and very low boot clock frequencies. Until that issue is resolved -- which is largely blocked by needing PMU firmware access for proper thermal management before ramping up the clock frequencies to the rated speeds -- the Nouveau driver is incredibly slow. That basically makes Nouveau still unusable for recent generations of NVIDIA graphics cards on this open-source Linux driver. The lack of a Nouveau Vulkan driver also makes it impractical for the Linux gamers.

This Volta and Turing support within Mesa required changes to the NVC0 Gallium3D code and its NIR intermediate representation handling. This merge request is where the support is currently being staged before being merged to mainline more than likely in time for Mesa 20.2. Meanwhile we still hold out some hope for NVIDIA's 2020 open-source play but for now this Volta/Turing support like Pascal and Maxwell is largely for those that don't mind an open-source driver needing signed binary microcode and most pressing for usability is the low performance due to being bound to severely crippled clock frequencies.
Related News
About The Author
Author picture

Michael Larabel is the principal author of and founded the site in 2004 with a focus on enriching the Linux hardware experience. Michael has written more than 20,000 articles covering the state of Linux hardware support, Linux performance, graphics drivers, and other topics. Michael is also the lead developer of the Phoronix Test Suite, Phoromatic, and automated benchmarking software. He can be followed via Twitter or contacted via

Popular News This Week