Schnellstartanleitung: NVIDIA Spark mit Ultralytics YOLO11
Dieser umfassende Leitfaden enthält eine detaillierte Anleitung für die Bereitstellung von Ultralytics YOLO11 NVIDIA Spark, dem kompakten Desktop-KI-Supercomputer NVIDIA. Darüber hinaus werden Leistungsbenchmarks vorgestellt, um die Fähigkeiten von YOLO11 diesem leistungsstarken System zu demonstrieren.

Hinweis
Dieser Leitfaden wurde mit NVIDIA Spark Founders Edition unter DGX OS auf Basis von Ubuntu getestet. Es wird davon ausgegangen, dass er mit den neuesten DGX OS-Versionen funktioniert.
Was ist NVIDIA Spark?
NVIDIA Spark ist ein kompakter Desktop-KI-Supercomputer, der mit dem NVIDIA Grace Blackwell Superchip betrieben wird. Er liefert eine KI-Rechenleistung von bis zu 1 PetaFLOP mit FP4-Genauigkeit und ist damit ideal für Entwickler, Forscher und Datenwissenschaftler, die leistungsstarke KI-Funktionen in einem Desktop-Formfaktor benötigen.
Wichtige Spezifikationen
| Spezifikation | Details |
|---|---|
| KI-Leistung | Bis zu 1 PFLOP (FP4) |
| GPU | NVIDIA -Architektur mit Tensor der 5. Generation und RT-Kernen der 4. Generation |
| CPU | 20-Kern-Arm-Prozessor (10 Cortex-X925 + 10 Cortex-A725) |
| Arbeitsspeicher | 128 GB LPDDR5x einheitlicher Systemspeicher, 256-Bit-Schnittstelle, 4266 MHz, 273 GB/s Bandbreite |
| Lagerung | 1 TB oder 4 TB NVMe M.2 mit Selbstverschlüsselung |
| Netzwerk | 1x RJ-45 (10 GbE), ConnectX-7 Smart NIC, Wi-Fi 7, Bluetooth 5.4 |
| Konnektivität | 4x USB Typ C, 1x HDMI 2.1a, HDMI-Mehrkanal-Audio |
| Videoverarbeitung | 1x NVENC, 1x NVDEC |
DGX-Betriebssystem
NVIDIA OS ist eine angepasste Linux-Distribution, die eine stabile, getestete und unterstützte Betriebssystemgrundlage für die Ausführung von KI-, Machine-Learning- und Analyseanwendungen auf DGX-Systemen bietet. Sie umfasst:
- Eine robuste Linux-Grundlage, optimiert für KI-Workloads
- Vorkonfigurierte Treiber und Systemeinstellungen für NVIDIA
- Sicherheitsupdates und Systemwartungsfunktionen
- Kompatibilität mit dem umfassenden NVIDIA -Ökosystem
DGX OS folgt einem regelmäßigen Release-Zeitplan mit Updates, die in der Regel zweimal pro Jahr (etwa im Februar und August) bereitgestellt werden, wobei zwischen den Hauptreleases zusätzliche Sicherheitspatches bereitgestellt werden.
DGX-Dashboard
DGX Spark verfügt über ein integriertes DGX-Dashboard, das Folgendes bietet:
- Echtzeit-Systemüberwachung: Übersicht über die aktuellen Betriebskennzahlen des Systems
- Systemaktualisierungen: Möglichkeit, Aktualisierungen direkt über das Dashboard anzuwenden
- Systemeinstellungen: Ändern Sie den Gerätenamen und andere Konfigurationen.
- Integriertes JupyterLab: Zugriff auf lokale Jupyter-Notebooks für die Entwicklung

