Nvidia Does the Unexpected: Open Sources GPU Drivers for Linux
Chipmaker Nvidia is finally taking steps to improve the compatibility of its GPUs with Linux after years of largely ignoring users of the open source OS.
Nvidia has open sourced GPU kernel modules for Linux so coders can write applications for more efficient execution on the company’s GPUs.
“Canonical and SUSE can immediately package the open kernel modules with Ubuntu and SUSE Linux Enterprise Distributions,” Nvidia said in a blog entry.
The release is Nvidia’s latest attempt to appeal to the open source community. The company is also involved in bringing native support for parallel execution of code across CPUs, GPUs and AI accelerators to C++ 23, which will succeed the current C++ 20 standard.
Nvidia has faced a lot of criticism for not making its GPUs friendly for Linux. Earlier this year, hackers from Lapsus$ breached Nvidia’s systems and one of the group’s demands was to open source its GPU drivers for the Linux OS.
Software developers will also be able to integrate the drivers into custom Linux builds with the open source drivers. Nvidia is also welcoming contributions from the Linux community to improve the drivers, which the company will review. Nvidia’s goal is to ultimately push the drivers upstream.
The GPU kernel modules are being open sourced with a dual GPL/MIT license. The R515 version drivers are an alpha release, and will support some recent Nvidia GPUs that include consumer hardware based on the Turing architecture released in 2018, and Ampere architecture for consumer and professional GPUs released in 2020. But the drivers don’t apply to its latest GPUs based on the Hopper architecture, which have specialized modifications that include lower-level floating-point execution for smaller data sets.
Nvidia GPUs, originally famous among gamers, paved the way for AI adoption in the enterprise. The driver package is targeted at enterprises looking to deploy neural networks, but also at engineers and scientific computing that require visualization of information.
The driver pack also has support for gaming features based on OpenGL and Vulkan, which are standards on which most games are written for the Linux OS. Nvidia’s GPUs still work best with games on Windows, but the driver set will allow Nvidia GPUs to work better with Linux games. The driver set supports multiple displays and ray tracing specifications from Vulkan.
Open sourcing the drivers could be a way to boost the adoption of CUDA, which is Nvidia’s parallel programming framework. Nvidia’s rivals, AMD and Intel, for many years have released open source GPUs drivers to the open source community in gaming and parallel programming framework. But Nvidia dominates the supercomputing and AI hardware space, while Intel’s OneAPI and AMD’s ROCm parallel programming frameworks haven’t found wide adoption.
Nvidia also gave some hints that future editions of open source drivers would include hooks for features such as on-chip features to secure data on its latest Hopper GPUs.
Nvidia last month hired open source advocate Guy Martin to be director of open source and standards, and to lead the company’s open source efforts. He previously was the executive director at OASIS, an organization that lobbies for the use of open source in public and private domains.