Just About 20 Lines Of Code Got Open-Source 3D Running On NVIDIA Pascal For Mesa
Just a few hours ago I was writing about NVIDIA making public the GP100 "Pascal" GPU firmware binaries needed for as a requirement for bringing up GeForce GTX 1000 series hardware acceleration on the open-source driver stack. Now the initial support has landed in Nouveau's NVC0 Gallium3D driver within Mesa for allowing 3D support.
Ben Skeggs of Red Hat landed an initial support patch that has 16 lines of new code and five lines of deletions that bring this initial GP100 series GPU support. The support mostly comes down to just adding the "0x130" case and various other relatively simple changes to allow this code to work. The bring-up for Pascal in the Nouveau stack is much more complicated within the Nouveau DRM kernel driver than what was needed for the Gallium3D user-space code. The GP100 Pascal Nouveau kernel changes so far were outlined in Initial Open-Source GeForce GTX 1000 "Pascal" Nouveau Driver Support -- that work is starting to land in Linux 4.8.
Skeggs' Git commit doesn't indicate what all is expected with regard to the initial GP100 support. At least one limitation is the code indicating the GL compute support doesn't yet work for the GP100 series from the existing Mesa code.
The commit can be seen here and will be found in Mesa 12.1. This next Mesa release isn't due until September and by then there should be much better GP100 "Pascal" series support, but don't get too excited as there still is work to land within kernel space (Linux 4.8+) and even then is the problem of the lack of re-clocking support for adequate performance.
Ben Skeggs of Red Hat landed an initial support patch that has 16 lines of new code and five lines of deletions that bring this initial GP100 series GPU support. The support mostly comes down to just adding the "0x130" case and various other relatively simple changes to allow this code to work. The bring-up for Pascal in the Nouveau stack is much more complicated within the Nouveau DRM kernel driver than what was needed for the Gallium3D user-space code. The GP100 Pascal Nouveau kernel changes so far were outlined in Initial Open-Source GeForce GTX 1000 "Pascal" Nouveau Driver Support -- that work is starting to land in Linux 4.8.
Skeggs' Git commit doesn't indicate what all is expected with regard to the initial GP100 support. At least one limitation is the code indicating the GL compute support doesn't yet work for the GP100 series from the existing Mesa code.
The commit can be seen here and will be found in Mesa 12.1. This next Mesa release isn't due until September and by then there should be much better GP100 "Pascal" series support, but don't get too excited as there still is work to land within kernel space (Linux 4.8+) and even then is the problem of the lack of re-clocking support for adequate performance.
6 Comments