Nvidia has released Linux kernel modules as open-source

Nvidia GeForce RTX 3080 Founders Edition

In quite possibly one of the biggest surprise press releases of the year, Nvidia will now be releasing source code for its Linux kernel modules under an MIT/GPL dual-license going forward. Historically, Nvidia has released these as closed-source binaries with a minimal open-source 'shim' kernel interface, to stay at arms length from GPL'd Linux kernel.

User-mode drivers such as CUDA, OpenGL, and Vulkan will still remained closed-source. But having an open kernel interface should go a long way towards better Linux integration, stability, and debugging.

Currently, only newer Turing and Ampere (rtx 20/30xx) GPUs are supported. The reason likely being the GSP chip which is only available on modern cards. This is a RISC-V chip that Nvidia has offloaded much of its driver to as firmware, allowing for a more discrete separation between kernel modules and user-land stuff.

Much of the reason for this open-sourcing is due to demand from data centres. Renting GPU time from a data centre is becoming big business, and these machines mostly all run Linux with Nvidia hardware. Better GPU integration only solidifies Nvidia's current dominance in the space.

Nvidia goes on to say that they recognize the 'upstream approach' as something to target, apparently already collaborating with Canonical (Ubuntu), SUSE, and Red Hat. Right now though, there hasn't been much progress made here, even mentioning in the GitHub repo, "The GitHub repository will function mostly as a snapshot of each driver release."

I'm sure this has been a long time in the making for Nvidia and this is certainly an exciting update. I'll be looking forward to how this effects the desktop and gaming in the near-future.


Tags: