Kurzanleitung: NVIDIA DGX Spark mit Ultralytics YOLO26

Diese umfassende Anleitung bietet eine detaillierte Übersicht für die Bereitstellung von Ultralytics YOLO26 auf der NVIDIA DGX Spark, NVIDIAs kompaktem KI-Supercomputer für den Schreibtisch. Zusätzlich zeigt sie Leistungs-Benchmarks, um die Fähigkeiten von YOLO26 auf diesem leistungsstarken System zu demonstrieren.

NVIDIA DGX Spark AI workstation overview

Hinweis

Diese Anleitung wurde mit der NVIDIA DGX Spark Founders Edition getestet, die mit einem auf Ubuntu basierenden DGX OS läuft. Sie sollte auch mit den neuesten DGX OS-Versionen funktionieren.

Was ist NVIDIA DGX Spark?

NVIDIA DGX Spark ist ein kompakter KI-Supercomputer für den Schreibtisch, der vom NVIDIA GB10 Grace Blackwell Superchip angetrieben wird. Er liefert bis zu 1 PetaFLOP an KI-Rechenleistung mit FP4-Präzision und ist damit ideal für Entwickler, Forscher und Datenwissenschaftler, die leistungsstarke KI-Funktionen in einem kompakten Desktop-Format benötigen.



Watch: How to Get up to 1000 FPS with Ultralytics YOLO26 on NVIDIA DGX Spark | TensorRT & Batch Inference

Wichtige Spezifikationen

SpezifikationDetails
KI-LeistungBis zu 1 PFLOP (FP4)
GPUNVIDIA Blackwell-Architektur mit Tensor Cores der 5. Generation, RT Cores der 4. Generation
CPU20-Kern Arm-Prozessor (10 Cortex-X925 + 10 Cortex-A725)
Speicher128 GB LPDDR5x vereinheitlichter Systemspeicher, 256-Bit-Schnittstelle, 4266 MHz, 273 GB/s Bandbreite
Speicher1 TB oder 4 TB NVMe M.2 mit Selbstverschlüsselung
Netzwerk1x RJ-45 (10 GbE), ConnectX-7 Smart NIC, Wi-Fi 7, Bluetooth 5.4
Konnektivität4x USB Type-C, 1x HDMI 2.1a, HDMI-Mehrkanal-Audio
Videoverarbeitung1x NVENC, 1x NVDEC

DGX OS

NVIDIA DGX OS ist eine angepasste Linux-Distribution, die ein stabiles, getestetes und unterstütztes Betriebssystem-Fundament für die Ausführung von KI-, Machine Learning- und Analyseanwendungen auf DGX-Systemen bereitstellt. Es enthält:

  • Ein robustes Linux-Fundament, optimiert für KI-Workloads
  • Vorkonfigurierte Treiber und Systemeinstellungen für NVIDIA-Hardware
  • Sicherheitsupdates und Funktionen zur Systemwartung
  • Kompatibilität mit dem breiteren NVIDIA-Software-Ökosystem

DGX OS folgt einem regelmäßigen Veröffentlichungszyklus, wobei Updates typischerweise zweimal jährlich (etwa im Februar und August) bereitgestellt werden, zusätzlich zu Sicherheits-Patches zwischen den Hauptversionen.

DGX Dashboard

DGX Spark verfügt über ein integriertes DGX Dashboard, das Folgendes bietet:

  • Echtzeit-Systemüberwachung: Übersicht über die aktuellen Betriebskennzahlen des Systems
  • Systemupdates: Möglichkeit, Updates direkt über das Dashboard anzuwenden
  • Systemeinstellungen: Gerätenamen und andere Konfigurationen ändern
  • Integriertes JupyterLab: Zugriff auf lokale Jupyter Notebooks für die Entwicklung

NVIDIA DGX management dashboard interface

Zugriff auf das Dashboard

Klicke auf die Schaltfläche "Apps anzeigen" unten links auf dem Ubuntu-Desktop und wähle dann "DGX Dashboard", um es in deinem Browser zu öffnen.

