42 votes

Comment puis-je installer CUDA 9 sur Ubuntu 17.10

Ubuntu 17.10 est livré avec CUDA 8 qui dépend de clang 3.8 (pour plus d'informations, consultez cet article de blog).

Cependant, j'aimerais installer CUDA 9 et utiliser GCC si possible. Comment puis-je faire cela?

58voto

B0rk4 Points 1583

Installation du pilote NVIDIA 384

Tout d'abord, nous installons un nouveau Ubuntu 17.10 sur un ordinateur avec un GPU NVIDIA et sélectionnons "Installer des logiciels tiers" pendant le processus. Alternativement, nous pouvons ajouter manuellement le dépôt des pilotes graphiques :

sudo add-apt-repository ppa:graphics-drivers/ppa
sudo apt update

Ensuite, nous installons le pilote NVIDIA le plus récent en utilisant apt :

sudo apt install nvidia-384 nvidia-384-dev

Nous vérifions l'installation en exécutant :

nvidia-smi

Nous devrions voir une sortie qui répertorie le pilote NVIDIA 384 et notre GPU NVIDIA discret - similaire au tableau résumé ci-dessous :

+-----------------------------------------------------------------------------+
| NVIDIA-SMI 384.90                 Version du pilote : 384.90                |
|                                                                             |
|-------------------------------+----------------------+----------------------+
|   0  Quadro M500M        Off  | 00000000:06:00.0 Off |                  N/A |
| N/A   48C    P0    N/A /  N/A |    943MiB /  2002MiB |     26%      Default |
+-------------------------------+----------------------+----------------------+

Préparation pour l'installation de CUDA 9 + SDK

Nous installons un certain nombre de packages de développement dont nous aurons besoin plus tard :

sudo apt-get install g++ freeglut3-dev build-essential libx11-dev libxmu-dev libxi-dev libglu1-mesa libglu1-mesa-dev

Nous remarquons que la version par défaut de gcc/g++ sur 17.10 est 7.2.0 (Ubuntu 7.2.0-8ubuntu3) :

gcc -v

CUDA 9 requiert gcc 6. Ainsi, nous l'installons :

sudo apt install gcc-6
sudo apt install g++-6

Remarque : la version par défaut de gcc est toujours 7.2; cela peut être vérifié en exécutant à nouveau gcc -v.

Installation de CUDA 9 + SDK

Depuis le Archive du kit CUDA, sélectionnez l'un des packages d'installation "runfile (local)" pour télécharger une version de CUDA 9, comme

wget https://developer.nvidia.com/compute/cuda/9.0/Prod/local_installers/cuda_9.0.176_384.81_linux-run

Rendez le fichier téléchargé exécutable et exécutez-le en utilisant sudo :

chmod +x cuda_9.0.176_384.81_linux-run 
sudo ./cuda_9.0.176_384.81_linux-run --override

Nous installons CUDA avec les configurations suivantes :

Vous essayez d'installer sur une configuration non prise en charge. Souhaitez-vous continuer?
o
Installer le pilote graphique NVIDIA Accelerated pour Linux-x86_64 384.81?
n
Installer le Toolkit CUDA 9.0?
o
Entrer l'emplacement du Toolkit
[emplacement par défaut]
Voulez-vous installer un lien symbolique à /usr/local/cuda?
o
Installer les Exemples CUDA 9.0?
o
Entrer l'emplacement des Exemples CUDA
[emplacement par défaut]

Configurer des liens symboliques pour gcc/g++ :

sudo ln -s /usr/bin/gcc-6 /usr/local/cuda/bin/gcc
sudo ln -s /usr/bin/g++-6 /usr/local/cuda/bin/g++

Tester l'installation de CUDA 9 en utilisant le SDK

Compilez votre exemple CUDA préféré et exécutez-le :

cd ~/NVIDIA_CUDA-9.0_Samples/5_Simulations/smokeParticles
make
../../bin/x86_64/linux/release/smokeParticles 

Vous voudrez peut-être configurer des liens symboliques pour gcc/g++ après l'installation de cuda.

5voto

Clark Kent Points 151

L'installation de tout cela a pris plus de temps que je ne voudrais l'admettre, et bien que la réponse ci-dessus soit un bon modèle, j'ai dû effectuer certaines étapes supplémentaires pour mon installation fraîche d'Ubuntu 17.10 :

blacklist nouveau

sudo vim /etc/modprobe.d/blacklist.conf

Ajoutez ce qui suit :

# Celui-ci pourrait ne pas être nécessaire pour les utilisateurs x86 32 bits.
blacklist amd76x_edac 

blacklist vga16fb
blacklist nouveau
blacklist rivafb
blacklist nvidiafb
blacklist rivatv

Mettre à jour le disque initramfs

sudo update-initramfs -u

Arrêter gdm3

sudo /etc/init.d/gdm3 stop

sudo init 3

Obtenir le contenu

sudo add-apt-repository ppa:graphics-drivers/ppa
sudo apt update
sudo apt install nvidia-384 nvidia-384-dev
sudo apt-get install g++ freeglut3-dev build-essential libx11-dev libxmu-dev libxi-dev libglu1-mesa libglu1-mesa-dev

nvidia-smi

Obtenir le package

wget https://developer.nvidia.com/compute/cuda/9.0/Prod/local_installers/cuda_9.0.176_384.81_linux-run

Exécuter avec --override pour remplacer le choix du compilateur

chmod +x cuda_9.0.176_384.81_linux-run 
sudo ./cuda_9.0.176_384.81_linux-run --override

Après l'installation du package, j'ai rencontré des erreurs avec nvidia-smi, je recommande donc d'exécuter à nouveau la commande pour vérifier que tout fonctionne. En cas de problèmes, je purgerais nvidia* et le réinstallerai.

nvidia-smi

1voto

Pedro Esmeriz Points 11

J'ai suivi la réponse acceptée (@ubashu) et tout s'est bien passé (même si les instructions n'étaient pas exactement les mêmes, elles ont finalement mené au bon chemin). J'aurais seulement eu besoin d'ajouter l'exportation vers le chemin (comme spécifié également sur https://docs.nvidia.com/cuda/cuda-installation-guide-linux/index.html#post-installation-actions)

export PATH=/usr/local/cuda-9.0/bin${PATH:+:${PATH}} 
export LD_LIBRARY_PATH=/usr/local/cuda-9.0/lib64\ ${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}

Après cela, vous pouvez utiliser nvcc -V pour vérifier si l'installation s'est vraiment bien passée.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X