Ubuntu 17.10 viene fornito con CUDA 8 che si basa su clang 3.8 (ad esempio, vedi questo post sul blog ).
Tuttavia, vorrei installare CUDA 9 e, se possibile, fare affidamento su GCC. Come posso fare questo?
Ubuntu 17.10 viene fornito con CUDA 8 che si basa su clang 3.8 (ad esempio, vedi questo post sul blog ).
Tuttavia, vorrei installare CUDA 9 e, se possibile, fare affidamento su GCC. Come posso fare questo?
Risposte:
Installazione del driver NVIDIA 384
Innanzitutto installiamo un nuovo Ubuntu 17.10 su un computer con una GPU NVIDIA e selezioniamo "Installa software di terze parti" durante il processo. In alternativa, possiamo aggiungere manualmente il repository dei driver di grafica:
sudo add-apt-repository ppa:graphics-drivers/ppa
sudo apt update
Quindi installiamo il driver NVIDIA più recente usando apt:
sudo apt install nvidia-384 nvidia-384-dev
Verifichiamo l'installazione eseguendo:
nvidia-smi
Dovremmo vedere un output che elenca il driver NVIDIA 384 e la nostra GPU NVIDIA discreta, simile alla tabella riepilogata di seguito:
+-----------------------------------------------------------------------------+
| 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 |
+-------------------------------+----------------------+----------------------+
Preparazione per l'installazione di CUDA 9 + SDK
Installiamo una serie di pacchetti build / dev che richiederemo in seguito:
sudo apt-get install g++ freeglut3-dev build-essential libx11-dev libxmu-dev libxi-dev libglu1-mesa libglu1-mesa-dev
Notiamo che la versione predefinita di gcc / g ++ su 17.10 è 7.2.0 (Ubuntu 7.2.0-8ubuntu3)
:
gcc -v
CUDA 9 richiede gcc 6. Quindi, lo installiamo:
sudo apt install gcc-6
sudo apt install g++-6
Nota che la versione predefinita di gcc è ancora 7.2
; può essere verificato eseguendo di gcc -v
nuovo.
Installazione di CUDA 9 + SDK
Dall'archivio CUDA Toolkit , selezionare uno dei pacchetti di installazione "runfile (locale)" per scaricare una versione di CUDA 9, come
wget https://developer.nvidia.com/compute/cuda/9.0/Prod/local_installers/cuda_9.0.176_384.81_linux-run
Rendi eseguibile il file scaricato ed eseguilo utilizzando sudo:
chmod +x cuda_9.0.176_384.81_linux-run
sudo ./cuda_9.0.176_384.81_linux-run --override
Installiamo CUDA con le seguenti configurazioni:
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]
Imposta collegamenti simbolici per 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++
Testare l'installazione di CUDA 9 utilizzando l'SDK
Crea il tuo campione CUDA preferito ed eseguilo:
cd ~/NVIDIA_CUDA-9.0_Samples/5_Simulations/smokeParticles
make
../../bin/x86_64/linux/release/smokeParticles
Potresti voler configurare i symlink gcc / g ++ dopo l'installazione di cuda.
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++
o sudo ./cuda_9.0.176_384.81_linux-run --override
come l'autore sotto consiglia di installare correttamente senza conflitto del compilatore
cuda_9.0.176_384.81_linux.run
, come hai creato i soft link ( ln -s
)? Hai creato manualmente la cartella cuda?
L'installazione di questo ha richiesto più tempo di quanto vorrei ammettere, e mentre la risposta sopra è un buon modello, avevo alcuni passaggi aggiuntivi richiesti per la mia nuova installazione di Ubuntu 17.10:
sudo vim /etc/modprobe.d/blacklist.conf
Aggiungi quanto segue:
# 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
Dopo aver installato il pacchetto, otterrei errori con nvidia-smi, quindi suggerisco di eseguire nuovamente il comando per verificare che funzioni. Quando avessi problemi, eliminerei nvidia * e lo avrei ripreso.
nvidia-smi
lightdm
invece di gdm3
, vedi askubuntu.com/a/65867/422690
Ho seguito la risposta accettata (@ubashu) e tutto è andato bene (se non esattamente lo stesso, le istruzioni avrebbero portato al percorso corretto). Avrei avuto solo l'esportazione in Path (come specificato anche su 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}}
Dopodiché puoi usare nvcc -V per verificare se l'installazione è andata davvero bene.
NVIDIA-SMI has failed because it couldn't communicate with the NVIDIA driver.
Ranlspci | grep -i nvidia
dice che ho una GeForce GTX 760.mokutil --sb-state
mostra SecureBoot disabilitato. Hosudo apt-get purge nvidia*
eseguito il comando di installazione per 384 ed eseguitodpkg -S nvidia-smi
nvidia-384: / usr / lib / nvidia-384 / bin / nvidia-smi. Eventuali suggerimenti?