Come verificare la versione di CUDA su Ubuntu [Guida facile ai comandi]

目次

1. Introduzione

CUDA (Compute Unified Device Architecture) è una piattaforma di calcolo parallelo sviluppata da NVIDIA che utilizza le GPU. È ampiamente usata per il machine learning, il deep learning, il rendering 3D e varie altre attività computazionali.

Quando si utilizza CUDA in un ambiente Ubuntu, è fondamentale verificare la versione di CUDA per i seguenti motivi:

Compatibilità del driver

CUDA richiede una versione specifica del driver NVIDIA per funzionare correttamente. Se le versioni sono incompatibili, CUDA potrebbe non operare correttamente.

Compatibilità delle librerie

Librerie come TensorFlow e PyTorch richiedono versioni specifiche di CUDA e cuDNN. È essenziale assicurarsi di aver installato la versione appropriata.

Evitare confusione di sistema

Se sul sistema sono installate più versioni di CUDA, è necessario identificare quale versione è attiva e passare da una versione all’altra secondo necessità.

In questo articolo forniremo una spiegazione chiara su come verificare la versione di CUDA su Ubuntu.

2. Come verificare la versione di CUDA su Ubuntu

In un ambiente Ubuntu, è possibile controllare la versione di CUDA utilizzando i seguenti metodi:

Metodo 1: Controllare con il comando nvidia-smi (Metodo più semplice)

Il driver NVIDIA include uno strumento chiamato nvidia-smi (NVIDIA System Management Interface) che consente di verificare lo stato della GPU.

Comando di esecuzione

nvidia-smi

Output di esempio

+-----------------------------------------------------------------------------+
| NVIDIA-SMI 530.41.03    Driver Version: 530.41.03    CUDA Version: 12.1     |
+-----------------------------------------------------------------------------+

Punti chiave

  • La voce CUDA Version: 12.1 mostrata qui rappresenta la versione massima di CUDA supportata dal driver NVIDIA.
  • Questa potrebbe non corrispondere sempre alla versione del toolkit CUDA installata, perciò è consigliato verificare con metodi aggiuntivi.

Metodo 2: Controllare con il comando nvcc -V (Per sviluppatori)

Se CUDA è installato correttamente, è possibile controllare la versione di nvcc (il compilatore CUDA).

Comando di esecuzione

nvcc -V

Output di esempio

nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2023 NVIDIA Corporation
Built on Sun_Jul_30_19:09:40_PDT_2023
Cuda compilation tools, release 12.1, V12.1.105

Punti chiave

  • La parte che indica release 12.1, V12.1.105 segnala la versione del toolkit CUDA installata.
  • Questa può differire dalla versione mostrata da nvidia-smi, quindi occorre fare attenzione.

Metodo 3: Controllare il file version.txt (Verifica manuale)

Se CUDA è installato in /usr/local/cuda, le informazioni sulla versione sono registrate nel file version.txt.

Comando di esecuzione

cat /usr/local/cuda/version.txt

Output di esempio

CUDA Version 12.1.105

Punti chiave

  • Questo metodo è utile se il comando nvcc -V non è disponibile.
  • Assicurati che /usr/local/cuda sia correttamente collegato alla versione di CUDA desiderata.

3. Come verificare la versione di cuDNN

cuDNN (CUDA Deep Neural Network) è una libreria progettata per il deep learning e viene utilizzata in combinazione con CUDA.
Oltre a controllare la versione di CUDA, è anche importante verificare la versione di cuDNN.

Metodo 1: Controllare il file cudnn_version.h

La versione di cuDNN è registrata nel file header cudnn_version.h.

Comando di esecuzione

cat /usr/local/cuda/include/cudnn_version.h | grep CUDNN_MAJOR -A 2

Output di esempio

#define CUDNN_MAJOR 8
#define CUDNN_MINOR 9
#define CUDNN_PATCHLEVEL 1

Punti chiave

  • Questo output conferma che è installato cuDNN 8.9.1.
  • L’uso del comando grep consente di recuperare facilmente le informazioni sulla versione di cuDNN.
  • Poiché cuDNN deve essere compatibile con CUDA, è importante verificare la corretta combinazione di versioni.

Metodo 2: Controllare con il comando dpkg (Per Linux basato su Debian)

Su Ubuntu e altre distribuzioni Linux basate su Debian, è possibile verificare la versione di cuDNN installata usando il comando dpkg.

Comando di Esecuzione

dpkg -l | grep libcudnn

Output di Esempio

ii  libcudnn8    8.9.1-1+cuda12.1    amd64    NVIDIA cuDNN Library

Punti Chiave

  • La parte libcudnn8 8.9.1-1+cuda12.1 conferma la versione cuDNN installata (8.9.1).
  • La parte cuda12.1 indica la versione CUDA compatibile (12.1).

Utilizzando questi metodi, puoi assicurarti che il tuo ambiente CUDA sia configurato correttamente.

4. Come Gestire più Versioni CUDA Installate

In un ambiente Ubuntu, è possibile installare più versioni di CUDA. Tuttavia, ciò può talvolta causare confusione su quale versione sia attualmente attiva.
In questi casi, è necessario passare alla versione appropriata.

Metodo 1: Passare usando update-alternatives

