Skip to content

Latest commit

 

History

History
210 lines (188 loc) · 7.29 KB

File metadata and controls

210 lines (188 loc) · 7.29 KB

../common/generic-attributes.adoc = Installing {nvidia} GPU drivers on {slem}

Requirements

If you are following this guide, it assumes that you have the following already available:

  • At least one host with {slem} {slmicro-version} installed, physical or virtual.

  • Your hosts are attached to a subscription as this is required for package access.

  • A compatible {nvidia} GPU installed or fully passed through to the virtual machine in which {slem} is running.

  • Access to the {rootuser} user—these instructions assume you are the {rootuser} user, and not escalating your privileges via sudo.

Considerations before the installation

Select the driver generation

You must verify the driver generation for the {nvidia} GPU that your system has. For modern GPUs, the G06 driver is the most common choice. Find more details in the support database.

This section details the installation of the G06 generation of the driver.

Additional {nvidia} components

Besides the {nvidia} open-driver provided by {suse} as part of {slem}, you might also need additional {nvidia} components. These could include OpenGL libraries, {cuda} toolkits, command-line utilities such as nvidia-smi, and container-integration components such as nvidia-container-toolkit. Many of these components are not shipped by {suse} as they are proprietary {nvidia} software. This section describes how to configure additional repositories that give you access to these components and provides examples of using these tools to achieve a fully functional system.

The installation procedure

  1. On each (local) GPU-enabled host, open up a {tr-up-shell} session to create a new read/write snapshot of the underlying operating system so that we can make changes to the immutable platform.

    {prompt_root}{tr-up-shell}
  2. Install the Open Kernel driver KMP and detect the driver version.

    {prompt_tr-up}zypper install -y --auto-agree-with-licenses \
      nvidia-open-driver-G06-signed-cuda-kmp-default
    {prompt_tr-up}version=$(rpm -qa --queryformat '%{VERSION}\n' \
      nvidia-open-driver-G06-signed-cuda-kmp-default \
      | cut -d "_" -f1 | sort -u | tail -n 1)
  3. Install the nvidia-gl-G06 package along with the open driver on the GPU nodes if the application needs {nvidia} Vulkan capabilities.

    {prompt_tr-up}zypper install -y --auto-agree-with-licenses \
    nvidia-gl-G06=${version}
  4. You can then install the appropriate packages for additional utilities that are useful for testing purposes.

    {prompt_tr-up}zypper install -y --auto-agree-with-licenses \
    nvidia-compute-utils-G06=${version} \
    nvidia-persistenced=${version}
  5. Exit the {tr-up} session and reboot to the new snapshot that contains the changes you have made.

    {prompt_tr-up}exit
    {prompt_root}reboot
  6. After the system has rebooted, log back in and run nvidia-smi command as {rootuser} to ensure it correctly detects the GPU and displays the GPU details.

    {prompt_root}nvidia-smi

    The output of this command should show you something similar to the following output. In the example below, the system has one GPU.

    Fri Aug  1 14:53:26 2025
    +------------------------------------------------------------------------------+
    | NVIDIA-SMI 580.82.07     Driver Version: 580.82.07     CUDA Version: 13.0    |
    |---------------------------------+---------------------+----------------------+
    | GPU  Name         Persistence-M | Bus-Id       Disp.A | Volatile Uncorr. ECC |
    | Fan  Temp   Perf  Pwr:Usage/Cap |        Memory-Usage | GPU-Util  Compute M. |
    |                                 |                     |               MIG M. |
    |=================================+=====================+======================|
    |   0  Tesla T4               On  |00000000:00:1E.0 Off |                    0 |
    | N/A   34C    P8     10W /   70W |    0MiB /  15360MiB |      0%      Default |
    |                                 |                     |                  N/A |
    +---------------------------------+---------------------+----------------------+
    
    +------------------------------------------------------------------------------+
    | Processes:                                                                   |
    |  GPU   GI   CI         PID   Type   Process name                  GPU Memory |
    |        ID   ID                                                    Usage      |
    |==============================================================================|
    |  No running processes found                                                  |
    +------------------------------------------------------------------------------+