Zugriff auf das Dashboard
Klicken Sie auf die Schaltfläche „Apps anzeigen“ in der unteren linken Ecke des Ubuntu-Desktops und wählen Sie dann „DGX Dashboard“, um es in Ihrem Browser zu öffnen.
# Open an SSH tunnel
ssh -L 11000:localhost:11000 <username>@<IP or spark-abcd.local>
# Then open in browser
# http://localhost:11000
Nachdem Sie eine Verbindung mit NVIDIA hergestellt haben, klicken Sie auf die Schaltfläche „DGX Dashboard“, um das Dashboard unter http://localhost:11000.
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 Zugriff auf JupyterLab zugewiesen.
Schnellstart mit Docker
Der schnellste Weg, um mit Ultralytics YOLO11 NVIDIA Spark zu beginnen, ist die Verwendung vorgefertigter Docker-Images. Das gleiche 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
Nachdem dies erledigt ist, fahren Sie mit dem Abschnitt TensorRT NVIDIA Spark verwenden“ fort.
Starten Sie mit der nativen Installation
Für eine native Installation ohne Docker führen Sie die folgenden Schritte aus.
Ultralytics-Paket installieren
Hier installieren wir Ultralytics auf DGX Spark mit optionalen Abhängigkeiten, damit wir das PyTorch Modelle in andere Formate exportieren können. Wir werden uns hauptsächlich auf NVIDIA TensorRT konzentrieren, da TensorRT wir die maximale Leistung aus DGX Spark herausholen können.
Paketliste aktualisieren, pip installieren und auf die neueste Version aktualisieren
sudo apt update sudo apt install python3-pip -y pip install -U pipInstallieren
ultralyticspip-Paket mit optionalen Abhängigkeitenpip install ultralytics[export]Gerät neu starten
sudo reboot
PyTorch und Torchvision installieren
Die oben genannte ultralytics installiert Torch Torchvision. Diese über pip installierten Pakete sind jedoch möglicherweise nicht vollständig für die ARM64-Architektur des DGX Spark mit CUDA optimiert. Daher empfehlen wir die Installation der CUDA -kompatiblen Versionen:
pip install torch torchvision --index-url https://download.pytorch.org/whl/cu130
Info
Wenn Sie PyTorch .9. PyTorch auf NVIDIA Spark ausführen, kann es zu folgenden Problemen kommen: UserWarning beim Initialisieren von CUDA z. B. beim Ausführen von yolo checks, yolo predictusw.):
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 getrost ignoriert werden. Um dieses Problem dauerhaft zu beheben, wurde in PyTorch #164590 ein Fix eingereicht, der in die Version PyTorch .10 aufgenommen wird.
Installieren onnxruntime-gpu
Die onnxruntime-gpu Das in PyPI gehostete Paket hat keine aarch64 Binärdateien für ARM64-Systeme. Daher müssen wir dieses Paket manuell installieren. Dieses Paket wird für einige der Exporte benötigt.
Hier werden wir herunterladen und installieren onnxruntime-gpu 1.24.0 mit Python3.12 Unterstützung.
pip install https://github.com/ultralytics/assets/releases/download/v0.0.0/onnxruntime_gpu-1.24.0-cp312-cp312-linux_aarch64.whl
Verwenden Sie TensorRT NVIDIA Spark
Unter allen von Ultralytics unterstützten Modell-Exportformaten TensorRT die höchste Inferenzleistung auf NVIDIA Spark und ist daher unsere erste Empfehlung für Implementierungen. Anweisungen zur Einrichtung und zur erweiterten Nutzung finden Sie in unserem speziellen TensorRT .
Modell in TensorRT konvertieren und Inferenz ausführen
Das YOLO11n-Modell im PyTorch-Format wird in TensorRT konvertiert, um Inferenz mit dem exportierten Modell auszuführen.
Beispiel
from ultralytics import YOLO
# Load a YOLO11n PyTorch model
model = YOLO("yolo11n.pt")
# Export the model to TensorRT
model.export(format="engine") # creates 'yolo11n.engine'
# Load the exported TensorRT model
trt_model = YOLO("yolo11n.engine")
# Run inference
results = trt_model("https://ultralytics.com/images/bus.jpg")
# Export a YOLO11n PyTorch model to TensorRT format
yolo export model=yolo11n.pt format=engine # creates 'yolo11n.engine'
# Run inference with the exported model
yolo predict model=yolo11n.engine source='https://ultralytics.com/images/bus.jpg'
Hinweis
Besuchen Sie die Export-Seite, um auf zusätzliche Argumente beim Exportieren von Modellen in verschiedene Modellformate zuzugreifen.
NVIDIA Spark YOLO11
Das Ultralytics führte YOLO11 für mehrere Modellformate durch, um Geschwindigkeit und Genauigkeit zu messen: PyTorch, TorchScript, ONNX, OpenVINO, TensorRT, TF SavedModel, TF GraphDef, TF , MNN, NCNN, ExecuTorch. Die Benchmarks wurden auf NVIDIA Spark mit FP32-Genauigkeit und einer Standard-Eingabebildgröße von 640 durchgeführt.
Detaillierte Vergleichstabelle
Die folgende Tabelle zeigt die Benchmark-Ergebnisse für fünf verschiedene Modelle (YOLO11n, YOLO11s, YOLO11m, YOLO11l, YOLO11x) in verschiedenen Formaten und gibt Auskunft über den Status, die Größe, die Metrik mAP50(B) und die Inferenzzeit für jede Kombination.
Performance
| Format | Status | Größe auf der Festplatte (MB) | mAP50-95(B) | Inferenzzeit (ms/Bild) |
|---|---|---|---|---|
| PyTorch | ✅ | 5.4 | 0.5071 | 2.67 |
| TorchScript | ✅ | 10.5 | 0.5083 | 2.62 |
| ONNX | ✅ | 10.2 | 0.5074 | 5.92 |
| OpenVINO | ✅ | 10.4 | 0.5058 | 14.95 |
| TensorRT (FP32) | ✅ | 12.8 | 0.5085 | 1.95 |
| TensorRT (FP16) | ✅ | 7.0 | 0.5068 | 1.01 |
| TensorRT (INT8) | ✅ | 18.6 | 0.4880 | 1.62 |
| TF SavedModel | ✅ | 25.7 | 0.5076 | 36.39 |
| TF GraphDef | ✅ | 10.3 | 0.5076 | 41.06 |
| TF Lite | ✅ | 10.3 | 0.5075 | 64.36 |
| MNN | ✅ | 10.1 | 0.5075 | 12.14 |
| NCNN | ✅ | 10.2 | 0.5041 | 12.31 |
| ExecuTorch | ✅ | 10.2 | 0.5075 | 27.61 |
| Format | Status | Größe auf der Festplatte (MB) | mAP50-95(B) | Inferenzzeit (ms/Bild) |
|---|---|---|---|---|
| PyTorch | ✅ | 18.4 | 0.5767 | 5.38 |
| TorchScript | ✅ | 36.5 | 0.5781 | 5.48 |
| ONNX | ✅ | 36.3 | 0.5784 | 8.17 |
| OpenVINO | ✅ | 36.4 | 0.5809 | 27.12 |
| TensorRT (FP32) | ✅ | 39.8 | 0.5783 | 3.59 |
| TensorRT (FP16) | ✅ | 20.1 | 0.5800 | 1.85 |
| TensorRT (INT8) | ✅ | 17.5 | 0.5664 | 1.88 |
| TF SavedModel | ✅ | 90.8 | 0.5782 | 66.63 |
| TF GraphDef | ✅ | 36.3 | 0.5782 | 71.67 |
| TF Lite | ✅ | 36.3 | 0.5782 | 187.36 |
| MNN | ✅ | 36.2 | 0.5775 | 27.05 |
| NCNN | ✅ | 36.2 | 0.5806 | 26.26 |
| ExecuTorch | ✅ | 36.2 | 0.5782 | 54.73 |
| Format | Status | Größe auf der Festplatte (MB) | mAP50-95(B) | Inferenzzeit (ms/Bild) |
|---|---|---|---|---|
| PyTorch | ✅ | 38.8 | 0.6254 | 11.14 |
| TorchScript | ✅ | 77.3 | 0.6304 | 12.00 |
| ONNX | ✅ | 76.9 | 0.6304 | 13.83 |
| OpenVINO | ✅ | 77.1 | 0.6284 | 62.44 |
| TensorRT (FP32) | ✅ | 79.9 | 0.6305 | 6.96 |
| TensorRT (FP16) | ✅ | 40.6 | 0.6313 | 3.14 |
| TensorRT (INT8) | ✅ | 26.6 | 0.6204 | 3.30 |
| TF SavedModel | ✅ | 192.4 | 0.6306 | 139.85 |
| TF GraphDef | ✅ | 76.9 | 0.6306 | 146.76 |
| TF Lite | ✅ | 76.9 | 0.6306 | 568.18 |
| MNN | ✅ | 76.8 | 0.6306 | 67.67 |
| NCNN | ✅ | 76.8 | 0.6308 | 60.49 |
| ExecuTorch | ✅ | 76.9 | 0.6306 | 120.37 |
| Format | Status | Größe auf der Festplatte (MB) | mAP50-95(B) | Inferenzzeit (ms/Bild) |
|---|---|---|---|---|
| PyTorch | ✅ | 49.0 | 0.6366 | 13.95 |
| TorchScript | ✅ | 97.6 | 0.6399 | 15.67 |
| ONNX | ✅ | 97.0 | 0.6399 | 16.62 |
| OpenVINO | ✅ | 97.3 | 0.6377 | 78.80 |
| TensorRT (FP32) | ✅ | 99.2 | 0.6407 | 8.86 |
| TensorRT (FP16) | ✅ | 50.8 | 0.6350 | 3.85 |
| TensorRT (INT8) | ✅ | 32.5 | 0.6224 | 4.52 |
| TF SavedModel | ✅ | 242.7 | 0.6409 | 187.45 |
| TF GraphDef | ✅ | 97.0 | 0.6409 | 193.92 |
| TF Lite | ✅ | 97.0 | 0.6409 | 728.61 |
| MNN | ✅ | 96.9 | 0.6369 | 85.21 |
| NCNN | ✅ | 96.9 | 0.6373 | 77.62 |
| ExecuTorch | ✅ | 97.0 | 0.6409 | 153.56 |
| Format | Status | Größe auf der Festplatte (MB) | mAP50-95(B) | Inferenzzeit (ms/Bild) |
|---|---|---|---|---|
| PyTorch | ✅ | 109.3 | 0.6992 | 23.19 |
| TorchScript | ✅ | 218.1 | 0.6900 | 25.75 |
| ONNX | ✅ | 217.5 | 0.6900 | 27.43 |
| OpenVINO | ✅ | 217.8 | 0.6872 | 149.44 |
| TensorRT (FP32) | ✅ | 222.7 | 0.6902 | 13.87 |
| TensorRT (FP16) | ✅ | 111.1 | 0.6883 | 6.19 |
| TensorRT (INT8) | ✅ | 62.9 | 0.6793 | 6.62 |
| TF SavedModel | ✅ | 543.9 | 0.6900 | 335.10 |
| TF GraphDef | ✅ | 217.5 | 0.6900 | 348.86 |
| TF Lite | ✅ | 217.5 | 0.6900 | 1578.66 |
| MNN | ✅ | 217.3 | 0.6874 | 168.95 |
| NCNN | ✅ | 217.4 | 0.6901 | 132.13 |
| ExecuTorch | ✅ | 217.4 | 0.6900 | 297.17 |
Benchmark mit Ultralytics .3.249
Unsere Ergebnisse reproduzieren
Um die oben genannten Ultralytics-Benchmarks auf allen Export-Formaten zu reproduzieren, führen Sie diesen Code aus:
Beispiel
from ultralytics import YOLO
# Load a YOLO11n PyTorch model
model = YOLO("yolo11n.pt")
# Benchmark YOLO11n speed and accuracy on the COCO128 dataset for all export formats
results = model.benchmark(data="coco128.yaml", imgsz=640)
# Benchmark YOLO11n speed and accuracy on the COCO128 dataset for all export formats
yolo benchmark model=yolo11n.pt data=coco128.yaml imgsz=640
Beachten Sie, dass die Benchmarking-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 verwenden Sie einen Datensatz mit einer großen Anzahl von Bildern, z. B. data='coco.yaml' (5000 Validierungsbilder).
Bewährte Verfahren für NVIDIA Spark
Bei der Verwendung von NVIDIA Spark gibt es einige bewährte Verfahren, die befolgt werden sollten, um die maximale Leistung bei der Ausführung von YOLO11 zu erzielen.
Überwachen Sie die Systemleistung
Verwenden Sie die Überwachungstools NVIDIA, um CPU GPU CPU track :
nvidia-smiSpeichernutzung optimieren
Mit 128 GB einheitlichem Speicher kann DGX Spark große Batch-Größen und Modelle verarbeiten. Erwägen Sie eine Erhöhung der Batch-Größe, um den Durchsatz zu verbessern:
from ultralytics import YOLO model = YOLO("yolo11n.engine") results = model.predict(source="path/to/images", batch=16)Verwenden Sie TensorRT FP16 oder INT8.
Für beste Leistung exportieren Sie Modelle mit FP16- oder INT8-Genauigkeit:
yolo export model=yolo11n.pt format=engine half=True # FP16 yolo export model=yolo11n.pt format=engine int8=True # INT8
Systemaktualisierungen (Founders Edition)
Es ist für die Leistung und Sicherheit von entscheidender Bedeutung, dass Sie Ihre DGX Spark Founders Edition auf dem neuesten Stand halten. NVIDIA zwei primäre Methoden zum Aktualisieren des Betriebssystems, der Treiber und der Firmware des Systems.
Verwendung des DGX-Dashboards (empfohlen)
Das DGX-Dashboard ist die empfohlene Methode, um Systemaktualisierungen durchzuführen und die Kompatibilität sicherzustellen. Damit können Sie:
- Verfügbare Systemaktualisierungen anzeigen
- Installieren Sie Sicherheitspatches und System-Updates.
- Verwalten Sie NVIDIA und Firmware-Updates
Manuelle Systemaktualisierungen
Fortgeschrittene Benutzer können Updates manuell über das Terminal durchführen:
sudo apt update
sudo apt dist-upgrade
sudo fwupdmgr refresh
sudo fwupdmgr upgrade
sudo reboot
Warnung
Stellen Sie sicher, dass Ihr System an eine stabile Stromquelle angeschlossen ist und Sie wichtige Daten gesichert haben, bevor Sie Updates durchführen.
Nächste Schritte
Für weitere Lerninhalte und Unterstützung konsultieren Sie die Ultralytics YOLO11-Dokumentation.
FAQ
Wie stelle ich Ultralytics YOLO11 NVIDIA Spark bereit?
Die Bereitstellung Ultralytics YOLO11 NVIDIA Spark ist ganz einfach. Sie können das vorgefertigte Docker-Image für eine schnelle Einrichtung verwenden oder die erforderlichen Pakete manuell installieren. Detaillierte Schritte für jeden Ansatz finden Sie in den Abschnitten „Schnellstart mit Docker “ und „Start mit nativer Installation“.
Welche Leistung kann ich von YOLO11 NVIDIA Spark erwarten?
YOLO11 bieten dank des GB10 Grace Blackwell Superchips eine hervorragende Leistung auf DGX Spark. Das TensorRT bietet die beste Inferenzleistung. In der detaillierten Vergleichstabelle finden Sie spezifische Benchmark-Ergebnisse für verschiedene Modellgrößen und -formate.
Warum sollte ich TensorRT YOLO11 DGX Spark verwenden?
TensorRT aufgrund seiner optimalen Leistung für die Bereitstellung YOLO11 auf DGX Spark dringend empfohlen. Es beschleunigt die Inferenz durch Nutzung der Blackwell GPU und gewährleistet so maximale Effizienz und Geschwindigkeit. Weitere Informationen finden Sie im Abschnitt „Verwenden TensorRT NVIDIA Spark “.
Wie schneidet DGX Spark im Vergleich zu Jetson-Geräten für YOLO11 ab?
DGX Spark bietet mit bis zu 1 PFLOP KI-Leistung und 128 GB einheitlichem Speicher deutlich mehr Rechenleistung als Jetson-Geräte, die auf 2070 TFLOPS und 128 GB Speicher kommen. DGX Spark ist als Desktop-KI-Supercomputer konzipiert, während Jetson-Geräte eingebettete Systeme sind, die für den Einsatz am Netzwerkrand optimiert sind.
Kann ich dasselbe Docker-Image für DGX Spark und Jetson AGX Thor verwenden?
Ja! Das ultralytics/ultralytics:latest-nvidia-arm64 Das Docker-Image unterstützt sowohl NVIDIA Spark (mit DGX OS) als auch Jetson AGX Thor (mit JetPack 7.0), da beide die ARM64-Architektur mit CUDA und ähnlichen Software-Stacks verwenden.