101 votes

Comment puis-je installer CUDA sur Ubuntu 16.04 ?

Pour TensorFlow, je voudrais installer CUDA. Comment puis-je le faire sur Ubuntu 16.04 ?

99voto

Stephen MacDougall Points 125

Installer CUDA pour Ubuntu

Il existe un Guide d'installation de Linux . Cependant, il ne s'agit essentiellement que de ces étapes :

  1. Télécharger CUDA : J'ai utilisé la version 15.04 et "runfile (local)". Cela représente 1,1 Go.

  2. Vérifiez la somme md5 : md5sum cuda_7.5.18_linux.run . Ne continuez que si c'est correct.

  3. Retirez toute autre installation ( sudo apt-get purge nvidia-cuda* - si vous voulez installer les pilotes aussi, alors sudo apt-get purge nvidia-* .)

    • Si vous voulez installer les pilotes d'écran (*) , déconnectez-vous de votre interface graphique. Passez à une session de terminal ( ctrl + alt + F2 )
    • Arrêtez la lumière : sudo service lightdm stop
  4. Créez un fichier à /etc/modprobe.d/blacklist-nouveau.conf avec le contenu suivant :

    blacklist nouveau
    options nouveau modeset=0
  5. Alors, faites-le : sudo update-initramfs -u

  6. sudo sh cuda_7.5.18_linux.run --override . Assurez-vous que vous dites y pour le lien symbolique.

  7. Redémarrez Lightdm : sudo service lightdm start

  8. Suivez les invites de la ligne de commande

Voir aussi : NVIDIA CUDA avec Ubuntu 16.04 beta sur un ordinateur portable (si vous ne pouvez pas attendre)

Notas : Oui, il y a la possibilité de l'installer par l'intermédiaire de apt-get install cuda . Je suggère fortement de ne pas l'utiliser, car il modifie les chemins et rend l'installation d'autres outils plus difficile.

Vous pourriez également être intéressé par Comment installer CuDNN sur Ubuntu 16.04 ? .

* : N'installez pas les pilotes d'affichage avec ce script. Ils sont vieux. Téléchargez les plus récents à partir de http://www.nvidia.com/Download/index.aspx

Vérifier l'installation de CUDA

La commande suivante indique la version actuelle de CUDA (dernière ligne) :

$ nvcc --version
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2016 NVIDIA Corporation
Built on Sun_Sep__4_22:14:01_CDT_2016
Cuda compilation tools, release 8.0, V8.0.44

La commande suivante indique la version de votre pilote et la quantité de mémoire GPU dont vous disposez :

$ nvidia-smi
Fri Jan 20 12:19:04 2017       
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 367.57                 Driver Version: 367.57                    |
|-------------------------------+----------------------+----------------------+
| GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
|===============================+======================+======================|
|   0  GeForce 940MX       Off  | 0000:02:00.0     Off |                  N/A |
| N/A   75C    P0    N/A /  N/A |   1981MiB /  2002MiB |     98%      Default |
+-------------------------------+----------------------+----------------------+

+-----------------------------------------------------------------------------+
| Processes:                                                       GPU Memory |
|  GPU       PID  Type  Process name                               Usage      |
|=============================================================================|
|    0      1156    G   /usr/lib/xorg/Xorg                             246MiB |
|    0      3198    G   ...m,SecurityWarningIconUpdate<SecurityWarni   222MiB |
|    0      6645    C   python                                        1510MiB |
+-----------------------------------------------------------------------------+

Voir aussi : Vérifier l'installation de CuDNN

Aidez-nous ! Le nouveau pilote ne fonctionne pas !

Ne paniquez pas. Même si vous ne voyez rien sur votre ordinateur, les étapes suivantes devraient vous permettre de retrouver l'état antérieur :

  1. Appuyez sur shift pendant le démarrage
  2. Allez dans un Shell racine.
  3. Rendez-le accessible en écriture en exécutant mount -o remount,rw / ( - es ? y / es - dans la disposition américaine)
  4. sh cuda_7.5.18_linux.run --uninstall
  5. sudo apt-get install nvidia-361 nvidia-common nvidia-prime nvidia-settings

Pilotes graphiques

