Guide de démarrage rapide : NVIDIA DGX Spark avec Ultralytics YOLO26#
Ce guide complet fournit une présentation détaillée du déploiement d'Ultralytics YOLO26 sur NVIDIA DGX Spark, le superordinateur compact de bureau dédié à l'IA de NVIDIA. Il présente également des benchmarks de performance pour démontrer les capacités de YOLO26 sur ce système puissant.
Ce guide a été testé avec NVIDIA DGX Spark Founders Edition exécutant DGX OS basé sur Ubuntu. Il devrait fonctionner avec les dernières versions de DGX OS.
Qu'est-ce que NVIDIA DGX Spark ?#
NVIDIA DGX Spark est un superordinateur compact de bureau dédié à l'IA, propulsé par le Superchip NVIDIA GB10 Grace Blackwell. Il offre jusqu'à 1 pétaFLOP de performances de calcul en IA avec une précision FP4, ce qui le rend idéal pour les développeurs, les chercheurs et les data scientists qui ont besoin de puissantes capacités d'IA dans un format de bureau.
Watch: How to Get up to 1000 FPS with Ultralytics YOLO26 on NVIDIA DGX Spark | TensorRT & Batch Inference
Spécifications clés#
| Spécification | Détails |
|---|---|
| Performances IA | Jusqu'à 1 PFLOP (FP4) |
| GPU | Architecture NVIDIA Blackwell avec Tensor Cores de 5e génération et RT Cores de 4e génération |
| CPU | Processeur Arm à 20 cœurs (10 Cortex-X925 + 10 Cortex-A725) |
| Mémoire | Mémoire système unifiée LPDDR5x de 128 Go, interface 256 bits, 4266 MHz, bande passante de 273 Go/s |
| Stockage | NVMe M.2 de 1 To ou 4 To avec chiffrement automatique |
| Réseau | 1x RJ-45 (10 GbE), carte réseau intelligente ConnectX-7, Wi-Fi 7, Bluetooth 5.4 |
| Connectivité | 4x USB Type-C, 1x HDMI 2.1a, audio multicanal HDMI |
| Traitement vidéo | 1x NVENC, 1x NVDEC |
DGX OS#
NVIDIA DGX OS est une distribution Linux personnalisée qui fournit une base de système d'exploitation stable, testée et prise en charge pour exécuter des applications d'IA, de machine learning et d'analyse sur les systèmes DGX. Elle inclut :
- Une base Linux robuste optimisée pour les charges de travail d'IA
- Des pilotes et paramètres système préconfigurés pour le matériel NVIDIA
- Des mises à jour de sécurité et des fonctionnalités de maintenance du système
- La compatibilité avec l'écosystème logiciel NVIDIA au sens large
DGX OS suit un calendrier de publication régulier, avec des mises à jour généralement fournies deux fois par an (vers février et août) et des correctifs de sécurité supplémentaires entre les versions majeures.
DGX Dashboard#
DGX Spark est fourni avec un DGX Dashboard intégré qui offre :
- Surveillance du système en temps réel : vue d'ensemble des métriques opérationnelles actuelles du système
- Mises à jour du système : possibilité d'appliquer les mises à jour directement depuis le tableau de bord
- Paramètres système : modification du nom de l'appareil et d'autres configurations
- JupyterLab intégré : accès aux notebooks Jupyter locaux pour le développement
Accéder au tableau de bord#
Clique sur le bouton « Show Apps » dans le coin inférieur gauche du bureau Ubuntu, puis sélectionne « DGX Dashboard » pour l'ouvrir dans ton navigateur.
Le tableau de bord inclut une instance JupyterLab intégrée qui crée automatiquement un environnement virtuel et installe les paquets recommandés au démarrage. Chaque compte utilisateur se voit attribuer un port dédié pour accéder à JupyterLab.
Démarrage rapide avec Docker#
Le moyen le plus rapide de démarrer avec Ultralytics YOLO26 sur NVIDIA DGX Spark est d'exécuter l'application avec des images Docker préconstruites. L'image NVIDIA ARM64 prend en charge DGX Spark avec DGX OS.
t=ultralytics/ultralytics:latest-nvidia-arm64
sudo docker pull $t && sudo docker run -it --ipc=host --device nvidia.com/gpu=all $tLa demande de périphérique CDI ci-dessus s'applique à DGX Spark exécutant DGX OS. Pour les charges de travail PyTorch sur Jetson AGX Thor, consulte les exigences de l'hôte et la restriction TensorRT distinctes dans le guide NVIDIA Jetson.
Cette image utilise NVIDIA PyTorch 26.08, CUDA 13.4 et TensorRT 11. Mets à jour le pilote de l'hôte DGX OS vers une version prise en charge par NVIDIA PyTorch 26.08, et recompile les moteurs TensorRT après avoir changé l'image ou le GPU cible.
Une fois cette opération terminée, passe directement à la section Utiliser TensorRT sur NVIDIA DGX Spark.
Commencer par l'installation native#
Pour une installation native sans Docker, suis ces étapes.
Installer le package Ultralytics#
Nous allons ici installer le paquet Ultralytics sur DGX Spark. Les dépendances d'exportation sont installées automatiquement lors de la première exportation d'un modèle ; seul le paquet de base est donc nécessaire ici. Nous nous concentrerons principalement sur les exportations NVIDIA TensorRT, car TensorRT nous permettra d'obtenir les performances maximales de DGX Spark.
-
Mettre à jour la liste des packages, installer pip et effectuer la mise à niveau vers la dernière version
sudo apt update sudo apt install python3-pip -y pip install -U pip -
Installer le package pip
ultralyticspip install ultralytics -
Redémarrer l'appareil
sudo reboot
Installer PyTorch et Torchvision#
L'installation d'ultralytics ci-dessus installera Torch et Torchvision. Cependant, ces paquets installés via pip peuvent ne pas être entièrement optimisés pour l'architecture ARM64 de DGX Spark avec CUDA 13. Nous recommandons donc d'installer les versions compatibles avec CUDA 13 :
pip install torch torchvision --index-url https://download.pytorch.org/whl/cu130Lors de l'exécution de PyTorch 2.9.1 sur NVIDIA DGX Spark, tu peux rencontrer l'erreur UserWarning suivante lors de l'initialisation de CUDA (par exemple lors de l'exécution de 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)Cet avertissement peut être ignoré sans risque. Pour résoudre définitivement le problème, un correctif a été soumis dans la PR PyTorch #164590 et sera inclus dans la version PyTorch 2.10.
Installer onnxruntime-gpu#
Les versions actuelles d'ONNX Runtime GPU fournissent des roues Linux ARM64, incluant Python 3.12. L'image Docker NVIDIA ARM64 installe le paquet officiel ; pour les installations CUDA 13 natives, utilise :
pip install onnxruntime-gpuUtiliser TensorRT sur NVIDIA DGX Spark#
Parmi tous les formats d'exportation de modèles pris en charge par Ultralytics, TensorRT offre les meilleures performances d'inférence sur NVIDIA DGX Spark, ce qui en fait notre principale recommandation pour les déploiements. Pour obtenir les instructions de configuration et découvrir les fonctionnalités avancées, consulte notre guide dédié à l'intégration de TensorRT.
Convertir un modèle en TensorRT et exécuter l'inférence#
Le modèle YOLO26n au format PyTorch est converti en TensorRT pour exécuter l'inférence avec le modèle exporté.
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")Consulte la page Export pour accéder à des arguments supplémentaires lors de l'exportation de modèles vers différents formats de modèle
Benchmarks YOLO11 sur NVIDIA DGX Spark#
Les benchmarks YOLO11 ont été réalisés par l'équipe Ultralytics sur plusieurs formats de modèle afin de mesurer la vitesse et la précision : PyTorch, TorchScript, ONNX, OpenVINO, TensorRT, TF SavedModel, TF GraphDef, TF Lite, MNN, NCNN, ExecuTorch. Les benchmarks ont été réalisés sur NVIDIA DGX Spark avec une précision FP32 et une taille d'image d'entrée par défaut de 640.
Tableau comparatif détaillé#
Le tableau ci-dessous présente les résultats des benchmarks pour cinq modèles différents (YOLO11n, YOLO11s, YOLO11m, YOLO11l, YOLO11x) dans plusieurs formats, en indiquant le statut, la taille, la métrique mAP50-95(B) et le temps d'inférence pour chaque combinaison.
| Format | Statut | Taille sur le disque (Mo) | mAP50-95(B) | Temps d’inférence (ms/im) |
|---|---|---|---|---|
| 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 |
Benchmark réalisé avec Ultralytics 8.3.249
Reproduire nos résultats#
Pour reproduire les benchmarks Ultralytics ci-dessus dans tous les formats d'exportation, exécute ce code :
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)Note que les résultats des benchmarks peuvent varier en fonction de la configuration matérielle et logicielle exacte d’un système, ainsi que de sa charge actuelle au moment de l’exécution des benchmarks. Pour obtenir les résultats les plus fiables, utilise un jeu de données contenant un grand nombre d’images, par exemple data='coco.yaml' (5000 images de validation).
Bonnes pratiques pour NVIDIA DGX Spark#
Lorsque tu utilises NVIDIA DGX Spark, il convient de suivre quelques bonnes pratiques afin d'obtenir des performances maximales lors de l'exécution de YOLO26.
-
Surveiller les performances du système
Utilise les outils de surveillance de NVIDIA pour suivre l'utilisation du GPU et du CPU :
nvidia-smi -
Optimiser l'utilisation de la mémoire
Avec 128 Go de mémoire unifiée, DGX Spark peut gérer des tailles de lots et des modèles volumineux. Envisage d'augmenter la taille des lots pour améliorer le débit :
from ultralytics import YOLO model = YOLO("yolo26n.engine") results = model.predict(source="path/to/images", batch=16) -
Utiliser TensorRT avec FP16 ou INT8
Pour obtenir les meilleures performances, exporte les modèles avec une précision FP16 ou INT8 :
yolo export model=yolo26n.pt format=engine quantize=16 # FP16 yolo export model=yolo26n.pt format=engine quantize=8 # INT8
Mises à jour du système (Founders Edition)#
Maintenir ton DGX Spark Founders Edition à jour est essentiel pour les performances et la sécurité. NVIDIA fournit deux méthodes principales pour mettre à jour le système d'exploitation, les pilotes et le firmware du système.
Utiliser DGX Dashboard (recommandé)#
Le DGX Dashboard est la méthode recommandée pour effectuer les mises à jour du système tout en garantissant la compatibilité. Il te permet de :
- Afficher les mises à jour système disponibles
- Installer les correctifs de sécurité et les mises à jour système
- Gérer les mises à jour des pilotes et du firmware NVIDIA
Mises à jour manuelles du système#
Pour les utilisateurs avancés, les mises à jour peuvent être effectuées manuellement via le terminal :
sudo apt update
sudo apt dist-upgrade
sudo fwupdmgr refresh
sudo fwupdmgr upgrade
sudo rebootAssure-toi que ton système est connecté à une source d'alimentation stable et que tu as sauvegardé les données critiques avant d'effectuer les mises à jour.
Prochaines étapes#
Pour approfondir tes connaissances et obtenir de l'aide, consulte la documentation Ultralytics YOLO26.
FAQ#
Les modèles YOLO26 offrent d'excellentes performances sur DGX Spark grâce au Superchip GB10 Grace Blackwell. Le format TensorRT fournit les meilleures performances d'inférence. Consulte la section Tableau comparatif détaillé pour découvrir les résultats spécifiques des benchmarks selon les différentes tailles et formats de modèles.
TensorRT est vivement recommandé pour déployer les modèles YOLO26 sur DGX Spark en raison de ses performances optimales. Il accélère l'inférence en exploitant les capacités du GPU Blackwell, garantissant une efficacité et une vitesse maximales. Pour en savoir plus, consulte la section Utiliser TensorRT sur NVIDIA DGX Spark.
DGX Spark offre jusqu'à 1 PFLOP de performances en IA et 128 Go de mémoire unifiée, contre 2070 TFLOPS et 128 Go de mémoire pour Jetson AGX Thor. DGX Spark est conçu comme un superordinateur de bureau dédié à l'IA, tandis que les appareils Jetson sont des systèmes embarqués optimisés pour le déploiement en périphérie.
Pour les charges de travail PyTorch,
ultralytics/ultralytics:latest-nvidia-arm64prend en charge DGX Spark avec DGX OS et Thor avec JetPack 7.1. Le TensorRT 11.2 fourni ne prend pas en charge JetPack, de sorte que les flux de travail TensorRT de Jetson doivent utiliser le runtime TensorRT 10.x pris en charge pour leur version de JetPack. Consulte les exigences Docker de Jetson.
Le déploiement d'Ultralytics YOLO26 sur NVIDIA DGX Spark est simple. Tu peux utiliser l'image Docker préconstruite pour une configuration rapide ou installer manuellement les paquets requis. Les étapes détaillées de chaque approche sont disponibles dans les sections Démarrage rapide avec Docker et Commencer avec l'installation native.