Guide de démarrage rapide : NVIDIA Jetson avec Ultralytics YOLO26
Ce guide complet fournit une procédure détaillée pour déployer Ultralytics YOLO26 sur des appareils NVIDIA Jetson. Il présente également des benchmarks de performance pour démontrer les capacités de YOLO26 sur ces appareils compacts et puissants.
Nous avons mis à jour ce guide avec le dernier NVIDIA Jetson AGX Thor Developer Kit, qui fournit jusqu'à 2070 FP4 TFLOPS de calcul IA et 128 Go de mémoire, avec une puissance configurable entre 40 W et 130 W. Il offre une puissance de calcul IA plus de 7,5 fois supérieure au NVIDIA Jetson AGX Orin, avec une efficacité énergétique 3,5 fois meilleure pour exécuter de manière fluide les modèles d'IA les plus populaires.
Watch: How to use Ultralytics YOLO26 on NVIDIA Jetson Devices

Ce guide a été testé avec le NVIDIA Jetson AGX Thor Developer Kit (Jetson T5000) exécutant la dernière version stable de JetPack JP7.0, le NVIDIA Jetson AGX Orin Developer Kit (64GB) exécutant la version JetPack JP6.2, le NVIDIA Jetson Orin Nano Super Developer Kit exécutant la version JetPack JP6.1, le Seeed Studio reComputer J4012 basé sur le NVIDIA Jetson Orin NX 16 Go exécutant la version JetPack JP6.0 / la version JetPack JP5.1.3 et le Seeed Studio reComputer J1020 v2 basé sur le NVIDIA Jetson Nano 4 Go exécutant la version JetPack JP4.6.1. Il est prévu qu'il fonctionne sur toute la gamme de matériel NVIDIA Jetson, y compris les appareils récents et anciens.
Qu'est-ce que NVIDIA Jetson ?
NVIDIA Jetson est une série de cartes informatiques embarquées conçues pour apporter le calcul IA (intelligence artificielle) accéléré aux appareils en périphérie (edge). Ces appareils compacts et puissants sont construits autour de l'architecture GPU de NVIDIA et peuvent exécuter des algorithmes d'IA complexes et des modèles de deep learning directement sur l'appareil, sans dépendre de ressources de cloud computing. Les cartes Jetson sont souvent utilisées dans la robotique, les véhicules autonomes, l'automatisation industrielle et d'autres applications où l'inférence IA doit être effectuée localement avec une faible latence et une haute efficacité. De plus, ces cartes sont basées sur l'architecture ARM64 et fonctionnent avec une consommation d'énergie plus faible que les dispositifs de calcul GPU traditionnels.
Comparaison de la série NVIDIA Jetson
Le NVIDIA Jetson AGX Thor est la dernière itération de la famille NVIDIA Jetson, basée sur l'architecture NVIDIA Blackwell, qui apporte des performances IA considérablement améliorées par rapport aux générations précédentes. Le tableau ci-dessous compare quelques appareils Jetson de l'écosystème.
| Jetson AGX Thor(T5000) | Jetson AGX Orin 64GB | Jetson Orin NX 16GB | Jetson Orin Nano Super | Jetson AGX Xavier | Jetson Xavier NX | Jetson Nano | |
|---|---|---|---|---|---|---|---|
| Performance IA | 2070 TFLOPS | 275 TOPS | 100 TOPS | 67 TOPS | 32 TOPS | 21 TOPS | 472 GFLOPS |
| GPU | GPU à architecture NVIDIA Blackwell 2560 cœurs avec 96 Tensor Cores | GPU à architecture NVIDIA Ampere 2048 cœurs avec 64 Tensor Cores | GPU à architecture NVIDIA Ampere 1024 cœurs avec 32 Tensor Cores | GPU à architecture NVIDIA Ampere 1024 cœurs avec 32 Tensor Cores | GPU à architecture NVIDIA Volta 512 cœurs avec 64 Tensor Cores | GPU à architecture NVIDIA Volta™ 384 cœurs avec 48 Tensor Cores | GPU à architecture NVIDIA Maxwell™ 128 cœurs |
| Fréquence max du GPU | 1,57 GHz | 1,3 GHz | 918 MHz | 1020 MHz | 1377 MHz | 1100 MHz | 921 MHz |
| CPU | CPU Arm® Neoverse®-V3AE 64 bits 14 cœurs 1 Mo L2 + 16 Mo L3 | CPU NVIDIA Arm® Cortex A78AE v8.2 64 bits 12 cœurs 3 Mo L2 + 6 Mo L3 | CPU NVIDIA Arm® Cortex A78AE v8.2 64 bits 8 cœurs 2 Mo L2 + 4 Mo L3 | CPU Arm® Cortex®-A78AE v8.2 64 bits 6 cœurs 1,5 Mo L2 + 4 Mo L3 | CPU NVIDIA Carmel Arm®v8.2 64 bits 8 cœurs 8 Mo L2 + 4 Mo L3 | CPU NVIDIA Carmel Arm®v8.2 64 bits 6 cœurs 6 Mo L2 + 4 Mo L3 | Processeur Quad-Core Arm® Cortex®-A57 MPCore |
| Fréquence max du CPU | 2,6 GHz | 2,2 GHz | 2,0 GHz | 1,7 GHz | 2,2 GHz | 1,9 GHz | 1,43 GHz |
| Mémoire | 128 Go 256 bits LPDDR5X 273 Go/s | 64 Go 256 bits LPDDR5 204,8 Go/s | 16 Go 128 bits LPDDR5 102,4 Go/s | 8 Go 128 bits LPDDR5 102 Go/s | 32 Go 256 bits LPDDR4x 136,5 Go/s | 8 Go 128 bits LPDDR4x 59,7 Go/s | 4 Go 64 bits LPDDR4 25,6 Go/s |
Pour un tableau de comparaison plus détaillé, visite la section Compare Specifications de la page officielle NVIDIA Jetson.
Qu'est-ce que NVIDIA JetPack ?
Le NVIDIA JetPack SDK alimentant les modules Jetson est la solution la plus complète ; il fournit un environnement de développement complet pour créer des applications d'IA accélérée de bout en bout et raccourcit le temps de mise sur le marché. JetPack inclut Jetson Linux avec chargeur de démarrage, noyau Linux, environnement de bureau Ubuntu et un ensemble complet de bibliothèques pour l'accélération du calcul GPU, du multimédia, des graphismes et de la vision par ordinateur. Il inclut également des exemples, de la documentation et des outils de développement pour l'ordinateur hôte et le kit de développement, et prend en charge des SDK de plus haut niveau tels que DeepStream pour l'analyse vidéo en streaming, Isaac pour la robotique et Riva pour l'IA conversationnelle.
Flasher JetPack sur NVIDIA Jetson
La première étape après avoir pris en main un appareil NVIDIA Jetson est de flasher NVIDIA JetPack sur l'appareil. Il existe plusieurs façons différentes de flasher les appareils NVIDIA Jetson.
- Si tu possèdes un kit de développement officiel NVIDIA, comme le Jetson AGX Thor Developer Kit, tu peux télécharger une image et préparer une clé USB bootable pour flasher JetPack sur le SSD inclus.
- Si tu possèdes un kit de développement officiel NVIDIA, comme le Jetson Orin Nano Developer Kit, tu peux télécharger une image et préparer une carte SD avec JetPack pour démarrer l'appareil.
- Si tu possèdes tout autre kit de développement NVIDIA, tu peux flasher JetPack sur l'appareil en utilisant SDK Manager.
- Si tu possèdes un appareil Seeed Studio reComputer J4012, tu peux flasher JetPack sur le SSD inclus et si tu possèdes un appareil Seeed Studio reComputer J1020 v2, tu peux flasher JetPack sur l'eMMC/SSD.
- Si tu possèdes tout autre appareil tiers alimenté par le module NVIDIA Jetson, il est recommandé de suivre le flashing en ligne de commande.
Pour les méthodes 1, 4 et 5 ci-dessus, après avoir flashé le système et démarré l'appareil, saisis "sudo apt update && sudo apt install nvidia-jetpack -y" dans le terminal de l'appareil pour installer tous les composants JetPack restants nécessaires.
Support JetPack selon l'appareil Jetson
Le tableau ci-dessous met en évidence les versions de NVIDIA JetPack prises en charge par différents appareils NVIDIA Jetson.
| JetPack 4 | JetPack 5 | JetPack 6 | JetPack 7 | |
|---|---|---|---|---|
| Jetson Nano | ✅ | ❌ | ❌ | ❌ |
| Jetson TX2 | ✅ | ❌ | ❌ | ❌ |
| Jetson Xavier NX | ✅ | ✅ | ❌ | ❌ |
| Jetson AGX Xavier | ✅ | ✅ | ❌ | ❌ |
| Jetson AGX Orin | ❌ | ✅ | ✅ | ❌ |
| Jetson Orin NX | ❌ | ✅ | ✅ | ❌ |
| Jetson Orin Nano | ❌ | ✅ | ✅ | ❌ |
| Jetson AGX Thor | ❌ | ❌ | ❌ | ✅ |
Démarrage rapide avec Docker
Le moyen le plus rapide de commencer avec Ultralytics YOLO26 sur NVIDIA Jetson est d'exécuter les images Docker pré-construites pour Jetson. Reporte-toi au tableau ci-dessus et choisis la version de JetPack correspondant à l'appareil Jetson que tu possèdes.
t=ultralytics/ultralytics:latest-jetson-jetpack4
sudo docker pull $t && sudo docker run -it --ipc=host --runtime=nvidia $tUne fois cela fait, passe à la section Utiliser TensorRT sur NVIDIA Jetson.
Commencer par une installation native
Pour une installation native sans Docker, reporte-toi aux étapes ci-dessous.
Exécuter sur JetPack 7.0
Installer le package Ultralytics
Ici, nous allons installer le package Ultralytics sur le Jetson avec des dépendances optionnelles afin de pouvoir exporter les modèles PyTorch vers d'autres formats. Nous nous concentrerons principalement sur les exportations NVIDIA TensorRT car TensorRT garantit que nous pouvons obtenir des performances maximales des appareils Jetson.
-
Mettre à jour la liste des packages, installer pip et passer à la dernière version
sudo apt update sudo apt install python3-pip -y pip install -U pip -
Installer le package pip
ultralyticsavec les dépendances optionnellespip install ultralytics[export] -
Redémarrer l'appareil
sudo reboot
Installer PyTorch et Torchvision
L'installation ultralytics ci-dessus installera Torch et Torchvision. Cependant, ces 2 packages installés via pip ne sont pas compatibles pour fonctionner sur Jetson AGX Thor, qui est livré avec JetPack 7.0 et CUDA 13. Par conséquent, nous devons les installer manuellement.
Installer torch et torchvision selon JP7.0
pip install torch torchvision --index-url https://download.pytorch.org/whl/cu130Installer onnxruntime-gpu
Le package onnxruntime-gpu hébergé sur PyPI ne possède pas de binaires aarch64 pour le Jetson. Nous devons donc installer ce package manuellement. Ce package est nécessaire pour certaines exportations.
Ici, nous allons télécharger et installer onnxruntime-gpu 1.24.0 avec la prise en charge de Python3.12.
pip install https://github.com/ultralytics/assets/releases/download/v0.0.0/onnxruntime_gpu-1.24.0-cp312-cp312-linux_aarch64.whlExécuter sur JetPack 6.1
Installer le package Ultralytics
Ici, nous allons installer le package Ultralytics sur le Jetson avec des dépendances optionnelles afin de pouvoir exporter les modèles PyTorch vers d'autres formats. Nous nous concentrerons principalement sur les exportations NVIDIA TensorRT car TensorRT garantit que nous pouvons obtenir des performances maximales des appareils Jetson.
-
Mettre à jour la liste des packages, installer pip et passer à la dernière version
sudo apt update sudo apt install python3-pip -y pip install -U pip -
Installer le package pip
ultralyticsavec les dépendances optionnellespip install ultralytics[export] -
Redémarrer l'appareil
sudo reboot
Installer PyTorch et Torchvision
L'installation ultralytics ci-dessus installera Torch et Torchvision. Cependant, ces deux packages installés via pip ne sont pas compatibles avec la plateforme Jetson, qui est basée sur l'architecture ARM64. Par conséquent, nous devons installer manuellement une roue (wheel) pip PyTorch pré-construite et compiler ou installer Torchvision à partir de la source.
Installer torch 2.10.0 et torchvision 0.25.0 selon JP6.1
pip install https://github.com/ultralytics/assets/releases/download/v0.0.0/torch-2.10.0-cp310-cp310-linux_aarch64.whl
pip install https://github.com/ultralytics/assets/releases/download/v0.0.0/torchvision-0.25.0-cp310-cp310-linux_aarch64.whlVisite la page PyTorch pour Jetson pour accéder à toutes les différentes versions de PyTorch pour les différentes versions de JetPack. Pour une liste plus détaillée sur la compatibilité PyTorch, Torchvision, visite la page de compatibilité PyTorch et Torchvision.
Installer cuDSS pour corriger un problème de dépendance avec torch 2.10.0
wget https://developer.download.nvidia.com/compute/cudss/0.7.1/local_installers/cudss-local-tegra-repo-ubuntu2204-0.7.1_0.7.1-1_arm64.deb
sudo dpkg -i cudss-local-tegra-repo-ubuntu2204-0.7.1_0.7.1-1_arm64.deb
sudo cp /var/cudss-local-tegra-repo-ubuntu2204-0.7.1/cudss-*-keyring.gpg /usr/share/keyrings/
sudo apt-get update
sudo apt-get -y install cudssInstaller onnxruntime-gpu
Le package onnxruntime-gpu hébergé sur PyPI ne possède pas de binaires aarch64 pour le Jetson. Nous devons donc installer ce package manuellement. Ce package est nécessaire pour certaines exportations.
Tu peux trouver tous les packages onnxruntime-gpu disponibles — organisés par version de JetPack, version de Python et autres détails de compatibilité — dans la matrice de compatibilité Jetson Zoo ONNX Runtime.
Pour JetPack 6 avec support Python 3.10, tu peux installer onnxruntime-gpu 1.23.0 :
pip install https://github.com/ultralytics/assets/releases/download/v0.0.0/onnxruntime_gpu-1.23.0-cp310-cp310-linux_aarch64.whlAlternativement, pour onnxruntime-gpu 1.20.0 :
pip install https://github.com/ultralytics/assets/releases/download/v0.0.0/onnxruntime_gpu-1.20.0-cp310-cp310-linux_aarch64.whlExécuter sur JetPack 5.1.2
Installer le package Ultralytics
Ici, nous allons installer le package Ultralytics sur le Jetson avec des dépendances optionnelles afin de pouvoir exporter les modèles PyTorch vers d'autres formats. Nous nous concentrerons principalement sur les exportations NVIDIA TensorRT car TensorRT garantit que nous pouvons obtenir des performances maximales des appareils Jetson.
-
Mettre à jour la liste des packages, installer pip et passer à la dernière version
sudo apt update sudo apt install python3-pip -y pip install -U pip -
Installer le package pip
ultralyticsavec les dépendances optionnellespip install ultralytics[export] -
Redémarrer l'appareil
sudo reboot
Installer PyTorch et Torchvision
L'installation ultralytics ci-dessus installera Torch et Torchvision. Cependant, ces deux packages installés via pip ne sont pas compatibles avec la plateforme Jetson, qui est basée sur l'architecture ARM64. Par conséquent, nous devons installer manuellement une roue (wheel) pip PyTorch pré-construite et compiler ou installer Torchvision à partir de la source.
-
Désinstaller PyTorch et Torchvision actuellement installés
pip uninstall torch torchvision -
Installer
torch 2.1.0ettorchvision 0.16.2selon JP5.1.2pip install https://github.com/ultralytics/assets/releases/download/v0.0.0/torch-2.1.0a0+41361538.nv23.06-cp38-cp38-linux_aarch64.whl pip install https://github.com/ultralytics/assets/releases/download/v0.0.0/torchvision-0.16.2+c6f3977-cp38-cp38-linux_aarch64.whl
Visite la page PyTorch pour Jetson pour accéder à toutes les différentes versions de PyTorch pour les différentes versions de JetPack. Pour une liste plus détaillée sur la compatibilité PyTorch, Torchvision, visite la page de compatibilité PyTorch et Torchvision.
Installer onnxruntime-gpu
Le package onnxruntime-gpu hébergé sur PyPI ne possède pas de binaires aarch64 pour le Jetson. Nous devons donc installer ce package manuellement. Ce package est nécessaire pour certaines exportations.
Tu peux trouver tous les paquets onnxruntime-gpu disponibles, organisés par version de JetPack, version de Python et autres détails de compatibilité, dans la matrice de compatibilité ONNX Runtime de Jetson Zoo. Ici, nous allons télécharger et installer onnxruntime-gpu 1.17.0 avec la prise en charge de Python3.8.
wget https://nvidia.box.com/shared/static/zostg6agm00fb6t5uisw51qi6kpcuwzd.whl -O onnxruntime_gpu-1.17.0-cp38-cp38-linux_aarch64.whl
pip install onnxruntime_gpu-1.17.0-cp38-cp38-linux_aarch64.whlonnxruntime-gpu rétablira automatiquement la version de NumPy à la plus récente. Nous devons donc réinstaller NumPy à la version 1.23.5 pour résoudre un problème en exécutant :
pip install numpy==1.23.5
Utilise TensorRT sur NVIDIA Jetson
Parmi tous les formats d'exportation de modèles pris en charge par Ultralytics, TensorRT offre les meilleures performances d'inférence sur les appareils NVIDIA Jetson, ce qui en fait notre recommandation principale pour les déploiements sur Jetson. Pour les instructions de configuration et l'utilisation avancée, consulte notre guide d'intégration dédié à TensorRT.
Convertir le 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")Visite la page Export pour accéder à des arguments supplémentaires lors de l'exportation de modèles vers différents formats.
Utilise le NVIDIA Deep Learning Accelerator (DLA)
NVIDIA Deep Learning Accelerator (DLA) est un composant matériel spécialisé intégré aux appareils NVIDIA Jetson qui optimise l'inférence en deep learning pour l'efficacité énergétique et les performances. En déchargeant des tâches du GPU (le libérant ainsi pour des processus plus intensifs), le DLA permet aux modèles de fonctionner avec une consommation d'énergie réduite tout en maintenant un débit élevé, idéal pour les systèmes embarqués et les applications d'IA en temps réel.
Les appareils Jetson suivants sont équipés du matériel DLA :
| Appareil Jetson | Cœurs DLA | Fréquence maximale du DLA |
|---|---|---|
| Série Jetson AGX Orin | 2 | 1.6 GHz |
| Jetson Orin NX 16GB | 2 | 614 MHz |
| Jetson Orin NX 8GB | 1 | 614 MHz |
| Série Jetson AGX Xavier | 2 | 1.4 GHz |
| Série Jetson Xavier NX | 2 | 1.1 GHz |
from ultralytics import YOLO
# Load a YOLO26n PyTorch model
model = YOLO("yolo26n.pt")
# Export the model to TensorRT with DLA enabled (only works with FP16 or INT8)
model.export(format="engine", device="dla:0", half=True) # dla:0 or dla:1 corresponds to the DLA cores
# Load the exported TensorRT model
trt_model = YOLO("yolo26n.engine")
# Run inference
results = trt_model("https://ultralytics.com/images/bus.jpg")Lors de l'utilisation d'exportations DLA, certaines couches peuvent ne pas être supportées pour une exécution sur le DLA et reviendront au GPU pour être traitées. Ce repli peut introduire une latence supplémentaire et impacter les performances globales d'inférence. Par conséquent, le DLA n'est pas principalement conçu pour réduire la latence d'inférence par rapport à TensorRT fonctionnant entièrement sur le GPU. Son but principal est plutôt d'augmenter le débit et d'améliorer l'efficacité énergétique.
Benchmarks NVIDIA Jetson YOLO11 / YOLO26
Les benchmarks YOLO11 / YOLO26 ont été réalisés par l'équipe Ultralytics sur 11 formats de modèles différents, en mesurant la vitesse et la précision : PyTorch, TorchScript, ONNX, OpenVINO, TensorRT, TF SavedModel, TF GraphDef, TF Lite, MNN, NCNN, ExecuTorch. Les benchmarks ont été effectués sur le NVIDIA Jetson AGX Thor Developer Kit, le NVIDIA Jetson AGX Orin Developer Kit (64GB), le NVIDIA Jetson Orin Nano Super Developer Kit et le Seeed Studio reComputer J4012 équipé d'un appareil Jetson Orin NX 16GB à une précision FP32 avec une taille d'image d'entrée par défaut de 640.
Graphiques de comparaison
Bien que toutes les exportations de modèles fonctionnent sur NVIDIA Jetson, nous avons uniquement inclus PyTorch, TorchScript, TensorRT dans le graphique de comparaison ci-dessous car ils utilisent le GPU du Jetson et garantissent les meilleurs résultats. Toutes les autres exportations utilisent uniquement le CPU et les performances ne sont pas aussi bonnes que celles des trois précédents. Tu peux trouver les benchmarks de toutes les exportations dans la section qui suit ce graphique.
NVIDIA Jetson AGX Thor Developer Kit
NVIDIA Jetson AGX Orin Developer Kit (64GB)
NVIDIA Jetson Orin Nano Super Developer Kit
NVIDIA Jetson Orin NX 16GB
Tableaux de comparaison détaillés
Le tableau ci-dessous représente les résultats des benchmarks pour cinq modèles différents (YOLO11n, YOLO11s, YOLO11m, YOLO11l, YOLO11x) à travers 11 formats différents (PyTorch, TorchScript, ONNX, OpenVINO, TensorRT, TF SavedModel, TF GraphDef, TF Lite, MNN, NCNN, ExecuTorch), en nous donnant le statut, la taille, la métrique mAP50-95(B) et le temps d'inférence pour chaque combinaison.
NVIDIA Jetson AGX Thor Developer Kit
| Format | Statut | Taille sur le disque (Mo) | mAP50-95(B) | Temps d'inférence (ms/im) |
|---|---|---|---|---|
| PyTorch | ✅ | 5.3 | 0.4798 | 7.39 |
| TorchScript | ✅ | 9.8 | 0.4789 | 4.21 |
| ONNX | ✅ | 9.5 | 0.4767 | 6.58 |
| OpenVINO | ✅ | 10.1 | 0.4794 | 17.50 |
| TensorRT (FP32) | ✅ | 13.9 | 0.4791 | 1.90 |
| TensorRT (FP16) | ✅ | 7.6 | 0.4797 | 1.39 |
| TensorRT (INT8) | ✅ | 6.5 | 0.4273 | 1.52 |
| TF SavedModel | ✅ | 25.7 | 0.4764 | 47.24 |
| TF GraphDef | ✅ | 9.5 | 0.4764 | 45.98 |
| TF Lite | ✅ | 9.9 | 0.4764 | 182.04 |
| MNN | ✅ | 9.4 | 0.4784 | 21.83 |
Benchmarqué avec Ultralytics 8.4.7
Le temps d'inférence n'inclut pas le pré/post-traitement.
NVIDIA Jetson AGX Orin Developer Kit (64GB)
| Format | Statut | Taille sur le disque (Mo) | mAP50-95(B) | Temps d'inférence (ms/im) |
|---|---|---|---|---|
| PyTorch | ✅ | 5.3 | 0.4790 | 11.58 |
| TorchScript | ✅ | 9.8 | 0.4770 | 4.60 |
| ONNX | ✅ | 9.5 | 0.4770 | 9.87 |
| OpenVINO | ✅ | 9.6 | 0.4820 | 28.80 |
| TensorRT (FP32) | ✅ | 11.5 | 0.0450 | 4.18 |
| TensorRT (FP16) | ✅ | 7.9 | 0.0450 | 2.62 |
| TensorRT (INT8) | ✅ | 5.4 | 0.4640 | 2.30 |
| TF SavedModel | ✅ | 24.6 | 0.4760 | 71.10 |
| TF GraphDef | ✅ | 9.5 | 0.4760 | 70.02 |
| TF Lite | ✅ | 9.9 | 0.4760 | 227.94 |
| MNN | ✅ | 9.4 | 0.4760 | 32.46 |
| NCNN | ✅ | 9,3 | 0.4810 | 29.93 |
Benchmarqué avec Ultralytics 8.4.32
Le temps d'inférence n'inclut pas le pré/post-traitement.
NVIDIA Jetson Orin Nano Super Developer Kit
| Format | Statut | Taille sur le disque (Mo) | mAP50-95(B) | Temps d'inférence (ms/im) |
|---|---|---|---|---|
| PyTorch | ✅ | 5.3 | 0.4790 | 15.60 |
| TorchScript | ✅ | 9.8 | 0.4770 | 12.60 |
| ONNX | ✅ | 9.5 | 0.4760 | 15.76 |
| OpenVINO | ✅ | 9.6 | 0.4820 | 56.23 |
| TensorRT (FP32) | ✅ | 11.3 | 0.4770 | 7.53 |
| TensorRT (FP16) | ✅ | 8.1 | 0.4800 | 4.57 |
| TensorRT (INT8) | ✅ | 5.3 | 0.4490 | 3.80 |
| TF SavedModel | ✅ | 24.6 | 0.4760 | 118.33 |
| TF GraphDef | ✅ | 9.5 | 0.4760 | 116.30 |
| TF Lite | ✅ | 9.9 | 0.4760 | 286.00 |
| MNN | ✅ | 9.4 | 0.4760 | 68.77 |
| NCNN | ✅ | 9,3 | 0.4810 | 47.50 |
Benchmarking effectué avec Ultralytics 8.4.33
Le temps d'inférence n'inclut pas le pré/post-traitement.
NVIDIA Jetson Orin NX 16GB
| Format | Statut | Taille sur le disque (Mo) | mAP50-95(B) | Temps d'inférence (ms/im) |
|---|---|---|---|---|
| PyTorch | ✅ | 5.3 | 0,4799 | 13,90 |
| TorchScript | ✅ | 9.8 | 0,4787 | 11,60 |
| ONNX | ✅ | 9.5 | 0,4763 | 14,18 |
| OpenVINO | ✅ | 9.6 | 0,4819 | 40,19 |
| TensorRT (FP32) | ✅ | 11.4 | 0.4770 | 7,01 |
| TensorRT (FP16) | ✅ | 8,0 | 0.4789 | 4,13 |
| TensorRT (INT8) | ✅ | 5,5 | 0,4489 | 3,49 |
| TF SavedModel | ✅ | 24.6 | 0.4764 | 92,34 |
| TF GraphDef | ✅ | 9.5 | 0.4764 | 92,06 |
| TF Lite | ✅ | 9.9 | 0.4764 | 254,43 |
| MNN | ✅ | 9.4 | 0.4760 | 48,55 |
| NCNN | ✅ | 9,3 | 0,4805 | 34,31 |
Benchmarking effectué avec Ultralytics 8.4.33
Le temps d'inférence n'inclut pas le pré/post-traitement.
Explore plus d'efforts d'analyse comparative par Seeed Studio exécutés sur différentes versions du matériel NVIDIA Jetson.
Reproduis nos résultats
Pour reproduire les benchmarks Ultralytics ci-dessus sur tous les formats d'exportation, exécute ce code :
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)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 la charge de travail actuelle du système au moment où les benchmarks sont exécutés. 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 lors de l'utilisation de NVIDIA Jetson
Lorsque tu utilises NVIDIA Jetson, il y a quelques bonnes pratiques à suivre pour obtenir des performances maximales sur le NVIDIA Jetson exécutant YOLO26.
-
Active le mode MAX Power
L'activation du mode MAX Power sur le Jetson garantira que tous les cœurs CPU et GPU sont activés.
sudo nvpmodel -m 0 -
Active Jetson Clocks
L'activation de Jetson Clocks garantira que tous les cœurs CPU et GPU sont cadencés à leur fréquence maximale.
sudo jetson_clocks -
Installe l'application jetson stats
Tu peux utiliser l'application jetson stats pour surveiller les températures des composants du système et vérifier d'autres détails du système tels que l'utilisation du CPU, du GPU, de la RAM, changer les modes d'alimentation, régler sur les fréquences maximales, vérifier les informations de JetPack.
sudo apt update sudo pip install jetson-stats sudo reboot jtop
Conseils d'optimisation de la mémoire pour NVIDIA Jetson
La mémoire disponible est souvent le facteur limitant sur les appareils Jetson, en particulier sur les variantes à mémoire réduite telles que le Jetson Orin Nano (8 Go) ou Orin NX 8 Go. Les conseils ci-dessous sont des changements pratiques et à faible risque qui peuvent collectivement libérer plusieurs centaines de mégaoctets et te permettre d'exécuter des modèles YOLO plus grands ou de prendre en charge des charges de travail parallèles supplémentaires. Pour un traitement complet, consulte le blog NVIDIA sur l'optimisation de l'efficacité mémoire sur Jetson.
Passe au démarrage Headless (sans GUI)
Si ton Jetson est connecté via SSH ou fonctionne comme un appareil de production sans écran attaché, éliminer l'environnement de bureau et le serveur d'affichage peut récupérer jusqu'à 865 Mo de RAM :
sudo systemctl set-default multi-user.target
sudo rebootPour restaurer le bureau plus tard :
sudo systemctl set-default graphical.target
sudo rebootDésactive les services système inutilisés
Les services d'arrière-plan non essentiels (Bluetooth, gestionnaires de connectivité, démons matériels inutilisés) consomment environ 32 Mo au total. Liste les services actifs et désactive tout ce dont ton déploiement n'a pas besoin :
# List running services
systemctl list-units --type=service --state=running
# Disable a service
sudo systemctl disable <service-name>Profile l'utilisation de la mémoire
Avant d'optimiser, identifie quels processus consomment réellement de la RAM. procrank trie les processus par PSS (Proportional Set Size), ce qui reflète l'empreinte mémoire réelle par processus plus précisément que le RSS (Resident Set Size, le total des pages RAM physiques mappées par un processus, y compris les pages partagées avec d'autres processus) :
git clone https://github.com/csimmonds/procrank_linux.git
cd procrank_linux && make
sudo ./procrankPour voir les allocations GPU et NvMap (CUDA/pipeline vidéo) par processus :
sudo cat /sys/kernel/debug/nvmap/iovmm/clientsExécute l'inférence sans affichage en production
Pour les pipelines d'inférence qui n'ont pas besoin de prévisualisation en direct, désactiver les composants liés à l'affichage (Tiler, OSD, DisplaySink) peut économiser 200+ Mo rien que pour le pipeline. Avec Ultralytics YOLO, supprime la visionneuse et écris les résultats sur le disque à la place :
from ultralytics import YOLO
model = YOLO("yolo11n.engine")
# show=False prevents any display window; save=True writes annotated output to disk
results = model.predict(source="video.mp4", show=False, save=True)Impact cumulatif
| Optimisation | Mémoire économisée approx. |
|---|---|
| Désactiver l'interface graphique du bureau | ~865 Mo |
| Désactiver les services OS inutilisés | ~32 Mo |
| Pipeline d'inférence Headless (sans écran) | ~200+ Mo |
| Total (victoires faciles) | ~1 Go+ |
Combiner ces changements est particulièrement précieux lorsque tu cibles des modèles TensorRT INT8 sur des appareils à mémoire limitée — cela peut faire la différence entre réussir à faire tenir une variante de modèle plus grande en mémoire ou non.
Étapes suivantes
Pour plus d'apprentissage et de support, consulte la documentation Ultralytics YOLO26.
FAQ
Comment puis-je déployer Ultralytics YOLO26 sur des appareils NVIDIA Jetson ?
Déployer Ultralytics YOLO26 sur des appareils NVIDIA Jetson est un processus simple. Tout d'abord, flashe ton appareil Jetson avec le SDK NVIDIA JetPack. Ensuite, utilise soit une image Docker pré-construite pour une configuration rapide, soit installe manuellement les paquets requis. Les étapes détaillées pour chaque approche se trouvent dans les sections Démarrage rapide avec Docker et Commencer avec l'installation native.
Quels benchmarks de performance puis-je attendre des modèles YOLO11 sur des appareils NVIDIA Jetson ?
Les modèles YOLO11 ont été benchmarkés sur divers appareils NVIDIA Jetson, montrant des améliorations de performance significatives. Par exemple, le format TensorRT offre les meilleures performances d'inférence. Le tableau dans la section Tableaux de comparaison détaillés fournit une vue complète des métriques de performance telles que le mAP50-95 et le temps d'inférence à travers différents formats de modèles.
Pourquoi devrais-je utiliser TensorRT pour déployer YOLO26 sur NVIDIA Jetson ?
TensorRT est fortement recommandé pour le déploiement de modèles YOLO26 sur NVIDIA Jetson en raison de ses performances optimales. Il accélère l'inférence en exploitant les capacités GPU du Jetson, assurant une efficacité et une vitesse maximales. Apprends-en plus sur la façon de convertir en TensorRT et d'exécuter l'inférence dans la section Utiliser TensorRT sur NVIDIA Jetson.
Comment puis-je installer PyTorch et Torchvision sur NVIDIA Jetson ?
Pour installer PyTorch et Torchvision sur NVIDIA Jetson, désinstalle d'abord toutes les versions existantes qui pourraient avoir été installées via pip. Ensuite, installe manuellement les versions compatibles de PyTorch et Torchvision pour l'architecture ARM64 du Jetson. Des instructions détaillées pour ce processus sont fournies dans la section Installer PyTorch et Torchvision.
Quelles sont les meilleures pratiques pour maximiser les performances sur NVIDIA Jetson lors de l'utilisation de YOLO26 ?
Pour maximiser les performances sur NVIDIA Jetson avec YOLO26, suis ces bonnes pratiques :
- Active le mode MAX Power pour utiliser tous les cœurs CPU et GPU.
- Active Jetson Clocks pour faire fonctionner tous les cœurs à leur fréquence maximale.
- Installe l'application Jetson Stats pour surveiller les métriques du système.
Pour les commandes et des détails supplémentaires, réfère-toi à la section Bonnes pratiques lors de l'utilisation de NVIDIA Jetson.
Comment libérer de la mémoire sur NVIDIA Jetson pour exécuter des modèles YOLO plus grands ?
La RAM disponible est souvent le goulot d'étranglement sur les appareils Jetson à mémoire limitée. Trois victoires faciles qui peuvent ensemble récupérer plus de 1 Go :
- Passe au démarrage headless (
sudo systemctl set-default multi-user.target) pour éliminer l'interface graphique du bureau (~865 Mo économisés). - Désactive les services inutilisés tels que Bluetooth ou les gestionnaires de connectivité (~32 Mo économisés).
- Exécute l'inférence sans écran en réglant
show=Falsedans ton appelpredictYOLO, ce qui évite d'allouer de la mémoire au pipeline d'affichage (~200+ Mo économisés).
Utilise procrank pour profiler l'utilisation de la RAM par processus et sudo cat /sys/kernel/debug/nvmap/iovmm/clients pour inspecter les allocations GPU. Consulte la section Conseils d'optimisation de la mémoire pour tous les détails.
Pourquoi mon exportation TensorRT INT8 désactive-t-elle end2end sur JetPack 6 ?
TensorRT 10.3.0 livré avec JetPack 6 présente un problème connu qui empêche les builds de moteur INT8 lorsque end2end=True est activé. Quand Ultralytics détecte cette combinaison, il désactive automatiquement la branche end2end pour garantir que l'exportation réussisse.
Pour restaurer les exportations INT8 end2end, mets à jour TensorRT vers une version plus récente (par exemple, 10.7.0+ ) :
wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2204/arm64/cuda-keyring_1.1-1_all.deb
sudo dpkg -i cuda-keyring_1.1-1_all.deb
sudo apt-get update
sudo apt-get install -y tensorrtAprès la mise à jour, relance ton exportation. Pour plus de détails, vois l'issue GitHub #23841.