Link to this sectionGuide 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. De plus, il présente des analyses 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 plus de 7,5 fois plus de puissance de calcul IA que le NVIDIA Jetson AGX Orin, avec 3,5 fois plus d'efficacité énergétique pour exécuter en toute fluidité 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 qui est 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 qui est basé sur le NVIDIA Jetson Nano 4 Go exécutant la version JetPack JP4.6.1. Il est prévu pour fonctionner sur toute la gamme de matériel NVIDIA Jetson, y compris les appareils les plus récents et les plus anciens.
Link to this sectionQu'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 périphériques en bordure de réseau (edge devices). 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 des 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 grande efficacité. De plus, ces cartes sont basées sur l'architecture ARM64 et fonctionnent avec une consommation d'énergie plus faible que les appareils de calcul GPU traditionnels.
Link to this sectionComparaison 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 d'IA considérablement améliorées par rapport aux générations précédentes. Le tableau ci-dessous compare quelques-uns des 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 2560-core architecture NVIDIA Blackwell avec 96 Tensor Cores | GPU 2048-core architecture NVIDIA Ampere avec 64 Tensor Cores | GPU 1024-core architecture NVIDIA Ampere avec 32 Tensor Cores | GPU 1024-core architecture NVIDIA Ampere avec 32 Tensor Cores | GPU 512-core architecture NVIDIA Volta avec 64 Tensor Cores | GPU 384-core architecture NVIDIA Volta™ avec 48 Tensor Cores | GPU 128-core architecture NVIDIA Maxwell™ |
| Fréquence max GPU | 1.57 GHz | 1.3 GHz | 918 MHz | 1020 MHz | 1377 MHz | 1100 MHz | 921 MHz |
| CPU | CPU 14-core Arm® Neoverse®-V3AE 64-bit 1 Mo L2 + 16 Mo L3 | CPU 12-core NVIDIA Arm® Cortex A78AE v8.2 64-bit 3 Mo L2 + 6 Mo L3 | CPU 8-core NVIDIA Arm® Cortex A78AE v8.2 64-bit 2 Mo L2 + 4 Mo L3 | CPU 6-core Arm® Cortex®-A78AE v8.2 64-bit 1.5 Mo L2 + 4 Mo L3 | CPU 8-core NVIDIA Carmel Arm®v8.2 64-bit 8 Mo L2 + 4 Mo L3 | CPU 6-core NVIDIA Carmel Arm®v8.2 64-bit 6 Mo L2 + 4 Mo L3 | Processeur Quad-Core Arm® Cortex®-A57 MPCore |
| Fréquence max 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-bit LPDDR5X 273 Go/s | 64 Go 256-bit LPDDR5 204.8 Go/s | 16 Go 128-bit LPDDR5 102.4 Go/s | 8 Go 128-bit LPDDR5 102 Go/s | 32 Go 256-bit LPDDR4x 136.5 Go/s | 8 Go 128-bit LPDDR4x 59.7 Go/s | 4 Go 64-bit LPDDR4 25.6 Go/s |
Pour un tableau comparatif plus détaillé, veuillez consulter la section Comparer les spécifications de la page officielle NVIDIA Jetson.
Link to this sectionQu'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 construire des applications IA accélérées de bout en bout et réduit les délais 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 comprend é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 continu, Isaac pour la robotique et Riva pour l'IA conversationnelle.
Link to this sectionFlasher JetPack sur NVIDIA Jetson#
La première étape après avoir obtenu ton 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 NVIDIA officiel tel que 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 NVIDIA officiel tel que 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 flashage 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.
Link to this sectionSupport JetPack basé sur l'appareil Jetson#
Le tableau ci-dessous met en évidence les versions de NVIDIA JetPack prises en charge par les 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 | ❌ | ❌ | ❌ | ✅ |
Link to this sectionDémarrage rapide avec Docker#
Le moyen le plus rapide de commencer avec Ultralytics YOLO26 sur NVIDIA Jetson est de l'exécuter avec des images docker pré-construites pour Jetson. Reporte-toi au tableau ci-dessus et choisis la version de JetPack en fonction de 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 que c'est fait, passe directement à la section Utiliser TensorRT sur NVIDIA Jetson.
Link to this sectionCommencer avec une installation native#
Pour une installation native sans Docker, veuillez consulter les étapes ci-dessous.
Link to this sectionExécuter sur JetPack 7.0#
Link to this sectionInstaller le package Ultralytics#
Ici, nous allons installer le package Ultralytics sur le Jetson avec des dépendances optionnelles afin que nous puissions exporter les modèles PyTorch vers d'autres formats. Nous nous concentrerons principalement sur les exports NVIDIA TensorRT car TensorRT garantit que nous pouvons tirer le maximum de performance des appareils Jetson.
-
Mettre à jour la liste des packages, installer pip et mettre à niveau vers 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
Link to this sectionInstaller PyTorch et Torchvision#
L'installation d'ultralytics ci-dessus installera Torch et Torchvision. Cependant, ces 2 packages installés via pip ne sont pas compatibles pour fonctionner sur le 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/cu130Link to this sectionInstaller onnxruntime-gpu#
Le package onnxruntime-gpu hébergé sur PyPI ne possède pas de binaires aarch64 pour le Jetson. Nous devons donc installer manuellement ce package. Ce package est nécessaire pour certains des exports.
Ici, nous allons télécharger et installer onnxruntime-gpu 1.24.0 avec le support de Python3.12.
pip install https://github.com/ultralytics/assets/releases/download/v0.0.0/onnxruntime_gpu-1.24.0-cp312-cp312-linux_aarch64.whlLink to this sectionExécuter sur JetPack 6.1#
Link to this sectionInstaller le package Ultralytics#
Ici, nous allons installer le package Ultralytics sur le Jetson avec des dépendances optionnelles afin que nous puissions exporter les modèles PyTorch vers d'autres formats. Nous nous concentrerons principalement sur les exports NVIDIA TensorRT car TensorRT garantit que nous pouvons tirer le maximum de performance des appareils Jetson.
-
Mettre à jour la liste des packages, installer pip et mettre à niveau vers 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
Link to this sectionInstaller PyTorch et Torchvision#
L'installation d'ultralytics ci-dessus installera Torch et Torchvision. Cependant, ces deux paquets installés via pip ne sont pas compatibles avec la plateforme Jetson, qui est basée sur une architecture ARM64. Par conséquent, nous devons installer manuellement une roue pip PyTorch précompilée et compiler ou installer Torchvision à partir des sources.
Installe 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 for 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 et Torchvision, visite la page de compatibilité PyTorch et Torchvision.
Installe 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 cudssLink to this sectionInstaller onnxruntime-gpu#
Le package onnxruntime-gpu hébergé sur PyPI ne possède pas de binaires aarch64 pour le Jetson. Nous devons donc installer manuellement ce package. Ce package est nécessaire pour certains des exports.
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.
Pour JetPack 6 avec le support de 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.whlLink to this sectionExécuter sur JetPack 5.1.2#
Link to this sectionInstaller le package Ultralytics#
Ici, nous allons installer le paquet Ultralytics sur le Jetson avec les 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 garantira que nous puissions obtenir les performances maximales des appareils Jetson.
-
Mettre à jour la liste des packages, installer pip et mettre à niveau vers 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
Link to this sectionInstaller PyTorch et Torchvision#
L'installation d'ultralytics ci-dessus installera Torch et Torchvision. Cependant, ces deux paquets installés via pip ne sont pas compatibles avec la plateforme Jetson, qui est basée sur une architecture ARM64. Par conséquent, nous devons installer manuellement une roue pip PyTorch précompilée et compiler ou installer Torchvision à partir des sources.
-
Désinstalle PyTorch et Torchvision actuellement installés
pip uninstall torch torchvision -
Installe
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 for 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 et Torchvision, visite la page de compatibilité PyTorch et Torchvision.
Link to this sectionInstaller onnxruntime-gpu#
Le package onnxruntime-gpu hébergé sur PyPI ne possède pas de binaires aarch64 pour le Jetson. Nous devons donc installer manuellement ce package. Ce package est nécessaire pour certains des exports.
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 le support 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 en 1.23.5 pour corriger un problème en exécutant :
pip install numpy==1.23.5
Link to this sectionUtilise 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 Jetson. Pour les instructions de configuration et une utilisation avancée, consulte notre guide d'intégration dédié à TensorRT.
Link to this sectionConvertir 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 Exporter pour accéder à des arguments supplémentaires lors de l'exportation de modèles vers différents formats de modèle
Link to this sectionUtilise le NVIDIA Deep Learning Accelerator (DLA)#
NVIDIA Deep Learning Accelerator (DLA) est un composant matériel spécialisé intégré dans les appareils NVIDIA Jetson qui optimise l'inférence du deep learning pour l'efficacité énergétique et la performance. En déchargeant les tâches du GPU (le libérant pour des processus plus intensifs), le DLA permet aux modèles de s'exécuter avec une consommation d'énergie plus faible tout en maintenant un débit élevé, idéal pour les systèmes embarqués et les applications d'IA en temps réel.
DLA n'est pas pris en charge dans TensorRT 11.0 et son retour est prévu dans une version ultérieure, donc l'exportation DLA nécessite TensorRT 10.x. Sur JetPack 6.x/7.x, effectue l'exportation avec une build de TensorRT 10.x pour utiliser DLA, ou utilise le GPU pour les moteurs TensorRT 11.0.
Les appareils Jetson suivants sont équipés de matériel DLA :
| Appareil Jetson | Cœurs DLA | Fréquence maximale 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 des exportations DLA, certaines couches peuvent ne pas être prises en charge pour s'exécuter sur le DLA et reviendront au GPU pour l'exécution. Ce repli peut introduire une latence supplémentaire et impacter la performance globale de l'inférence. Par conséquent, le DLA n'est pas principalement conçu pour réduire la latence de l'inférence par rapport à TensorRT s'exécutant entièrement sur le GPU. Au lieu de cela, son objectif principal est d'augmenter le débit et d'améliorer l'efficacité énergétique.
Link to this sectionBenchmarks NVIDIA Jetson YOLO11/ YOLO26#
Les benchmarks YOLO11/ YOLO26 ont été exécutés par l'équipe Ultralytics sur 11 formats de modèles différents 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é exécutés sur NVIDIA Jetson AGX Thor Developer Kit, NVIDIA Jetson AGX Orin Developer Kit (64GB), NVIDIA Jetson Orin Nano Super Developer Kit et Seeed Studio reComputer J4012 propulsé par un appareil Jetson Orin NX 16GB à une précision FP32 avec une taille d'image d'entrée par défaut de 640.
Link to this sectionGraphiques de comparaison#
Même si toutes les exportations de modèles fonctionnent sur NVIDIA Jetson, nous n'avons inclus que PyTorch, TorchScript, TensorRT pour le graphique de comparaison ci-dessous car ils utilisent le GPU du Jetson et sont garantis de produire les meilleurs résultats. Toutes les autres exportations utilisent uniquement le CPU et la performance n'est pas aussi bonne que les trois précédentes. Tu peux trouver les benchmarks pour toutes les exportations dans la section après ce graphique.
Link to this sectionNVIDIA Jetson AGX Thor Developer Kit#
Link to this sectionNVIDIA Jetson AGX Orin Developer Kit (64GB)#
Link to this sectionNVIDIA Jetson Orin Nano Super Developer Kit#
Link to this sectionNVIDIA Jetson Orin NX 16GB#
Link to this sectionTableaux 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), nous donnant le statut, la taille, la métrique mAP50-95(B) et le temps d'inférence pour chaque combinaison.
Link to this sectionNVIDIA Jetson AGX Thor Developer Kit#
| Format | Statut | Taille sur le disque (MB) | 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 |
Évalué avec Ultralytics 8.4.7
Le temps d'inférence n'inclut pas le pré/post-traitement.
Link to this sectionNVIDIA Jetson AGX Orin Developer Kit (64GB)#
| Format | Statut | Taille sur le disque (MB) | 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 |
Évalué avec Ultralytics 8.4.32
Le temps d'inférence n'inclut pas le pré/post-traitement.
Link to this sectionNVIDIA Jetson Orin Nano Super Developer Kit#
| Format | Statut | Taille sur le disque (MB) | 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 |
Benchmarké avec Ultralytics 8.4.33
Le temps d'inférence n'inclut pas le pré/post-traitement.
Link to this sectionNVIDIA Jetson Orin NX 16GB#
| Format | Statut | Taille sur le disque (MB) | 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 |
Benchmarké avec Ultralytics 8.4.33
Le temps d'inférence n'inclut pas le pré/post-traitement.
Découvre d'autres efforts de benchmarking par Seeed Studio tournant sur différentes versions de matériel NVIDIA Jetson.
Link to this sectionReproduis 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 du benchmarking peuvent varier en fonction de la configuration exacte du matériel et du logiciel 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 des résultats les plus fiables, utilise un jeu de données avec un grand nombre d'images, par ex. data='coco.yaml' (5000 images de val).
Link to this sectionMeilleures pratiques lors de l'utilisation de NVIDIA Jetson#
Lorsque tu utilises NVIDIA Jetson, il y a quelques meilleures pratiques à suivre pour permettre une performance maximale sur le NVIDIA Jetson exécutant YOLO26.
-
Active le mode MAX Power
Activer le mode MAX Power sur le Jetson garantira que tous les cœurs CPU et GPU sont activés.
sudo nvpmodel -m 0 -
Active les horloges Jetson
Activer les horloges Jetson garantira que tous les cœurs CPU et GPU fonctionnent à leur fréquence maximale.
sudo jetson_clocks -
Installe l'application jetson stats
Nous pouvons 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 comme voir l'utilisation du CPU, GPU, RAM, changer les modes d'alimentation, régler sur les horloges max, vérifier les informations JetPack
sudo apt update sudo pip install jetson-stats sudo reboot jtop
Link to this sectionConseils d'optimisation de la mémoire pour NVIDIA Jetson#
La mémoire disponible est souvent le facteur limitant sur les appareils Jetson, particulièrement sur les variantes à faible mémoire comme le Jetson Orin Nano (8 GB) ou Orin NX 8 GB. 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 de plus grands modèles YOLO ou de prendre en charge des charges de travail parallèles supplémentaires. Pour un traitement complet, vois le blog NVIDIA sur la maximisation de l'efficacité de la mémoire sur Jetson.
Link to this sectionPasse 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 MB de RAM :
sudo systemctl set-default multi-user.target
sudo rebootPour restaurer le bureau plus tard :
sudo systemctl set-default graphical.target
sudo rebootLink to this sectionDé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 MB 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_NAMELink to this sectionProfile 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), 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/clientsLink to this sectionExécute l'inférence sans écran 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+ MB pour le pipeline seul. 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)Link to this sectionImpact cumulé#
| Optimisation | Mémoire approx. économisée |
|---|---|
| Désactiver le GUI du bureau | ~865 MB |
| Désactiver les services OS inutilisés | ~32 MB |
| Pipeline d'inférence headless (sans écran) | ~200+ MB |
| Total (victoires faciles) | ~1 GB+ |
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 large en mémoire ou non.
Link to this sectionProchaines étapes#
Pour en apprendre plus et obtenir de l'aide, consulte la documentation Ultralytics YOLO26.
Link to this sectionFAQ#
Link to this sectionComment déployer Ultralytics YOLO26 sur les appareils NVIDIA Jetson ?#
Déployer Ultralytics YOLO26 sur des appareils NVIDIA Jetson est un processus simple. D'abord, flash ton appareil Jetson avec le SDK NVIDIA JetPack. Ensuite, utilise soit une image Docker pré-construite pour une installation 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 Démarrer avec une installation native.
Link to this sectionQuels benchmarks de performance puis-je attendre des modèles YOLO11 sur les appareils NVIDIA Jetson ?#
Les modèles YOLO11 ont été testé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 comparatifs détaillés fournit une vue complète des mesures de performance telles que le mAP50-95 et le temps d'inférence pour différents formats de modèle.
Link to this sectionPourquoi utiliser TensorRT pour déployer YOLO26 sur NVIDIA Jetson ?#
TensorRT est fortement recommandé pour déployer des 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 conversion vers TensorRT et l'exécution de l'inférence dans la section Utiliser TensorRT sur NVIDIA Jetson.
Link to this sectionComment installer PyTorch et Torchvision sur NVIDIA Jetson ?#
Pour installer PyTorch et Torchvision sur NVIDIA Jetson, désinstalle d'abord toute version existante qui aurait pu être installée 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.
Link to this sectionQuelles sont les meilleures pratiques pour maximiser les performances sur NVIDIA Jetson en utilisant 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 les Jetson Clocks pour faire fonctionner tous les cœurs à leur fréquence maximale.
- Installe l'application Jetson Stats pour surveiller les mesures du système.
Pour les commandes et des détails supplémentaires, réfère-toi à la section Meilleures pratiques lors de l'utilisation de NVIDIA Jetson.
Link to this sectionComment 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 à faible mémoire. Trois astuces simples qui peuvent libérer ensemble plus de 1 Go :
- Passe à un démarrage sans interface graphique (
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 le Bluetooth ou les gestionnaires de connectivité (~32 Mo économisés).
- Exécute l'inférence sans affichage en définissant
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 mémoire pour tous les détails.
Link to this sectionPourquoi mon export TensorRT INT8 désactive-t-il end2end sur JetPack 6 ?#
TensorRT 10.3.0 livré avec JetPack 6 présente un problème connu qui empêche la construction de moteurs INT8 lorsque end2end=True est activé. Quand Ultralytics détecte cette combinaison, il désactive automatiquement la branche end2end pour assurer la réussite de l'export.
Pour restaurer les exports INT8 end2end, mets à niveau TensorRT vers une version plus récente (par ex. 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 à niveau, relance ton export. Pour plus de détails, vois le ticket GitHub #23841.