Guida al controllo della GPU su Ubuntu: come usare e configurare nvidia-smi

1. Introduction

Quando si utilizza una GPU su Ubuntu, è fondamentale monitorarne accuratamente lo stato. Questo è particolarmente importante per attività come l’apprendimento profondo e il rendering grafico, dove comprendere l’uso della GPU e le versioni dei driver è essenziale. Questo articolo spiega come usare nvidia-smi, uno strumento di gestione GPU NVIDIA, e fornisce una guida su come verificare lo stato della GPU su Ubuntu.

2. Checking GPU Information with nvidia-smi

nvidia-smi è uno strumento da riga di comando che consente di monitorare l’utilizzo della GPU NVIDIA, il consumo di memoria e altri dettagli. È particolarmente utile per il monitoraggio in tempo reale dell’attività della GPU e per recuperare informazioni dettagliate sull’utilizzo.

Basic Usage

Il comando seguente mostra l’utilizzo della GPU e il consumo di memoria in tempo reale:

nvidia-smi --query-gpu=timestamp,name,utilization.gpu,utilization.memory,memory.used,memory.free --format=csv -l 1

Questo comando fornisce informazioni dettagliate, inclusi utilizzo della GPU, uso della memoria e memoria disponibile. È inoltre possibile specificare l’intervallo di aggiornamento in secondi usando l’opzione -l.

Output Format and File Logging

Per impostazione predefinita, l’output viene visualizzato in formato tabellare, ma è possibile esportarlo anche in formato CSV per una più facile elaborazione. Se si desidera salvare le informazioni in un file, usare l’opzione -f per specificare il percorso del file di output.

nvidia-smi --query-gpu=timestamp,name,utilization.gpu,utilization.memory,memory.used,memory.free --format=csv -l 1 -f /path/to/output.csv

Questo metodo consente di registrare l’utilizzo della GPU per analisi successive.

3. Recuperare le informazioni sui processi con nvidia-smi

Utilizzando nvidia-smi, è possibile recuperare informazioni sui processi che stanno attualmente utilizzando la GPU. Questo aiuta a identificare quali processi stanno consumando le risorse della GPU e in che misura.

Ottenere le informazioni sui processi

Esegui il comando seguente per verificare il PID e l’utilizzo della memoria dei processi che utilizzano la GPU:

nvidia-smi --query-compute-apps=pid,process_name,used_memory --format=csv,noheader

Questo comando restituisce un elenco dei processi GPU attualmente in esecuzione insieme al loro utilizzo della memoria.

Sottocomando pmon di nvidia-smi

Lo strumento nvidia-smi include un sottocomando chiamato pmon, che fornisce informazioni più dettagliate sui processi GPU.

nvidia-smi pmon --delay 10 -s u -o DT

Questo comando visualizza le informazioni sui processi GPU a intervalli specificati. L’opzione --delay imposta l’intervallo di aggiornamento in secondi e consente di personalizzare le informazioni visualizzate.

4. Installazione e verifica dei driver NVIDIA

Per utilizzare una GPU NVIDIA su Ubuntu, è necessario installare il driver NVIDIA appropriato. Di seguito sono riportati i passaggi per installare e verificare il driver.

Installazione del driver

Innanzitutto, installa il driver NVIDIA consigliato per il tuo sistema usando il seguente comando:

sudo apt install nvidia-driver-510

Una volta completata l’installazione, riavvia il sistema.

Verifica dell’installazione

Dopo il riavvio, verifica se il driver è installato correttamente usando il seguente comando:

nvidia-smi

Se il comando mostra la versione del driver e la versione di CUDA, l’installazione è avvenuta con successo.

5. Verifica del funzionamento della GPU con TensorFlow

Per confermare che la GPU funzioni correttamente, è possibile utilizzare TensorFlow, un framework di apprendimento automatico, per i test.

Installazione di Anaconda

Per prima cosa, installa Anaconda per configurare l’ambiente.

bash ./Anaconda3-2022.05-Linux-x86_64.sh
conda update -n base conda
conda update anaconda
conda update -y --all
conda install tensorflow-gpu==2.4.1

Verifica del riconoscimento della GPU con TensorFlow

Successivamente, verifica se TensorFlow riconosce la GPU eseguendo il comando seguente:

from tensorflow.python.client import device_lib
device_lib.list_local_devices()

Se il dispositivo GPU appare nell’elenco, TensorFlow ha rilevato correttamente la GPU.

6. Monitoraggio dell’uso della GPU e registrazione

Utilizzando nvidia-smi, è possibile monitorare l’uso della GPU in tempo reale e registrare i dati. Questo aiuta a tenere traccia dell’utilizzo della GPU per lunghi periodi e a ottimizzare le prestazioni.

Configurazione del monitoraggio regolare

Per impostare un monitoraggio periodico, usa l’opzione -l in nvidia-smi per specificare l’intervallo di aggiornamento. Puoi anche registrare l’output in un file.

nvidia-smi --query-gpu=timestamp,name,utilization.gpu,utilization.memory,memory.used,memory.free --format=csv -l 1 -f /var/log/gpu.log

Controllo programmatico con binding Python

nvidia-smi fornisce binding Python (nvidia-ml-py), consentendo di recuperare le informazioni sulla GPU in modo programmatico. Questo consente un monitoraggio e un controllo personalizzati.

7. Conclusion

nvidia-smi è uno strumento potente per monitorare e gestire l’uso delle GPU NVIDIA su Ubuntu. Questo articolo ha coperto il suo utilizzo di base, il recupero delle informazioni sui processi, l’installazione dei driver e la verifica del funzionamento della GPU con TensorFlow. Utilizza questi metodi per massimizzare le prestazioni della GPU e ottimizzare il tuo sistema.

年収訴求