Wie kann ich CUDA 9 unter Ubuntu 17.10 installieren?

41

Ubuntu 17.10 wird mit CUDA 8 ausgeliefert, das auf Clang 3.8 basiert (siehe zB diesen Blogpost ).

Ich möchte jedoch CUDA 9 installieren und mich nach Möglichkeit auf GCC verlassen. Wie kann ich das machen?

B0rk4
quelle

Antworten:

57

Installation des NVIDIA-Treibers 384

Zuerst installieren wir ein neues Ubuntu 17.10 auf einem Computer mit einer NVIDIA-GPU und wählen während des Vorgangs "Software von Drittanbietern installieren". Alternativ können wir das Grafiktreiber-Repository manuell hinzufügen:

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

Dann installieren wir den neuesten NVIDIA-Treiber mit apt:

sudo apt install nvidia-384 nvidia-384-dev

Wir überprüfen die Installation, indem wir Folgendes ausführen:

nvidia-smi

Wir sollten eine Ausgabe sehen, die den NVIDIA 384-Treiber und unsere diskrete NVIDIA-GPU auflistet - ähnlich wie in der folgenden Tabelle zusammengefasst:

+-----------------------------------------------------------------------------+
| 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 |
+-------------------------------+----------------------+----------------------+

Vorbereitung für die Installation von CUDA 9 + SDK

Wir installieren eine Reihe von Build / Dev-Paketen, die wir später benötigen:

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

Wir stellen fest, dass die Standardversion von gcc / g ++ unter 17.10 wie folgt lautet 7.2.0 (Ubuntu 7.2.0-8ubuntu3) :

gcc -v

CUDA 9 benötigt gcc 6. Daher installieren wir es:

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

Beachten Sie, dass die Standard-GCC-Version immer noch ist 7.2. kann durch erneutes Ausführen überprüft werden gcc -v.

Installation von CUDA 9 + SDK

Wählen Sie im CUDA Toolkit-Archiv eines der "runfile (local)" - Installationspakete aus, um eine Version von CUDA 9 herunterzuladen, z

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

Machen Sie die heruntergeladene Datei ausführbar und führen Sie sie mit sudo aus:

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

Wir installieren CUDA mit folgenden Konfigurationen:

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]

Richten Sie Symlinks für gcc / g ++ ein:

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

Testen Sie die CUDA 9-Installation mit dem SDK

Erstellen Sie Ihr Lieblings-CUDA-Beispiel und führen Sie es aus:

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

Möglicherweise möchten Sie nach der Installation von cuda gcc / g ++ symlinks einrichten.

B0rk4
quelle
1
Ich bin ein bisschen in diesem Thema stecken geblieben. Läuft 17.10 und versucht CUDA 9 zu installieren. Ich habe ein Problem in Schritt 2: nvidia-smi NVIDIA-SMI has failed because it couldn't communicate with the NVIDIA driver. Ran lspci | grep -i nvidiasagt, ich habe eine GeForce GTX 760. mokutil --sb-stateSecureBoot ist deaktiviert. Ran sudo apt-get purge nvidia*, führte Ihren Installationsbefehl für 384 aus und führte dpkg -S nvidia-sminvidia-384 aus: / usr / lib / nvidia-384 / bin / nvidia-smi. Irgendwelche Vorschläge?
Clark Kent
4
Ich musste entweder tun sudo ln -s /usr/bin/gcc-6 /usr/local/cuda-9.0/bin/gcc sudo ln -s /usr/bin/g++-6 /usr/local/cuda-9.0/bin/g++oder sudo ./cuda_9.0.176_384.81_linux-run --overrideals Autor unten empfiehlt, erfolgreich ohne Compiler-Konflikt zu installieren
y.selivonchyk
11
Die beiden Befehle zum Hinzufügen der symbolischen Links für die GCC 6-Compiler müssen nach der Installation von Cuda ausgeführt werden, da / usr / local / cuda vor der Installation nicht vorhanden ist
Luis Lobo Borobia,
1
Helfer viel! Das einzige, was ich anders gemacht habe - Symlinks nach der Installation von cuda am Ende erstellt.
QtRoS
1
cuda_9.0.176_384.81_linux.runWie haben Sie vor dem Ausführen die Softlinks ( ln -s) erstellt? Haben Sie den cuda-Ordner manuell erstellt?
Mahmood
5

Die Installation dauerte länger, als ich zugeben möchte, und obwohl die obige Antwort eine gute Vorlage ist, waren für meine Neuinstallation von Ubuntu 17.10 einige zusätzliche Schritte erforderlich:

Schwarze Liste Jugendstil

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

Fügen Sie Folgendes hinzu:

# this one might not be required for x86 32 bit users.
blacklist amd76x_edac 

blacklist vga16fb
blacklist nouveau
blacklist rivafb
blacklist nvidiafb
blacklist rivatv

Aktualisieren Sie die initramfs-Festplatte

sudo update-initramfs -u

Stoppen Sie gdm3

sudo /etc/init.d/gdm3 stop

sudo init 3

Holen Sie sich Inhalte

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

Holen Sie sich das Paket

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

Führen Sie --override aus, um die Compilerauswahl zu überschreiben

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

Nach der Installation des Pakets erhalte ich Fehler mit nvidia-smi. Ich empfehle daher, den Befehl erneut auszuführen, um zu überprüfen, ob er funktioniert. Wenn ich Probleme hatte, löschte ich nvidia * und holte es mir zurück.

nvidia-smi
Clark Kent
quelle
Manche Menschen können müssen aufhören lightdmstatt gdm3finden askubuntu.com/a/65867/422690
crypdick
1

Ich folgte der akzeptierten Antwort (@ubashu) und alles lief gut (wenn nicht genau das gleiche, würden die Anweisungen zum richtigen Pfad führen). Ich hätte nur den Export nach Path (wie auch auf https://docs.nvidia.com/cuda/cuda-installation-guide-linux/index.html#post-installation-actions angegeben )

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}}

Danach können Sie mit nvcc -V prüfen, ob die Installation wirklich erfolgreich war.

Pedro Esmeriz
quelle