L'installation des pilotes graphiques est un peu délicate. Elle doit être effectuée sans support graphique.

  1. Déconnectez-vous de votre session X actuelle.
  2. Ctrl + Alt + F4 (vous pouvez revenir en arrière avec Ctrl + Alt + F7 )
  3. Vous devez supprimer tous les autres pilotes avant.
  • Recherchez-les via dpkg -l | grep -i nvidia
  • Les supprimer via sudo apt-get remove --purge nvidia-WHATEVER
  1. Stop lightdm via sudo service lightdm stop
  2. Vous pourriez avoir besoin de reboot votre pc / liste noire du nouveau pilote ( Cours d'allemand )

22voto

akshita007 Points 321

J'ai essayé d'installer à plusieurs reprises via le fichier .run, mais une erreur s'est toujours glissée et j'ai soit rencontré une boucle de connexion, soit perdu complètement l'affichage. Je recommande donc d'utiliser le fichier .deb et de ne pas jouer avec le gestionnaire d'affichage.

Guide d'installation de NVIDIA CUDA pour Linux est un excellent lien qui énumère les détails complets. Assurez-vous de suivre chaque étape comme il est donné.

Pour installer le pilote Nvidia, vous pouvez procéder comme suit :

  1. Dans Ubuntu Recherche dans votre ordinateur menu dans le coin supérieur gauche recherche Pilotes supplémentaires (Vous pouvez aussi faire Paramètres système > Logiciels et mises à jour > Pilotes supplémentaires )

  2. Dans le menu qui apparaît, sélectionnez l'un des pilotes Nvidia et cliquez sur Appliquer les changements . (Cette étape utilise l'Internet. Si cela ne fonctionne toujours pas, votre serveur proxy peut bloquer le téléchargement.)

  3. Redémarrez votre système.

  4. Ouvrez une fenêtre de terminal et tapez nvidia-smi . Si votre pilote a été installé correctement, vous devriez voir quelque chose comme :

    +------------------------------------------------------+
    | NVIDIA-SMI 3.295.41 Driver Version: 295.41 |
    |-------------------------------+----------------------+----------------------+ | Nb. Name | Bus Id Disp. | Volatile ECC SB / DB | | Fan Temp Power Usage /Cap | Memory Usage | GPU Util. Compute M. | |===============================+======================+======================| | 0. Tesla C2050 | 0000:05:00.0 On | 0 0 | | 30% 62 C P0 N/A / N/A | 3% 70MB / 2687MB | 44% Default | |-------------------------------+----------------------+----------------------| | Compute processes: GPU Memory | | GPU PID Process name Usage | |=============================================================================| | 0. 7336 ./align 61MB | +-----------------------------------------------------------------------------+

Vous pouvez maintenant installer facilement CUDA en suivant le lien précédent. En bref :

sudo apt-get install linux-headers-$(uname -r)

Télécharger un kit d'outils d'ici et ensuite installer le .deb (remplacez le nom en conséquence)

sudo dpkg -i cuda-repo-<distro>_<version>_<architecture>.deb

puis courir :

sudo apt-get update
sudo apt-get install cuda

6voto

GPrathap Points 643