Integriertes JupyterLab

Das Dashboard enthält eine integrierte JupyterLab-Instanz, die beim Start automatisch eine virtuelle Umgebung erstellt und empfohlene Pakete installiert. Jedem Benutzerkonto wird ein dedizierter Port für den JupyterLab-Zugriff zugewiesen.

Schnellstart mit Docker

Der schnellste Weg, mit Ultralytics YOLO26 auf NVIDIA DGX Spark zu starten, ist die Verwendung vorgefertigter Docker-Images. Dasselbe Docker-Image, das Jetson AGX Thor (JetPack 7.0) unterstützt, funktioniert auch auf DGX Spark mit DGX OS.

t=ultralytics/ultralytics:latest-nvidia-arm64
sudo docker pull $t && sudo docker run -it --ipc=host --runtime=nvidia --gpus all $t

Sobald dies erledigt ist, springe zum Abschnitt Verwendung von TensorRT auf NVIDIA DGX Spark.

Start mit nativer Installation

Für eine native Installation ohne Docker, folge diesen Schritten.

Installiere das Ultralytics-Paket

Hier installieren wir das Ultralytics-Paket auf DGX Spark mit optionalen Abhängigkeiten, damit wir die PyTorch-Modelle in andere Formate exportieren können. Wir konzentrieren uns hauptsächlich auf NVIDIA TensorRT-Exporte, da TensorRT sicherstellt, dass wir die maximale Leistung aus der DGX Spark herausholen.

  1. Paketliste aktualisieren, pip installieren und auf die neueste Version upgraden

    sudo apt update
    sudo apt install python3-pip -y
    pip install -U pip
  2. Installiere das ultralytics pip-Paket mit optionalen Abhängigkeiten

    pip install ultralytics[export]
  3. Starte das Gerät neu

    sudo reboot

Installiere PyTorch und Torchvision

Die obige Ultralytics-Installation installiert Torch und Torchvision. Diese via pip installierten Pakete sind jedoch möglicherweise nicht vollständig für die ARM64-Architektur der DGX Spark mit CUDA 13 optimiert. Daher empfehlen wir die Installation der CUDA 13-kompatiblen Versionen:

pip install torch torchvision --index-url https://download.pytorch.org/whl/cu130
Info

Wenn du PyTorch 2.9.1 auf NVIDIA DGX Spark ausführst, erhältst du möglicherweise die folgende UserWarning bei der Initialisierung von CUDA (z. B. beim Ausführen von yolo checks, yolo predict, etc.):

UserWarning: Found GPU0 NVIDIA GB10 which is of cuda capability 12.1.
Minimum and Maximum cuda capability supported by this version of PyTorch is (8.0) - (12.0)

Diese Warnung kann sicher ignoriert werden. Um dies dauerhaft zu beheben, wurde ein Fix im PyTorch PR #164590 eingereicht, der in der PyTorch 2.10-Version enthalten sein wird.

Installiere onnxruntime-gpu

Das in PyPI gehostete Paket onnxruntime-gpu enthält keine aarch64-Binärdateien für ARM64-Systeme. Daher müssen wir dieses Paket manuell installieren. Dieses Paket wird für einige Exporte benötigt.

Hier laden wir onnxruntime-gpu 1.24.0 mit Python3.12-Unterstützung herunter und installieren es.

pip install https://github.com/ultralytics/assets/releases/download/v0.0.0/onnxruntime_gpu-1.24.0-cp312-cp312-linux_aarch64.whl

Verwendung von TensorRT auf NVIDIA DGX Spark

Von allen von Ultralytics unterstützten Modellexportformaten bietet TensorRT die höchste Inferenzleistung auf NVIDIA DGX Spark, was es zu unserer Top-Empfehlung für Bereitstellungen macht. Für Einrichtungsanweisungen und fortgeschrittene Nutzung, siehe unsere dedizierte TensorRT-Integrationsanleitung.

Modell in TensorRT konvertieren und Inferenz ausführen

