Questa pagina mostra come risolvere i problemi relativi alle VM in esecuzione su Compute Engine con GPU collegate.
Se stai tentando di creare una VM con GPU collegate e ricevi errori, consulta Risoluzione degli errori relativi alla disponibilità delle risorse e Risoluzione dei problemi relativi alla creazione e all'aggiornamento delle VM.
Risolvere i problemi delle VM GPU utilizzando NVIDIA DCGM
NVIDIA Data Center GPU Manager (DCGM) è una suite di strumenti per la gestione e il monitoraggio delle GPU NVIDIA per data center in ambienti cluster.
Se vuoi utilizzare DCGM per risolvere i problemi nel tuo ambiente GPU, completa le seguenti:
- Assicurati di utilizzare il driver NVIDIA consigliato più recente per la GPU collegato alla VM. Per esaminare le versioni dei driver, consulta Versioni consigliate dei driver NVIDIA.
- Assicurati di aver installato l'ultima versione di DCGM. Per installare l'ultima versione o la versione precedente, consulta l'articolo sull'installazione di DCGM.
Diagnostica dei problemi
Quando esegui un comando di diagnostica dcgmi
, i problemi segnalati dallo strumento di diagnostica includono i passaggi successivi per intervenire. Nell'esempio che segue
mostra l'output utilizzabile dal comando dcgmi diag -r memory -j
.
{ ........ "category":"Hardware", "tests":[ { "name":"GPU Memory", "results":[ { "gpu_id":"0", "info":"GPU 0 Allocated 23376170169 bytes (98.3%)", "status":"Fail", ""warnings":[ { "warning":"Pending page retirements together with a DBE were detected on GPU 0. Drain the GPU and reset it or reboot the node to resolve this issue.", "error_id":83, "error_category":10, "error_severity":6 } ] } .........
Dallo snippet di output precedente, puoi vedere che GPU 0
ha una pagina in attesa
i ritiri causati da un errore irreversibile.
L'output ha fornito l'error_id
univoco e consigli sul debug del problema.
Per questo output di esempio, ti consigliamo di svuotare la GPU e riavviare
la VM. Nella maggior parte dei casi, seguire le istruzioni riportate in questa sezione dell'output può contribuire a risolvere il problema.
Aprire una richiesta di assistenza
Se non riesci a risolvere i problemi seguendo le indicazioni fornite dall'output dell'esecuzione di diagnostica dcgmi
, puoi aprire una richiesta di assistenza. Quando
apri una richiesta di assistenza, devi fornire le seguenti informazioni:
- Il comando eseguito e l'output restituito.
File di log pertinenti, come il motore host e i log di diagnostica. Per raccogliere file di log richiesti, puoi eseguire lo script
gather-dcgm-logs.sh
.Per un'installazione predefinita su sistemi basati su Debian e RPM, questo script è si trova in
/usr/local/dcgm/scripts
.Per gli errori di
dcgmi diag
, fornisci i file delle statistiche dei plug-in che non hanno superato il test. Il file delle statistiche utilizza la seguente convenzione di denominazione:stats_PLUGIN_NAME.json
.Ad esempio, se il plug-in
pcie
non è riuscito, includi il file denominatostats_pcie.json
.informazioni di sistema e stato del driver NVIDIA. Per raccogliere queste informazioni, può eseguire lo script
nvidia-bug-report.sh
.L'esecuzione di questo script migliora anche il debug qualora il problema si verifichi causata da altre dipendenze NVIDIA e non a un bug di DCGM.
Dettagli su eventuali modifiche recenti apportate al tuo ambiente prima dell'errore.
Messaggi Xid
Dopo aver creato una VM con GPU collegate, devi installare i driver di dispositivo NVIDIA sulle VM GPU per consentire alle applicazioni di accedere alle GPU. Tuttavia, a volte questi driver restituiscono messaggi di errore.
Un messaggio Xid è un report di errore del driver NVIDIA stampato nel log del kernel o nel log eventi del sistema operativo per la VM Linux. Questi messaggi vengono inseriti nel file /var/log/messages
.
Per saperne di più sui messaggi Xid, incluse le potenziali cause, consulta la documentazione NVIDIA.
La sezione seguente fornisce indicazioni per la gestione di alcuni messaggi Xid raggruppati per i tipi più comuni: errori di memoria GPU, errori del processore di sistema GPU (GSP) e errori di accesso alla memoria illegale.
Errori di memoria GPU
La memoria GPU è la memoria disponibile su una GPU che può essere utilizzata per la memorizzazione temporanea dei dati. La memoria GPU è protetta da un codice di correzione degli errori, ECC, che rileva e corregge gli errori a bit singolo (SBE) e rileva e segnala Errori a doppio bit (DBE).
Prima del rilascio delle GPU NVIDIA A100, ritiro dinamico delle pagine era supportata. Per le release GPU NVIDIA A100 e successive (come NVIDIA H100), errore di rimappatura delle righe il ripristino di emergenza. ECC è abilitato per impostazione predefinita. Google consiglia vivamente di mantenere attiva la funzionalità ECC.
Di seguito sono riportati errori comuni di memoria GPU e le relative risoluzioni suggerite.
Messaggio di errore Xid | Risoluzione |
---|---|
Xid 48: Double Bit ECC |
|
Xid 63: ECC page retirement or row remapping recording
event |
|
Xid 64: ECC page retirement or row remapper recording
failure
Il messaggio contiene le seguenti informazioni: Xid 64: All reserved rows for bank are remapped
|
|
Se visualizzi almeno due dei seguenti messaggi Xid insieme:
Il messaggio contiene le seguenti informazioni: Xid XX: row remap pending
|
|
Xid 92: High single-bit ECC error rate |
Questo messaggio Xid viene restituito dopo che il driver della GPU ha corretto un errore correggibile e non dovrebbe influire sui tuoi carichi di lavoro. Questo messaggio Xid è solo informativo. Non è richiesta alcuna azione da parte tua. |
Xid 94: Contained ECC error |
|
Xid 95: Uncontained ECC error |
|
Errori GSP
Un processore di sistema GPU (GSP) è un microcontrollore che funziona su GPU e gestisce alcune delle funzioni di gestione dell'hardware a basso livello.
Messaggio di errore Xid | Risoluzione |
---|---|
Xid 119: GSP RPC timeout |
|
Xid 120: GSP error |
Errori di accesso alla memoria non validi
I seguenti XID vengono restituiti quando le applicazioni hanno un accesso alla memoria illegale problemi:
Xid 13: Graphics Engine Exception
Xid 31: GPU memory page fault
Gli errori di accesso alla memoria illegale sono in genere causati dal tentativo dei carichi di lavoro di accedere alla memoria già liberata o fuori dai limiti. Ciò può essere causato da problemi come il deriferimento di un puntatore non valido o un array di limiti in uscita.
Per risolvere il problema, devi eseguire il debug dell'applicazione. Per eseguire il debug della tua applicazione, puoi utilizzare cuda-memcheck e CUDA-GDB.
In alcuni rari casi, il degrado dell'hardware potrebbe causare un accesso illegale alla memoria
errori da restituire. Per identificare se il problema riguarda l'hardware, utilizza
NVIDIA Data Center GPU Manager (DCGM).
Puoi eseguire dcgmi diag -r 3
o dcgmi diag -r 4
per eseguire diversi livelli di
copertura e durata del test. Se identifichi che il problema riguarda l'hardware,
invia una richiesta all'assistenza clienti Google Cloud.
Altri messaggi di errore Xid comuni
Messaggio di errore Xid | Risoluzione |
---|---|
Xid 74: NVLINK error |
|
Xid 79: GPU has fallen off the bus
Ciò significa che il driver non è in grado di comunicare con la GPU. |
Riavvia la VM. |
Reimposta GPU
Alcuni problemi potrebbero richiedere il ripristino delle GPU. Per reimpostare le GPU: compila i seguenti passaggi:
- Per le VM N1, G2 e A2, riavvia la VM eseguendo
sudo reboot
. - Per le VM A3, esegui
sudo nvidia-smi --gpu-reset
.
Se gli errori persistono dopo il ripristino della GPU, devi eliminare e ricreare la VM.
Se l'errore persiste dopo l'eliminazione e la successiva creazione, invia una richiesta all'assistenza clienti Google Cloud per spostare la VM nella fase di riparazione.
Passaggi successivi
Esamina i tipi di macchine GPU.