Cuda install

De The Linux Craftsman
Aller à la navigation Aller à la recherche

Le dépôt Nvidia

Avant d'installer les pilotes, il faut installer les il faut ajouter le dépôt Nvidia:

# dnf config-manager --add-repo https://developer.download.nvidia.com/compute/cuda/repos/rhel8/x86_64/cuda-rhel8.repo

Il faut également installer les sources du noyau, le dépôt EPEL ainsi que le compilateur C:

# dnf -y install kernel-devel kernel-headers epel-release gcc gdb

Installation du pilote

Vous pouvez maintenant lister les différentes versions avec dnf:

# dnf module list nvidia-driver
Dernière vérification de l’expiration des métadonnées effectuée il y a 0:49:08 le jeu. 20 mai 2021 04:09:26 CEST.
cuda-rhel8-x86_64
Name               Stream                 Profiles                     Summary
nvidia-driver      latest                 default [d], fm, ks, src     Nvidia driver for latest branch
nvidia-driver      latest-dkms [d][e]     default [d] [i], fm, ks      Nvidia driver for latest-dkms branch
nvidia-driver      418                    default [d], fm, ks, src     Nvidia driver for 418 branch
nvidia-driver      418-dkms               default [d], fm, ks          Nvidia driver for 418-dkms branch
nvidia-driver      440                    default [d], fm, ks, src     Nvidia driver for 440 branch
nvidia-driver      440-dkms               default [d], fm, ks          Nvidia driver for 440-dkms branch
nvidia-driver      450                    default [d], fm, ks, src     Nvidia driver for 450 branch
nvidia-driver      450-dkms               default [d], fm, ks          Nvidia driver for 450-dkms branch
nvidia-driver      455                    default [d], fm, ks, src     Nvidia driver for 455 branch
nvidia-driver      455-dkms               default [d], fm, ks          Nvidia driver for 455-dkms branch
nvidia-driver      460                    default [d], fm, ks, src     Nvidia driver for 460 branch
nvidia-driver      460-dkms               default [d], fm, ks          Nvidia driver for 460-dkms branch
nvidia-driver      465                    default [d], fm, ks, src     Nvidia driver for 465 branch
nvidia-driver      465-dkms               default [d], fm, ks          Nvidia driver for 465-dkms branch

Aide : [d]éfaut, [e]activé, [x]désactivé, [i]nstallé

On peut installer la dernière version grâce à la commande suivante :

# dnf module install -y nvidia-driver:latest-dkms

Il faut maintenant redémarrer le système pour que le noyau charge le pilote Nvidia:

# reboot

Vérification

Après un redémarrage vous pouvez voir que la carte est reconnue en listant les périphériques:

# ll /dev/nvidia*
crw-rw-rw-. 1 root root 195,   0 20 mai   04:31 /dev/nvidia0
crw-rw-rw-. 1 root root 195, 255 20 mai   04:31 /dev/nvidiactl
crw-rw-rw-. 1 root root 195, 254 20 mai   04:31 /dev/nvidia-modeset
crw-rw-rw-. 1 root root 238,   0 20 mai   04:32 /dev/nvidia-uvm
crw-rw-rw-. 1 root root 238,   1 20 mai   04:32 /dev/nvidia-uvm-tools

/dev/nvidia-caps:
total 0
cr--------. 1 root root 242, 1 20 mai   04:31 nvidia-cap1
cr--r--r--. 1 root root 242, 2 20 mai   04:31 nvidia-cap2

Toutes les cartes seront listées avec un numéro nvidia0, nvidia1, etc...

On peut utiliser la commande nvidia-smi pour lister toutes les informations sur la carte:

# nvidia-smi -a

==============NVSMI LOG==============

Timestamp                                 : Thu May 20 05:04:16 2021
Driver Version                            : 465.19.01
CUDA Version                              : 11.3

Attached GPUs                             : 1
GPU 00000000:01:00.0
    Product Name                          : NVIDIA GeForce GT 640
    Product Brand                         : GeForce
    Display Mode                          : N/A
    Display Active                        : N/A
    Persistence Mode                      : Disabled
    MIG Mode
...

Ou un résumé:

# nvidia-smi
Thu May 20 05:09:08 2021
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 465.19.01    Driver Version: 465.19.01    CUDA Version: 11.3     |
|-------------------------------+----------------------+----------------------+
| 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  NVIDIA GeForce ...  Off  | 00000000:01:00.0 N/A |                  N/A |
| 40%   31C    P0    N/A /  N/A |      0MiB /  1999MiB |     N/A      Default |
|                               |                      |                  N/A |
+-------------------------------+----------------------+----------------------+

+-----------------------------------------------------------------------------+
| Processes:                                                                  |
|  GPU   GI   CI        PID   Type   Process name                  GPU Memory |
|        ID   ID                                                   Usage      |
|=============================================================================|
|  No running processes found                                                 |
+-----------------------------------------------------------------------------+

Comme on peut le voir ici, le serveur est équipé d'une carte GT 640:

Msi gt640.jpg

Installation de CUDA

Choix de la version

Avant d'installer CUDA, il faut savoir quelle version est supportée par votre carte graphique. Malheureusement, Il n'y a pas de lien direct entre la version de CUDA et le modèle de carte graphique mais il faut regarder les capacités de calcul (Compute Capability) sur le site de Nvidia

Gt640 compute capability.png