Das YOLO26n-Modell im PyTorch-Format wird in TensorRT konvertiert, um Inferenz mit dem exportierten Modell auszuführen.

Beispiel
from ultralytics import YOLO

# Load a YOLO26n PyTorch model
model = YOLO("yolo26n.pt")

# Export the model to TensorRT
model.export(format="engine")  # creates 'yolo26n.engine'

# Load the exported TensorRT model
trt_model = YOLO("yolo26n.engine")

# Run inference
results = trt_model("https://ultralytics.com/images/bus.jpg")
Hinweis

Besuche die Export-Seite, um auf zusätzliche Argumente beim Exportieren von Modellen in verschiedene Formate zuzugreifen

NVIDIA DGX Spark YOLO11 Benchmarks

YOLO11-Benchmarks wurden vom Ultralytics-Team für mehrere Modellformate durchgeführt, wobei Geschwindigkeit und Genauigkeit gemessen wurden: PyTorch, TorchScript, ONNX, OpenVINO, TensorRT, TF SavedModel, TF GraphDef, TF Lite, MNN, NCNN, ExecuTorch. Die Benchmarks wurden auf NVIDIA DGX Spark bei FP32-Präzision mit einer Standard-Eingabebildgröße von 640 durchgeführt.

Detaillierte Vergleichstabelle

Die untenstehende Tabelle zeigt die Benchmark-Ergebnisse für fünf verschiedene Modelle (YOLO11n, YOLO11s, YOLO11m, YOLO11l, YOLO11x) über mehrere Formate hinweg und gibt uns den Status, die Größe, den mAP50-95(B)-Messwert und die Inferenzzeit für jede Kombination an.

Leistung
FormatStatusGröße auf dem Datenträger (MB)mAP50-95(B)Inferenzzeit (ms/im)
PyTorch5.40.50712.67
TorchScript10.50.50832.62
ONNX10.20.50745.92
OpenVINO10.40.505814.95
TensorRT (FP32)12.80.50851.95
TensorRT (FP16)7.00.50681.01
TensorRT (INT8)18.60.48801.62
TF SavedModel25.70.507636.39
TF GraphDef10.30.507641.06
TF Lite10.30.507564.36
MNN10.10.507512.14
NCNN10.20.504112.31
ExecuTorch10.20.507527.61

Benchmarked mit Ultralytics 8.3.249

Reproduziere unsere Ergebnisse

Um die oben genannten Ultralytics-Benchmarks für alle Export-Formate zu reproduzieren, führe diesen Code aus:

Beispiel
from ultralytics import YOLO

# Load a YOLO26n PyTorch model
model = YOLO("yolo26n.pt")

# Benchmark YOLO26n speed and accuracy on the COCO128 dataset for all export formats
results = model.benchmark(data="coco128.yaml", imgsz=640)

Beachte, dass die Benchmark-Ergebnisse je nach genauer Hardware- und Softwarekonfiguration eines Systems sowie der aktuellen Systemauslastung zum Zeitpunkt der Benchmark-Ausführung variieren können. Für die zuverlässigsten Ergebnisse verwende einen Datensatz mit einer großen Anzahl von Bildern, z. B. data='coco.yaml' (5000 val-Bilder).

Best Practices für NVIDIA DGX Spark

Bei der Verwendung von NVIDIA DGX Spark gibt es einige Best Practices, die du befolgen solltest, um die maximale Leistung beim Ausführen von YOLO26 zu erzielen.

  1. Systemleistung überwachen

    Verwende die Monitoring-Tools von NVIDIA, um die GPU- und CPU-Auslastung zu verfolgen:

    nvidia-smi
  2. Speichernutzung optimieren

    Mit 128 GB Unified Memory kann DGX Spark große Batch-Größen und Modelle verarbeiten. Erwäge eine Erhöhung der Batch-Größe für einen verbesserten Durchsatz:

    from ultralytics import YOLO
    
    model = YOLO("yolo26n.engine")
    results = model.predict(source="path/to/images", batch=16)
  3. Verwende TensorRT mit FP16 oder INT8

    Für die beste Leistung exportiere Modelle mit FP16- oder INT8-Präzision:

    yolo export model=yolo26n.pt format=engine half=True # FP16
    yolo export model=yolo26n.pt format=engine int8=True # INT8

