Ubuntu 17.10 est livré avec CUDA 8 qui repose sur le clang 3.8 (voir par exemple cet article de blog ).
Cependant, j'aimerais installer CUDA 9 et faire confiance à GCC si possible. Comment puis-je le faire?
Ubuntu 17.10 est livré avec CUDA 8 qui repose sur le clang 3.8 (voir par exemple cet article de blog ).
Cependant, j'aimerais installer CUDA 9 et faire confiance à GCC si possible. Comment puis-je le faire?
Installation du pilote NVIDIA 384
D'abord, nous installons un nouveau Ubuntu 17.10 sur un ordinateur avec un GPU NVIDIA et sélectionnez "Installer un logiciel tiers" pendant le processus. Alternativement, nous pouvons ajouter le dépôt de pilotes graphiques manuellement:
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 Driver Version: 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 à l’installation de CUDA 9 + SDK
Nous installons un certain nombre de paquets de compilation / dev dont nous avons 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 ++ le 17.10 est 7.2.0 (Ubuntu 7.2.0-8ubuntu3)
:
gcc -v
CUDA 9 nécessite gcc 6. Ainsi, nous l'installons:
sudo apt install gcc-6
sudo apt install g++-6
Notez que la version par défaut de gcc est toujours 7.2
; peut être vérifié en exécutant gcc -v
à nouveau.
Installation de CUDA 9 + SDK
À partir de l’ archive CUDA Toolkit , sélectionnez l’un des packages d’installation "runfile (local)" pour télécharger un fichier. version de CUDA 9, telle que
wget https://developer.nvidia.com/compute/cuda/9.0/Prod/local_installers/cuda_9.0.176_384.81_linux-run
Rendez le fichier exécutable téléchargé 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:
You are attempting to install on an unsupported configuration. Do you wish to continue?
y
Install NVIDIA Accelerated Graphics Driver for Linux-x86_64 384.81?
n
Install the CUDA 9.0 Toolkit?
y
Enter Toolkit Location
[default location]
Do you want to install a symbolic link at /usr/local/cuda?
y
Install the CUDA 9.0 Samples?
y
Enter CUDA Samples Location
[default location]
Configurer les 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++
Testez l’installation de CUDA 9 à l’aide du SDK
Créez 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 souhaiterez peut-être configurer les liens symboliques gcc / g ++ après l'installation de cuda.
L'installation de cette solution a pris plus de temps que je ne voudrais l'admettre, et bien que la réponse ci-dessus soit un bon modèle, certaines étapes supplémentaires ont été nécessaires pour ma nouvelle installation d'Ubuntu 17.10:
sudo vim /etc/modprobe.d/blacklist.conf
Ajoutez les éléments suivants:
# this one might not be required for x86 32 bit users.
blacklist amd76x_edac
blacklist vga16fb
blacklist nouveau
blacklist rivafb
blacklist nvidiafb
blacklist rivatv
sudo update-initramfs -u
sudo /etc/init.d/gdm3 stop
sudo init 3
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
wget https://developer.nvidia.com/compute/cuda/9.0/Prod/local_installers/cuda_9.0.176_384.81_linux-run
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 paquet, j’aurais des erreurs avec nvidia-smi, alors je suggère de relancer la commande pour vérifier qu’elle fonctionne. Quand j'avais des problèmes, je purgeais nvidia * et je le récupérais.
nvidia-smi