How NVIDIA's open-source GPU drivers will benefit the Linux community
NVIDIA, the world's premier Graphics Processing Unit (GPU) company, has made a significant policy change by deciding to open-source its GPU driver code. This move marks a departure from NVIDIA's long-standing practice of keeping its drivers proprietary. The decision is expected to alleviate the frustrations of Linux users and developers, who have previously criticized NVIDIA for its closed-off approach. Linus Torvalds, the creator of Linux, once famously referred to NVIDIA as "the single worst company we've ever dealt with."
Journey toward open-source modules
The transition toward open-source GPU kernel modules began in May 2022 with NVIDIA's release of the R515 driver. This driver included a set of Linux GPU kernel modules as open source under dual GPL and MIT licensing. Initially, these modules were targeted at data center compute GPUs, while GeForce and Workstation GPUs were in an alpha state. Over the past two years, NVIDIA has been actively working to enhance these open-source modules.
Performance and capabilities
NVIDIA claims that its open-source modules now deliver equivalent or superior application performance, compared to their closed-source counterparts. The company has also introduced new capabilities such as heterogeneous memory management (HMM) support, confidential computing, and support for the coherent memory architectures of NVIDIA's Grace platforms. These enhancements are expected to significantly improve the functionality and efficiency of the firm's GPU drivers.
Upcoming R560 driver to complete NVIDIA's open-source transition
The forthcoming R560 driver release will finalize NVIDIA's shift to open-source GPU kernel modules. This change is tipped to benefit the Linux community by facilitating better integration with the OS, and allowing more robust community development and support. However, it should be noted that not all NVIDIA GPUs will be part of this transition due to compatibility issues with the open-source modules.
Not all GPUs included
The open-source modules are a must for advanced platforms such as NVIDIA Grace Hopper and NVIDIA Blackwell. For GPUs from the Ampere, Ada Lovelace, Turing, or Hopper architectures, NVIDIA recommends switching to open-source modules. However, older GPUs from the Pascal, Volta, or Maxwell architectures will continue using the proprietary driver due to incompatibility with the open-source modules. To assist users in determining their GPU type, NVIDIA provides a shell script called NVIDIA Driver Assistant.