J'ai également essayé différentes approches afin d'installer Cuda 8.0 dans Ubuntu 16.04. Finalement, ce sont les étapes suivantes qui ont fait l'affaire. J'ai suivi ce tutoriel et mis à jour les étapes corrigées comme suit.

  1. Mettre à jour le système

    apt-get update && apt-get upgrade 
  2. Télécharger VirtualGL et l'installer. Pour installer

    dpkg -i virtualgl*.deb
  3. Télécharger et installer CUDA 8.0 et l'installer. Je vous suggère de le faire par internet. Comme ceci,

    enter image description here

  4. Installez les dépendances requises.

    apt-get install linux-headers-$(uname -r)
    apt-get install freeglut3-dev libxmu-dev libpcap-dev
  5. Mettez à jour le PATH du système dans le fichier .bashrc qui se trouve dans le répertoire personnel. Veuillez noter que si vous installez ces choses dans un autre emplacement, veuillez mettre à jour le chemin en fonction de celui-ci.

    export PATH=$PATH:/opt/VirtualGL/bin
    export PATH=$PATH:/usr/local/cuda/bin
  6. Installez bumblebee-nvidia et primus.

    apt-get install bumblebee-nvidia primus
  7. Modifiez le fichier de configuration de bumblebee pour que bumblebee sache que nous utilisons le pilote NVIDIA. Veuillez mettre à jour le chemin d'accès en fonction de votre système. Voici une vue de référence qui vous aidera.

    sudo nano +22 /etc/bumblebee/bumblebee.conf 

    Ajouter :

    [bumblebeed]
    ServerGroup=bumblebee
    TurnCardOffAtExit=false
    NoEcoModeOverride=false
    Driver=nvidia
    XorgConfDir=/etc/bumblebee/xorg.conf.d
    Bridge=auto
    PrimusLibraryPath=/usr/lib/x86_64-linux-gnu/primus:/usr/lib/i386-linux-gnu/primus
    AllowFallbackToIGC=false
    Driver=nvidia
    [driver-nvidia]
    KernelDriver=nvidia
    PMMethod=auto
    LibraryPath=/usr/lib/nvidia-367:/usr/lib32/nvidia-367
    XorgModulePath=/usr/lib/xorg,/usr/lib/xorg/modules
    XorgConfFile=/etc/bumblebee/xorg.conf.nvidia
    Driver=nouveau
    [driver-nouveau]
    KernelDriver=nouveau
    PMMethod=auto
    XorgConfFile=/etc/bumblebee/xorg.conf.nouveau
  8. Exécutez le programme suivant et enregistrez l'adresse PCI de votre carte vidéo.

    $ lspci | egrep 'VGA|3D'
    00:02.0 VGA compatible controller: Intel Corporation Device 5916 (rev 02)
    01:00.0 3D controller: NVIDIA Corporation Device 179c (rev a2)
  9. Editez le fichier xorg.conf.nvidia pour qu'il connaisse l'adresse PCI (01:00.0 pour moi) de votre carte vidéo. Mettez à jour l'adresse PIC comme ci-dessous dans la section "ServerLayout".

    sudo nano /etc/bumblebee/xorg.conf.nvidia

    Ajouter :

    Section "ServerLayout"
        Identifier  "Layout0"
        Option      "AutoAddDevices" "false"
        Option      "AutoAddGPU" "false"
        BusID "PCI:01:00.0"
  10. Redémarrez le système et amusez-vous à exécuter quelques exemples de codes.

    sudo shutdown -r now

3voto

Alex Points 181

Il s'agit d'une réponse très longue car j'ai vissé mon ordinateur portable plusieurs fois pendant que je l'écrivais. Cependant, je préfère la garder longue car elle peut être utile à d'autres personnes aussi ;) La meilleure partie de ma réponse commence à partir de Edited-Updated

