Nvidia Turing graphics will begin to use open Kernel modules  

NVIDIA drivers on Linux

Few days ago NVIDIA unveiled the news that in the next release of its drivers “NVIDIA 560” owners, open Linux kernel modules will be used by default on systems with GPUs based on the Turing microarchitecture (GeForce GTX 1600 and RTX 2000) and newer versions.

With this change, starting with this version open and proprietary modules could not be used simultaneously or coexist on the same file system. That is, now open modules can only be used with GPUs that have a separate GSP (GPU System Processor) microcontroller, such as the Turing, Ampere and Ada microarchitectures. For older GPUs without GSP, such as those based on Maxwell, Pascal, and Volta microarchitectures, proprietary modules were still used.

The first post was updated to note that starting with version 560, the open version of kernel modules will be installed by default using the .run file package when the appropriate GPUs are present at installation time.

It is also mentioned that Starting with the release of the “NVIDIA 560” drivers, this situation will change: For GPUs based on Turing and later, and for GPU virtualization starting with Ada, open kernel modules nvidia.ko, nvidia-modeset.ko, nvidia-uvm.ko, nvidia-drm.ko and nvidia-peermem.ko They will be installed by default, whenever their use is possible.

You have to remember that The code of these NVIDIA modules was opened in 2022 under the MIT and GPLv2 licenses and is updated synchronously with each new version of the proprietary drivers. Until now, although open modules were available, NVIDIA's proprietary drivers still used proprietary versions of the modules, which were developed separately although they shared a common code base.

NVIDIA made this move with the aim of significantly improving the usability of NVIDIA GPUs on Linux systems, and I also wanted to strengthen integration with the operating system and simplify driver delivery and debugging.

Additionally, NVIDIA wanted the availability of open modules It will also facilitate the integration of NVIDIA drivers with systems based on custom Linux kernel builds.. For NVIDIA, open source is a conduit that will help improve the quality and security of Linux drivers through closer interaction with the community and the ability to independently review and audit changes.

Esto It is achieved thanks to the collaboration of community members, which have the opportunity to submit pull requests to contribute their fixes and changes to the module code. Although these changes will not be reflected immediately as separate modifications in the public repository, they will first be integrated into the main private repository and after testing and approval they are transferred along with other changes to the public repository. To participate in development, it is necessary to sign an agreement for the transfer of ownership rights for the code submitted to NVIDIA (Contributor License Agreement).

The kernel module code is divided into two parts: general components that are not tied to the operating system and a layer for interaction with the Linux kernel. To reduce installation time, Common components are supplied in proprietary controllerss from NVIDIA in the form of a precompiled binary file, while the kernel-specific layer is compiled on each system based on the current kernel version and existing configuration. Available kernel modules include: nvidia.ko, nvidia-drm.ko (Direct Rendering Manager), nvidia-modeset.ko and nvidia-uvm.ko (Unified Video Memory). These modules only support GPUs based on the Turing and Ampere microarchitectures, released since September 2018.

Finally, if you are interested in being able to install the proprietary kernel modules, it will be necessary to specify the option «–kernel-module-type=proprietary» when running the NVIDIA drivers installer. In the future, NVIDIA plans to stop supporting new GPUs in proprietary modules and focus exclusively on the development of open modules.

If you are interested in knowing more about it, you can consult the details in the following link


Leave a Comment

Your email address will not be published. Required fields are marked with *

*

*

  1. Responsible for the data: Miguel Ángel Gatón
  2. Purpose of the data: Control SPAM, comment management.
  3. Legitimation: Your consent
  4. Communication of the data: The data will not be communicated to third parties except by legal obligation.
  5. Data storage: Database hosted by Occentus Networks (EU)
  6. Rights: At any time you can limit, recover and delete your information.