12 Punkte von GN⁺ 2024-03-14 | 1 Kommentare | Auf WhatsApp teilen
  • NVTop = "Neat Videocard TOP"
  • Ein Task-Monitor für GPUs und Beschleuniger
  • Verarbeitet Informationen zu mehreren GPUs und gibt sie ähnlich wie htop aus
  • Derzeit unterstützte Anbieter: AMD (Linux-amdgpu-Treiber), Apple (eingeschränkte Unterstützung für M1 & M2), Huawei (Ascend), Intel (Linux-i915-Treiber), NVIDIA (proprietärer Linux-Treiber), Qualcomm Adreno (Linux-MSM-Treiber)

NVTOP-Optionen und interaktive Befehle

  • Interaktives Einstellungsfenster: Durch Drücken von F2 steht ein Konfigurationswerkzeug zur Verfügung, mit dem sich die Oberfläche an die eigenen Anforderungen anpassen lässt.
  • Konfiguration speichern: Wenn die im Einstellungsfenster gesetzte Konfiguration mit F12 gespeichert wird, wird sie beim nächsten Start von nvtop wieder geladen.
  • NVTOP-Handbuch und Befehlsoptionen: Es gibt eine Handbuchseite (man nvtop), und die Befehlszeilenhilfe ist mit nvtop -h oder nvtop --help verfügbar.

GPU-Unterstützung

  • AMD: Unterstützung für AMD-GPUs über den amdgpu-Treiber. Prozesse, die die GPU verwenden, lassen sich ab Kernel 5.14 anzeigen.
  • Intel: Unterstützung für Intel-GPUs über den Linux-i915-Treiber. Prozesse, die die GPU verwenden, lassen sich ab Kernel 5.19 anzeigen.
  • NVIDIA: Unterstützung über die NVML-Bibliothek. GPUs vor der Kepler-Mikroarchitektur unterstützen einige Abfragen nicht.
  • Adreno: Unterstützung für Adreno-GPUs über den Linux-msm-Treiber. Prozesse, die die GPU verwenden, lassen sich ab Kernel 6.0 anzeigen.
  • Apple: Enthält erste Unterstützung für Apple über Metal. Nur bei Apple-Builds unterstützt.
  • Ascend: Unterstützung für Ascend über die DCMI-API (Version 6.0.0). Derzeit unterstützt DCMI nur einen eingeschränkten API-Umfang.

Build

  • Benötigte Bibliotheken: ncurses (Benutzeroberfläche), NVIDIA (NVML), AMD (libdrm), Intel (i915) usw.
  • Build-Prozess: Den Quellcode mit git clone klonen, mit cmake bauen und anschließend mit make install systemweit installieren.

Installationsablauf je Distribution

  • Ubuntu / Debian: Installation per snap oder apt wird unterstützt. Über ein PPA kann die neueste Version von nvtop installiert werden.
  • Fedora / Red Hat / CentOS: Installation per AppImage oder dnf wird unterstützt.
  • OpenSUSE: Installation per zypper wird unterstützt.
  • Arch Linux: Installation von nvtop per pacman.
  • Gentoo: Installation von nvtop über layman und emerge.
  • AppImage: Wird als eigenständige ausführbare Anwendung bereitgestellt. Nach Vergabe der Ausführungsrechte kann sie gestartet werden.
  • Snap: Nach der Installation mit snap install müssen Berechtigungen für Prozesssteuerung und die Abfrage von GPU-Informationen erteilt werden.
  • Docker: NVIDIA-Treiber und nvidia-docker sind erforderlich. Ausführung mit docker build und docker run.

Meinung von GN⁺

  • NVTOP unterstützt verschiedene GPU-Anbieter und ist ein leistungsfähiges Werkzeug zur GPU-Überwachung auf Linux-basierten Systemen.
  • Das Tool bietet Systemadministratoren und Entwicklern eine effektive Möglichkeit, die GPU-Auslastung in Echtzeit zu erfassen.
  • GPU-Monitoring ist besonders wichtig bei GPU-abhängigen Aufgaben wie Machine Learning, Datenanalyse und Spieleentwicklung.
  • Ein weiteres Open-Source-Projekt mit ähnlicher Funktionalität wie NVTOP ist gpustat; Nutzer können je nach Bedarf das passende Werkzeug wählen.
  • Da es sich um ein Open-Source-Projekt handelt, sind durch Beiträge der Community kontinuierliche Verbesserungen und neue Funktionen möglich.

1 Kommentare

 
GN⁺ 2024-03-14
Hacker-News-Kommentare
  • nvtop oder nvidia-smi bieten zwar einen guten Überblick über die GPU-Auslastung, spiegeln aber nicht unbedingt die tatsächliche Arbeitsgeschwindigkeit wider. Wer sich für AI-Performance interessiert, dem werden die Nsight Compute CLI zum Profiling einzelner Kernel und Nsight Systems für die Makroansicht empfohlen. Bei Verwendung von PyTorch wird der PyTorch-Profiler empfohlen.
  • Es wird Frust darüber geäußert, dass apt install nicht funktioniert. Es wird darauf hingewiesen, dass Installationsprobleme rund um NVIDIA häufig auftreten und bei einer Linux-Neuinstallation viel Zeit kosten. Kritisiert werden die vielen Ebenen und Versionskonflikte bei Treibern, CUDA, dem CUDA Toolkit, cuDNN usw., die für Verwirrung sorgen.
  • Mit Nvitop wird ein weiteres Utility vorgestellt, das von einem Nutzer bevorzugt wird.
  • nvtop und bottom werden als bevorzugte Ressourcen-Monitore unter Linux genannt, wobei geteilt wird, dass nvtop nicht nur auf NVIDIA-Geräten, sondern auch auf Nicht-NVIDIA-Geräten funktioniert.
  • btop wird bevorzugt, da es in neueren Versionen neben der allgemeinen Prozessüberwachung auch GPU-Monitoring bietet.
  • Es wird begrüßt, dass Linux-Grafikkarten-Utilities plattformübergreifend werden, und positiv bewertet, dass man sich vom früheren treiberspezifischen Ansatz entfernt.
  • Mit gpustat wird ein bevorzugtes Utility vorgestellt, das genau die Mindestinformationen liefert, um zu erkennen, ob das Training Probleme hat oder gut läuft.
  • Das eigene Projekt Zenith wird vorgestellt, das neben NVIDIA-GPU-Monitoring auch Funktionen wie Festplatten-, CPU- und Top-Überwachung kombiniert.
  • Es wird geäußert, dass die Nutzung von Home Assistant den Wunsch geweckt hat, alle Datenquellen zu integrieren. Da sich die Daten beliebig rendern lassen, wurde das Projekt sensors2mqtt entdeckt und es wird Interesse bekundet, es zu nutzen.
  • Es wird der Wunsch geäußert, dass der Nouveau-Treiber unterstützt wird.