Nvidia launches open source GPU kernel modules for Linux
Nvidia is publishing its Linux GPU kernel modules on an open source basis with a dual GPL/MIT license now available on GitHub.
It’s a good day for users of Linux distros as the hardware giant says the move will allow tighter integration with the OS and for developers to debug, integrate, and contribute back to their communities.
The move follows a period of colorful history between Linux and Nvidia, as Linus Torvalds, the chief architect of the Linux kernel, once dubbed Nvidia “the single worst company we’ve ever dealt with” in a 2012 speech.
What does this mean for users?
Nvidia claims the move will allow developers to trace into code paths and see how kernel event scheduling is interacting with their workload, enabling faster root cause debugging.
In addition, Nvidia say enterprise software developers will now be able to integrate the driver into the customized Linux kernel configured for their project.
This will help improve Nvidia GPU driver quality and security via input and reviews from the Linux end-user community according to the company.
Support however is not set to be shared equally across all Nvidia’s hardware.
The code for its data center GPUs in the NVIDIA Turing and NVIDIA Ampere architecture families is production ready, while support for GeForce and Workstation GPUs is merely alpha quality, making this latest announcement less relevant for laptop and consumer users.
Nvidia promises that it is set to introduce more GeForce and Workstation support in future releases and the NVIDIA Open Kernel Modules will eventually supplant the closed-source driver.
The open-source kernel-mode driver works with the same firmware and the same user-mode stacks as some of its other offerings according to Nvidia, including CUDA, OpenGL, and Vulkan.
However, all components of the driver stack must match versions within a release.
If you’re interested in trying out the new kernel modules, head to the driver README document for instructions on installing the right versions and for additional troubleshooting steps.
Go to Source