Auf dieser Seite wird beschrieben, wie Sie Probleme für VMs beheben, die auf Compute Engine mit angehängten GPUs ausgeführt werden.
Wenn Sie versuchen, eine VM mit angehängten GPUs zu erstellen, und dabei Fehler erhalten, lesen Sie die Informationen unter Fehlerbehebung bei Fehlern bei der Ressourcenverfügbarkeit und Fehlerbehebung beim Erstellen und Aktualisieren von VMs.
Fehlerbehebung bei GPU-VMs mit NVIDIA DCGM
NVIDIA Data Center GPU Manager (DCGM) ist eine Suite von Tools zum Verwalten und Monitoring von NVIDIA-Rechenzentrums-GPUs in Clusterumgebungen.
Wenn Sie DCGM zum Beheben von Problemen in Ihrer GPU-Umgebung verwenden möchten, gehen Sie so vor:
- Verwenden Sie den neuesten empfohlenen NVIDIA-Treiber für das mit Ihrer VM verbundene GPU-Modell. Informationen zu Treiberversionen finden Sie unter Empfohlene NVIDIA-Treiberversionen.
- Prüfen Sie, ob die neueste Version von DCGM installiert ist. Informationen zum Installieren der neuesten Version finden Sie unter DCGM-Installation.
Probleme diagnostizieren
Wenn Sie den Diagnosebefehl dcgmi
ausführen, enthalten die vom Diagnosetool gemeldeten Probleme weitere Schritte, um das Problem zu beheben. Das folgende Beispiel zeigt die umsetzbare Ausgabe des Befehls 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 } ] } .........
Im vorherigen Ausgabe-Snippet sehen Sie, dass in GPU 0
ausstehende Seitensperrungen vorliegen, die durch einen nicht behebbaren Fehler verursacht wurden.
Die Ausgabe enthält die eindeutige error_id
und Tipps zur Fehlerbehebung.
Für diese Beispielausgabe wird empfohlen, die GPU zu leeren und die VM neu zu starten. In den meisten Fällen kann es hilfreich sein, das Problem mit der Anleitung in diesem Abschnitt der Ausgabe zu beheben.
Supportfall eröffnen
Wenn Sie die Probleme nicht mithilfe der Anleitung aus der Ausgabe Ihres Diagnoselaufs dcgmi
beheben können, können Sie eine Supportanfrage eröffnen. Wenn Sie eine Supportanfrage eröffnen, müssen Sie die folgenden Informationen angeben:
- Der ausgeführte Befehl und die zurückgegebene Ausgabe.
Relevante Logdateien wie Host-Engine und Diagnoseprotokolle. Zum Erfassen der erforderlichen Logdateien können Sie das Skript
gather-dcgm-logs.sh
ausführen.Für eine Standardinstallation auf Debian- und RPM-basierten Systemen befindet sich dieses Skript in
/usr/local/dcgm/scripts
.Geben Sie bei
dcgmi diag
-Fehlern die Statistikdateien für die fehlgeschlagenen Plug-ins an. Die Statistikdatei verwendet die folgende Namenskonvention:stats_PLUGIN_NAME.json
.Wenn beispielsweise das Plug-in
pcie
fehlgeschlagen ist, fügen Sie die Dateistats_pcie.json
ein.NVIDIA-Systeminformationen und Treiberstatus Zum Erfassen dieser Informationen können Sie das Skript
nvidia-bug-report.sh
ausführen.Die Ausführung dieses Skripts hilft auch bei der zusätzlichen Fehlerbehebung, wenn das Problem durch andere NVIDIA-Abhängigkeiten und nicht durch einen Programmfehler in DCGM selbst verursacht wird.
Details zu allen kürzlich vorgenommenen Änderungen an Ihrer Umgebung, die vor dem Fehler vorgenommen wurden.
Xid-Nachrichten
Nachdem Sie eine VM mit angehängten GPUs erstellt haben, müssen Sie NVIDIA-Gerätetreiber auf Ihren GPU-VMs installieren, damit Ihre Anwendungen auf die GPUs zugreifen können. Manchmal geben diese Treiber jedoch Fehlermeldungen zurück.
Eine Xid-Meldung ist ein Fehlerbericht vom NVIDIA-Treiber, der im Kernel-Log oder im Ereignislog des Betriebssystems für Ihre Linux-VM ausgegeben wird. Diese Nachrichten werden in der Datei /var/log/messages
abgelegt.
Weitere Informationen zu Xid-Nachrichten und mögliche Ursachen finden Sie in der NVIDIA-Dokumentation.
Der folgende Abschnitt enthält Anleitungen zum Umgang mit einigen Xid-Nachrichten, die nach den häufigsten Typen gruppiert sind: GPU-Arbeitsspeicherfehler, GPU-Systemprozessor-Fehler und Fehler bezüglich ungültigen Arbeits-Speicherzugriff.
GPU-Arbeitsspeicherfehler
GPU-Arbeitsspeicher ist der Speicher, der auf einem GPU-Gerät verfügbar ist und zum temporären Speichern von Daten verwendet werden kann. Der GPU-Arbeits-Speicher ist durch den Fehlerkorrekturcode ECC geschützt, der Single-Bit-Fehler (SBE) erkennt und korrigiert und Double-Bit-Fehler (DBE) erkennt und meldet.
Vor der Veröffentlichung der NVIDIA A100-GPUs wurde die dynamische Seitendeaktivierung unterstützt. Für NVIDIA A100- und neuere GPU-Releases (z. B. NVIDIA H100) wird die Wiederherstellung nach Zeilenneuzuordnungsfehlern eingeführt. ECC ist standardmäßig aktiviert. Google empfiehlt dringend, ECC aktiviert zu lassen.
Im Folgenden sind einige häufige GPU-Arbeits-Speicherfehler und ihre empfohlenen Lösungen aufgeführt.
Xid-Fehlermeldung | Lösung |
---|---|
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
Die Nachricht enthält die folgenden Informationen: Xid 64: All reserved rows for bank are remapped
|
|
Wenn Sie mindestens zwei der folgenden Xid-Nachrichten zusammen erhalten:
Die Nachricht enthält die folgenden Informationen: Xid XX: row remap pending
|
|
Xid 92: High single-bit ECC error rate |
Diese Xid-Meldung wird zurückgegeben, nachdem der GPU-Treiber einen korrigierbaren Fehler behoben hat. Sie sollte sich nicht auf Ihre Arbeitslasten auswirken. Diese Xid-Meldung dient nur zur Information. Sie müssen nichts tun. |
Xid 94: Contained ECC error |
|
Xid 95: Uncontained ECC error |
|
Fehler im GSP
Ein GPU-Systemprozessor (GSP) ist ein Mikrocontroller, der auf GPUs ausgeführt wird und einige der Funktionen der Hardwareverwaltung auf niedriger Ebene übernimmt.
Xid-Fehlermeldung | Lösung |
---|---|
Xid 119: GSP RPC timeout |
|
Xid 120: GSP error |
Ungültiger Arbeitsspeicherzugriff-Fehler
Die folgenden Xids werden zurückgegeben, wenn Anwendungen illegale Arbeits-Speicherzugriffsprobleme haben:
Xid 13: Graphics Engine Exception
Xid 31: GPU memory page fault
Ungültiger Arbeits-Speicherzugriff-Fehler werden normalerweise dadurch verursacht, dass Arbeitslasten versuchen, auf Arbeitsspeicher zuzugreifen, der bereits freigegeben wurde oder außerhalb des zulässigen Bereichs liegt. Dies kann durch Probleme wie die Dereferenzierung eines ungültigen Zeigers oder durch ein Array außerhalb des gültigen Bereichs verursacht werden.
Um dieses Problem zu beheben, müssen Sie Ihre Anwendung debuggen. Zum Debuggen Ihrer Anwendung können Sie cuda-memcheck und CUDA-GDB verwenden.
In einigen sehr seltenen Fällen kann ein Hardwareverschlechterung dazu führen, dass Fehler zu ungültigem Arbeits-Speicherzugriff zurückgegeben werden. Verwenden Sie den NVIDIA Data Center GPU Manager (DCGM), um festzustellen, ob das Problem auf Ihre Hardware zurückzuführen ist.
Sie können dcgmi diag -r 3
oder dcgmi diag -r 4
ausführen, um verschiedene Level an Testabdeckung und -dauer auszuführen. Wenn Sie feststellen, dass das Problem auf die Hardware zurückzuführen ist, reichen Sie eine Supportanfrage beim Cloud Customer Care ein.
Weitere häufige Xid-Fehlermeldungen
Xid-Fehlermeldung | Lösung |
---|---|
Xid 74: NVLINK error |
|
Xid 79: GPU has fallen off the bus
Das bedeutet, dass der Treiber nicht mit der GPU kommunizieren kann. |
Starten Sie die VM neu. |
GPUs zurücksetzen
Bei einigen Problemen müssen Sie möglicherweise Ihre GPUs zurücksetzen. Führen Sie die folgenden Schritte aus, um GPUs zurückzusetzen:
- Bei N1-, G2- und A2-VMs starten Sie die VM neu, indem Sie
sudo reboot
ausführen. - Führen Sie für A3-VMs
sudo nvidia-smi --gpu-reset
aus.
Wenn Fehler nach dem Zurücksetzen der GPU weiterhin bestehen, müssen Sie die VM löschen und neu erstellen.
Wenn der Fehler nach einem Löschen und Neuerstellen weiterhin besteht, senden Sie eine Supportanfrage an den Cloud Customer Care, um die VM in die Reparaturphase zu verschieben.
Nächste Schritte
GPU-Maschinentypen ansehen