System-Updates (Founders Edition)

Dein DGX Spark Founders Edition auf dem neuesten Stand zu halten, ist entscheidend für Leistung und Sicherheit. NVIDIA bietet zwei primäre Methoden zum Aktualisieren des System-OS, der Treiber und der Firmware.

Verwendung des DGX Dashboards (Empfohlen)

Das DGX Dashboard ist die empfohlene Methode, um System-Updates durchzuführen und Kompatibilität sicherzustellen. Es ermöglicht dir:

  • Verfügbare System-Updates anzeigen
  • Sicherheitspatches und System-Updates installieren
  • NVIDIA-Treiber- und Firmware-Updates verwalten

Manuelle System-Updates

Für fortgeschrittene Benutzer können Updates manuell über das Terminal durchgeführt werden:

sudo apt update
sudo apt dist-upgrade
sudo fwupdmgr refresh
sudo fwupdmgr upgrade
sudo reboot
Warnung

Stelle sicher, dass dein System an eine stabile Stromquelle angeschlossen ist und du wichtige Daten gesichert hast, bevor du Updates durchführst.

Nächste Schritte

Für weiteres Lernen und Unterstützung siehe die Ultralytics YOLO26 Docs.

FAQ

Wie implementiere ich Ultralytics YOLO26 auf NVIDIA DGX Spark?

Die Implementierung von Ultralytics YOLO26 auf NVIDIA DGX Spark ist unkompliziert. Du kannst das vorgefertigte Docker-Image für eine schnelle Einrichtung verwenden oder die erforderlichen Pakete manuell installieren. Detaillierte Schritte für jeden Ansatz findest du in den Abschnitten Quick Start mit Docker und Start mit nativer Installation.

Welche Leistung kann ich von YOLO26 auf NVIDIA DGX Spark erwarten?

YOLO26-Modelle liefern eine hervorragende Leistung auf DGX Spark dank des GB10 Grace Blackwell Superchips. Das TensorRT-Format bietet die beste Inferenzleistung. Überprüfe den Abschnitt Detaillierte Vergleichstabelle für spezifische Benchmark-Ergebnisse für verschiedene Modellgrößen und -formate.

Warum sollte ich TensorRT für YOLO26 auf DGX Spark verwenden?

TensorRT wird für die Implementierung von YOLO26-Modellen auf DGX Spark aufgrund seiner optimalen Leistung dringend empfohlen. Es beschleunigt die Inferenz durch die Nutzung der Blackwell GPU-Fähigkeiten und sorgt für maximale Effizienz und Geschwindigkeit. Erfahre mehr im Abschnitt Verwende TensorRT auf NVIDIA DGX Spark.

Wie schneidet DGX Spark im Vergleich zu Jetson-Geräten für YOLO26 ab?

DGX Spark bietet deutlich mehr Rechenleistung als Jetson-Geräte mit bis zu 1 PFLOP an KI-Leistung und 128 GB Unified Memory, verglichen mit den 2070 TFLOPS und 128 GB Speicher des Jetson AGX Thor. DGX Spark ist als Desktop-KI-Supercomputer konzipiert, während Jetson-Geräte eingebettete Systeme sind, die für die Edge-Bereitstellung optimiert sind.

Kann ich dasselbe Docker-Image für DGX Spark und Jetson AGX Thor verwenden?

Ja! Das Docker-Image ultralytics/ultralytics:latest-nvidia-arm64 unterstützt sowohl NVIDIA DGX Spark (mit DGX OS) als auch Jetson AGX Thor (mit JetPack 7.0), da beide die ARM64-Architektur mit CUDA 13 und ähnlichen Software-Stacks verwenden.

Kommentare