Donc, j'ai lu toutes les réponses ici et ailleurs, je ne sais pas pourquoi, mais chacune d'entre elles me pose un problème :(

Après 4 jours de réinstallation de Linux dans les deux sens, voici la méthode qui a fonctionné pour moi.

Avant de passer à la procédure principale, je voudrais mentionner une méthode alternative.

méthode alternative si vous utilisez un ordinateur portable :

Ainsi, vous pouvez basculer entre votre gpu nvidia et votre gpu intel sur votre ordinateur portable en utilisant

sudo prime-select intel
sudo prime-select nvidia

En d'autres termes, vous pouvez passer à intel et installer nvidia et revenir à intel pour les usages normaux et quand vous voulez utiliser l'apprentissage profond passer à nvidia.

De toute façon,

Laissez-moi vous parler de la méthode principale qui a finalement fonctionné pour moi (les informations ici sont principalement tirées de Lien ) :

Suppression et purge de tous les trucs nvidia/cuda existants :

sudo apt-get remove --purge nvidia-*
sudo apt-get purge nvidia-cuda*
sudo apt-get purge nvidia-*
sudo /usr/bin/nvidia-uninstall
sudo /usr/local/cuda-8.0/bin/uninstall_cuda_8.0.pl
sudo rm -rf  /etc/modprobe.d/blacklist-nouveau.conf

Ensuite, nous mettons tout à jour :

sudo apt-get update
sudo apt-get upgrade
sudo apt-get dist-upgrade
sudo reboot

Maintenant, il y aurait une possibilité que vous ne puissiez pas vous connecter et que vous soyez bloqué dans la boucle...

Pas d'inquiétude, j'y ai fait face plus de 50 fois...

presse ctr+alt+F2 tapez votre nom d'utilisateur et votre mot de passe

Maintenant, tapez ceci :

sudo service lightdm stop

Facultatif, certaines personnes ont aussi besoin de taper ça, honnêtement je ne sais pas à quoi ça sert : sudo init 3

sudo nano  /etc/modprobe.d/blacklist-nouveau.conf

ajouter

blacklist nouveau
options nouveau modeset=0

et l'enregistrer, puis quitter.

Puis tapez :

sudo update-initramfs -u

allez dans le fichier où vous avez le fichier cuda .run et tapez :

sudo sh cuda_8.0_linux.run --override
sudo service lightdm start
sudo reboot

Donc, si vous avez de la chance, vous devriez pouvoir vous connecter maintenant. Comme vous pouvez le deviner, je n'ai pas eu de chance, et je n'ai toujours pas pu me connecter sur ****. J'ai donc dû appuyer sur ctr+Alt+F2 à nouveau et faites ce qui suit :

sudo ubuntu-drivers autoinstall
sudo reboot

Maintenant, je peux enfin me connecter.

C'est maintenant le moment de définir les chemins et de vérifier les installations.

type :

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

nvidia-smi
nvcc -V

il devrait vous montrer que vous avez cuda 8.

Aussi, juste au cas où, vous pouvez aussi faire ça :

export PATH=$PATH:/usr/local/cuda-8.0/bin
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda-8.0/lib64

gedit ~/.bashrc

ajoutez-les à la fin :

export PATH=$PATH:/usr/local/cuda-8.0/bin
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda-8.0/lib64

# Added by me on 2013/06/24
PATH=~/bin:$PATH
export PATH

Sauvegardez et quittez gedit. Tapez :

sudo ldconfig /usr/local/cuda-8.0/lib64

Une question pour les personnes qui en savent plus que moi :

Tout semble fonctionner, mais lorsque j'éteins/redémarre mon système pendant quelques secondes, il indique

Tout semble fonctionner, mais lorsque j'éteins/redémarre mon système pendant quelques secondes, il indique "Échec du démarrage de Load Kernel Modules" J'ai essayé ça poste mais cela n'aide pas, s'il vous plaît laissez-moi savoir si vous savez comment le réparer.

----------------

Edited-Updated

Devinez quoi, j'ai encore merdé.

Mais cette fois, j'ai trouvé une solution beaucoup plus simple. Et voici le point principal : Parfois, nous devons dire NON

Voici ce qui fonctionne vraiment bien pour moi. Après avoir purgé et supprimé tout et sudo reboot faire ceci :

sudo ubuntu-drivers autoinstall
sudo reboot

presse ctr+alt+F2 tapez votre nom d'utilisateur et votre mot de passe

Maintenant, tapez ceci :

sudo service lightdm stop

sudo sh cuda_8.0_linux.run  

IMPORTANT : pendant l'installation, la première question demande de réinstaller à nouveau le pilote, SAY NO to this mother f**** question Dites oui au reste d'entre eux cependant :D après avoir terminé.

sudo service lightdm start
press `alt+ctr+F7` 

connectez-vous à votre cher PC

Est-ce que ça a marché ? Bienvenue :)

2voto

Hao Chen Points 21

J'ai réussi à le faire fonctionner après avoir lu plusieurs messages : J'avais déjà une carte ATI dans l'ordinateur qui s'est avérée très utile. J'ai installé la GTX 1070 à côté de l'ATI et j'ai commencé à installer Kubuntu 16.04. Seul l'écran connecté à la carte ATI avait une image au départ, ce qui m'a permis d'installer le pilote NVIDIA-Linux-x86_64-367.27.run téléchargé sur le site du vendeur. Pour installer CUDA, j'ai téléchargé le fichier cuda_7.5.18_linux.run. J'ai installé le cuda toolkit en utilisant deux interrupteurs :

cuda_7.5.18_linux.run --silent --toolkit

Les échantillons de cuda peuvent également être installés à partir du fichier .run. Un problème était que cuda n'aime pas gcc5. J'ai donc fait sudo apt-get install gcc-4.8 et ensuite changé le gcc par défaut pour cette version par :

cd /usr/bin/
sudo unlink gcc
sudo ln -s gcc4.8 gcc
sudo unlink g++
sudo ln -s g++-4.8 g++

J'ai remplacé gcc par gcc5 après l'installation de cuda. La compilation des échantillons de cuda doit aussi être faite avec gcc4.8, gcc4.9 pourrait fonctionner mais je ne l'ai pas essayé.

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