Su Ubuntu, puoi usare update-alternatives per cambiare le versioni di CUDA.

Verifica le Impostazioni Attuali

update-alternatives --query cuda

Cambia Versione CUDA

sudo update-alternatives --config cuda

Output di Esempio

There are 3 choices for the alternative cuda (providing /usr/local/cuda).

  Selection    Path                Priority   Status
------------------------------------------------------------
* 0            /usr/local/cuda-11.8  100       auto mode
  1            /usr/local/cuda-10.2  50        manual mode
  2            /usr/local/cuda-11.8  100       manual mode
  3            /usr/local/cuda-12.1  110       manual mode

Press <enter> to keep the current choice[*], or type selection number:

Punti Chiave

  • Eseguendo update-alternatives --config cuda verrà mostrata una lista delle versioni CUDA disponibili.
  • Puoi selezionare la versione CUDA desiderata inserendo il numero corrispondente.
  • auto mode e manual mode sono disponibili; scegli manual mode se vuoi cambiare le versioni manualmente.

Metodo 2: Impostare Manualmente un Collegamento Simbolico

Puoi anche cambiare le versioni di CUDA modificando il collegamento simbolico.

Verifica il Collegamento Simbolico Esistente

ls -l /usr/local/cuda

Output di Esempio

lrwxrwxrwx 1 root root 20 Feb  1 12:34 /usr/local/cuda -> /usr/local/cuda-11.8

Cambia Versione CUDA

sudo rm /usr/local/cuda
sudo ln -s /usr/local/cuda-12.1 /usr/local/cuda

Verifica il Cambiamento

ls -l /usr/local/cuda

Punti Chiave

  • /usr/local/cuda funge da percorso predefinito per CUDA. Modificando questo collegamento si cambia la versione di CUDA.
  • Utilizzando il comando ln -s, puoi facilmente cambiare la versione di CUDA senza modificare le configurazioni a livello di sistema.

Con questi metodi, puoi gestire efficientemente più versioni di CUDA e assicurarti di utilizzare la versione corretta per le tue esigenze.

5. Domande Frequenti (FAQ)

Ecco alcune domande comuni relative al controllo della versione di CUDA. Se incontri problemi, fai riferimento a queste soluzioni.

Q1: Comando nvcc -V Non Trovato!

Se il comando nvcc non viene trovato, CUDA potrebbe non essere installato correttamente o il suo percorso non è impostato.

Soluzione 1: Verifica se CUDA è Installato

ls /usr/local/cuda/

Soluzione 2: Aggiungi nvcc al Percorso

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

Dopo aver eseguito questi comandi, prova a eseguire nuovamente nvcc -V per verificare se la versione viene mostrata correttamente.

Q2: Perché la Versione CUDA Visualizzata da nvidia-smi è Differente?

La versione CUDA visualizzata da nvidia-smi rappresenta la massima versione CUDA supportata dal driver NVIDIA, non necessariamente la versione del toolkit CUDA installata.

Come Verificare:

nvidia-smi

Output di Esempio:

CUDA Version: 12.1

Per verificare la versione CUDA effettivamente installata, usa nvcc -V o controlla il file version.txt.

Q3: Come Verificare la Compatibilità tra CUDA e cuDNN?

Il modo migliore per verificare la compatibilità tra CUDA e cuDNN è consultare la matrice di supporto ufficiale di NVIDIA.

Documentazione Ufficiale:

NVIDIA cuDNN Support Matrix

Inoltre, puoi verificare le versioni installate usando i seguenti comandi:

Verifica la versione di CUDA

nvcc -V

Verifica la versione di cuDNN

cat /usr/local/cuda/include/cudnn_version.h | grep CUDNN_MAJOR -A 2

Gestendo correttamente il tuo ambiente, puoi evitare problemi di compatibilità tra CUDA e cuDNN.

6. Riepilogo

In questo articolo, abbiamo spiegato come verificare la versione di CUDA in un ambiente Ubuntu.
Rivediamo i punti chiave.

Modi per verificare la versione di CUDA

MethodCommandDescription
nvidia-sminvidia-smiShows the CUDA version supported by the NVIDIA driver
nvcc -Vnvcc -VShows the actual installed CUDA toolkit version
version.txtcat /usr/local/cuda/version.txtManually check the CUDA version

Modi per verificare la versione di cuDNN

MethodCommandDescription
cudnn_version.hcat /usr/local/cuda/include/cudnn_version.h | grep CUDNN_MAJOR -A 2Check the version from the header file
dpkg Commanddpkg -l | grep libcudnnCheck the installed cuDNN version

Come cambiare le versioni di CUDA

MethodCommandDescription
update-alternativessudo update-alternatives --config cudaSwitch between multiple CUDA versions
Symbolic Linksudo ln -s /usr/local/cuda-XX.X /usr/local/cudaManually change the CUDA version

Punti chiave

  • È importante identificare correttamente la versione di CUDA
  • Assicurati della compatibilità tra CUDA e cuDNN
  • Se utilizzi più versioni di CUDA, comprendi come passare da una all’altra

Gestendo correttamente il tuo ambiente, puoi massimizzare i vantaggi di CUDA.
Speriamo che questo articolo ti aiuti a verificare la versione di CUDA nel tuo ambiente Ubuntu.

Articoli correlati