Installare CUDA su Ubuntu

In questo articolo illustrerò vari passi per installare CUDA nel proprio computer e come verificare se la libreria pytorch di Python  legge correttamente cuda.

Prerequisiti

Poichè CUDA è un’architettura hardware per l’elaborazione parallela creata da NVIDIA, l’unico prerequisito è avere una scheda video NVIDIA nel proprio PC.

Installare CUDA, pytorch e driver NVIDIA

Per isntallare CUDA, pytorch ed i driver NVIDIA bisogna:

  • Disattivare Secure Boot, per disattivare il Secure Boot bisogna avviare il BIOS e modificare le impostazioni di sicurezza
  • Scaricare l’installer CUDA (file .run Base Installer 1,7 GB) dal sito ufficiale
  • Scaricare ed installare libcudnn da qui.
  • Eseguire il file .run installando solo il toolkit di CUDA. Per eseguire il file.run bisogna eseguire da terminale:

    sudo sh percorso/del/file/cuda_9.2.88_396.26_linux.run

  • Installare anaconda
  • Utilizzare Anaconda per installare pytorch tramite il comando

    $ conda install pytorch torchvision -c pytorch

  • Aggiungere la repository graphics-drivers tramite ppa in modo da avere la possibilità di installare gli ultimi drivers NVIDIA per Ubuntu:

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

  • installare driver nvidia tramite

$ sudo apt install nvidia-3xx

Al posto di nvidia-3xx bisogna inserire la versione del driver NVIDIA compatibile con il vostro computer, per sapere quale driver è compatibile con un determinato dispositivo basta inserire i giusti parametri nel sito NVIDIA o GeForce.

Un modo alternativo e forse più semplice per individuare il driver adatto al proprio computer consiste nell’utilizzare il gestore di driver di Ubuntu cercando tramite la dash “Driver Aggiuntivi”.

Installare CUDA su Ubuntu Installare CUDA su Ubuntu

 

Installato il driver NVIDIA riavviate il computer e verificate di aver installato anche il tool “nvidia-smi”, questo tool permette di visualizzare le caratteristiche della propria scheda video ed il driver attualmente in uso. Per usare nvidia-smi basta lanciare da terminale il seguente comando:

$ nvidia-smi

Svolti tutti i passi indicati fin’ora pytorch dovrebbe poter visualizzare CUDA, per verificare ciò si può creare un file python contenente il seguente codice:

import torch
print torch.cuda.is_available()

Eseguito vi restituirà True se CUDA è stato correttamente installato e pytorch riesce a visualizzarlo.

Troubleshooting

Se ancora pytorch non visualizza correttamente CUDA provate a scaricare l’ultima versione dell’installer CUDA dal sito ufficiale, reinstallate CUDA, riavviate il computer e rieseguite il file python.

Se si sta provando ad installare Cuda 9.0 (libcublas.so.9.0) su Ubuntu 18.04 LTS consiglio fortemente questa guida contenuta in un gist su GitHub.

NVIDIA drivers

$ nvidia-smi non riconosce i drivers o la scheda video in uso? $ nvidia-settings dà il seguente errore?

ERROR: Unable to find display on any available system

Si provi a forzare il caricamento dei driver NVIDIA con il seguente comando:

$ sudo prime-select nvidia

Per gli utenti che utilzzano Ubuntu 17.10+ bisogna avviare la sessione con interfaccia grafica “con X.org”.