GPU-Server-Monitoring mit Hardware-Gesundheit
Jede Karte einzeln: Auslastung, Speicher, Temperatur, Leistung und Takt. Dazu das, was ein Training wirklich stoppt: Xid-Fehler aus dem Kernel-Log, ECC-Fehler, Row Remapping, ein PCIe-Link unter Soll, thermische Drosselung, eine Karte, die vom Bus gefallen ist. Und die Frage, die jeder Cluster stellt: Welche GPU steht seit wann still, und wer hält sie?
GPU-Server-Monitoring mit PeakNode liest jede Karte einzeln über nvidia-smi und das Kernel-Log: Auslastung, Speicher, Temperatur, Leistung, Takt, dazu Xid-Ereignisse, ECC, Row Remapping, PCIe-Link und Drosselgrund, sofern die Karte die Felder liefert. Die gemessene Leistung wird zu kWh und Euro integriert. Ein Knoten mit acht GPUs ist ein Server-Monitor.
- Verifiziert auf einem 8-GPU-HGX-Knoten (H100, NVLink), B300 mit MIG und RTX PRO 6000 Blackwell.
- Alarm bei fehlender Karte, hängendem Treiber, Leerlauf und Schwellwerten.
- Agent sendet nur, von innen nach außen, ein Token je Knoten.
| GPU | Auslastung | Speicher | Temperatur | Leistung | Takt |
|---|---|---|---|---|---|
| 0 · NVIDIA H100 80GB HBM3 (unter Last) | 100 % | 3,6 / 79,6 GiB | 55 °C | 699 / 700 W | 1.935 MHz |
| 1 · NVIDIA H100 80GB HBM3 (Leerlauf) | 0 % | 0,0 / 79,6 GiB | 24 °C | 69 / 700 W | 345 MHz |
| 3 · NVIDIA H100 80GB HBM3 (unter Last) | 100 % | 3,6 / 79,6 GiB | 52 °C | 698 / 700 W | 1.905 MHz |
| 7 · NVIDIA H100 80GB HBM3 (unter Last) | 100 % | 3,6 / 79,6 GiB | 56 °C | 697 / 700 W | 1.965 MHz |
Was PeakNode auf GPU-Servern überwacht
Ein Prozentwert „GPU-Auslastung" sagt nur, dass ein Kernel lief. Betreiber brauchen mehr: Leistungsaufnahme gegen Limit, Drosselgrund, Fehlerzähler und die Antwort, ob eine Karte überhaupt noch da ist.
Hardware-Ereignisse mit Schweregrad
Xid-Meldungen aus dem Kernel-Log (journalctl oder dmesg) werden der Karte über die PCI-Adresse zugeordnet und nach Code eingestuft: Xid 79 (Karte vom Bus), 48 (Double-Bit-ECC), 94/95 (ECC contained/uncontained), 74 (NVLink) und weitere gelten als kritisch, Anwendungsfehler wie Xid 13 oder 31 als Hinweis. Kritische Ereignisse und Warnungen lösen eine Benachrichtigung aus.
ECC und Row Remapping
Korrigierte und unkorrigierbare ECC-Fehler seit Treiberstart je GPU, dazu Row Remapping ab Ampere: ausstehend heißt Reset nötig, fehlgeschlagen heißt Service. Neue unkorrigierbare Fehler werden als kritisches Ereignis gemeldet.
Drosselgrund statt nur Temperatur
Ob eine Karte wegen Hitze, Power Cap oder Hardware-Slowdown drosselt, steht im Portal. Thermische Drosselung über drei Meldungen in Folge erzeugt eine Warnung. Dazu HBM-Temperatur und Takt gegenüber dem Maximum, sofern der Treiber die Werte liefert.
Leerlauf seit, Prozesse je GPU
Jede GPU unter 5 % Auslastung zeigt, seit wann sie still steht. Prozesse je GPU mit Nutzer, PID und belegtem Speicher aus nvidia-smi zeigen, wer eine Karte hält. Ein Alarm „GPU länger als X Minuten im Leerlauf" ist einstellbar.
Energie in kWh und Euro
Die gemeldete Boardleistung wird über die Zeit integriert: heute, dieser Monat, gewählter Zeitraum, seit Einrichtung. Mit hinterlegtem Strompreis als Kosten. Es ist die GPU-Energie, nicht die des ganzen Knotens, und das steht auch dabei.
Fehlende Karte, hängender Treiber
Meldet ein Knoten weniger GPUs als erwartet, ist das ein kritisches Ereignis. Antwortet nvidia-smi nicht mehr, läuft der Agent trotzdem weiter, meldet den Treiberfehler, und das Portal behält die letzten bekannten Werte statt Nullen zu zeigen.
Was gemessen wird
Der Agent ist ein Shell-Skript, das per Cron läuft und nur sendet. Jede Abfrage an den Treiber hat ein Timeout, damit ein hängender Treiber den Agenten nicht blockiert. Was eine Quelle nicht liefert, erscheint als „-", nie als Null.
| Messwert | Quelle auf dem Server | Stand der Verifikation |
|---|---|---|
| Auslastung, Speicher, Temperatur, Leistung und Limit, Takt, Lüfter, Treiber je GPU | nvidia-smi --query-gpu | auf RTX PRO 6000 Blackwell, 8× H100 SXM und B300 gegen nvidia-smi geprüft |
| MIG-Instanzen: Profil, Speicher, SM-Anzahl | nvidia-smi -q, nvidia-smi -L | auf B300 mit MIG 1g.34gb geprüft; Auslastung je Instanz liefert der Treiber nicht, daher „-" |
| Xid-Ereignisse mit Code, Zeitpunkt und PCI-Adresse | journalctl -k, ersatzweise dmesg | Parser mit dokumentierten Kernel-Log-Formaten getestet; wartet auf ein reales Ereignis in der nächsten Testreihe |
| ECC korrigiert/unkorrigierbar, Row Remapping, PCIe-Generation und -Breite, Drosselgründe, HBM-Temperatur, Max-Takt | nvidia-smi --query-gpu, --query-remapped-rows | Feldnamen laut NVIDIA-Dokumentation; der Agent prüft die Feldzahl und lässt Werte weg, die ein Treiber nicht kennt. Hardware-Verifikation auf H100 folgt |
| Prozesse je GPU: PID, Name, Speicher, Nutzer | nvidia-smi --query-compute-apps, ps | Parser getestet; in Containern sind nur Prozesse des eigenen Namespace sichtbar |
| Leerlauf seit, Energie in Wh | aus den Meldungen berechnet | Berechnung mit simulierten Meldungen geprüft (Trapezregel über die Leistung) |
| CPU, RAM, Swap, Festplatte, Netzwerk, System | /proc, df, cgroup v1/v2 in Containern | auf Bare Metal und in RunPod-Containern geprüft |
Alarme sind auf CPU, RAM, Swap, Festplatte, GPU-Auslastung, GPU-Speicher, GPU-Temperatur und GPU-Leerlauf einstellbar, wahlweise erst nach mehreren Messungen in Folge. Hardware-Ereignisse, Offline und Rückkehr werden ohne Schwellwert gemeldet.
Einrichtung in drei Schritten
Kein Dienst, kein offener Port, keine Firewall-Regel nach innen. Der Server sendet, das Portal empfängt.
Server-Monitor anlegen
Registrieren, „Server-Monitoring" öffnen, einen Monitor je Knoten anlegen und das Messintervall wählen.
Eine Zeile auf dem Server ausführen
Der Install-Befehl aus dem Portal lädt das Agent-Skript mit dem Token dieses Knotens, setzt die Rechte auf 700 und trägt es in die Crontab ein. Für Kernel-Log und Prozesse anderer Nutzer sollte der Cron als root laufen.
Kanäle und Alarme festlegen
Ab der ersten Meldung sehen Sie alle GPUs. Wählen Sie, wohin Ereignisse gehen: E-Mail, Microsoft Teams, Slack, Discord, Telegram, Webhook und weitere.
Häufige Fragen
PeakNode für Ihren Anwendungsfall
Den ersten GPU-Knoten in fünf Minuten im Portal
Konto anlegen, Monitor erstellen, eine Zeile auf dem Server ausführen.
Jetzt starten