Travaux pratiques : Kit de développement NVIDIA Jetson Orin Nano

La gamme Jetson d’ordinateurs monocartes de NVIDIA fait quelque chose de différent dans une vaste mer de SBC Linux relativement similaires. Conçus pour les applications informatiques de pointe, telles qu’un robot qui doit effectuer une vision par ordinateur à grande vitesse sur le terrain, ils offrent des performances exceptionnelles dans une carte de taille et de poids comparables aux autres SBC du marché. La seule différence, comme vous vous en doutez, est qu’elles ont tendance à coûter beaucoup plus cher : la carte haut de gamme actuelle Jetson AGX Orin 32 Go vous coûtera 999 USD, et c’est après vous obtenez le kit de développement de 2 000 $.

Heureusement pour les pirates et les fabricants comme nous, NVIDIA a réalisé qu’ils avaient besoin d’une passerelle abordable dans leur écosystème, ils ont donc introduit le Jetson Nano à 99 $ en 2019. Le produit s’est avéré si populaire qu’un an plus tard, la société l’a rafraîchi avec une carte de support simplifiée qui a chuté le coût du kit jusqu’à un incroyable 59 $. Cherchant à étendre encore plus ce succès, NVIDIA a annoncé aujourd’hui une nouvelle entrée haut de gamme dans la famille Nano qui se situe quelque part au milieu.

Bien que le prix de 499 $ du kit de développement Jetson Orin Nano puisse être un peu élevé pour les amateurs, il ne fait aucun doute que vous en aurez pour votre argent. Capable d’effectuer 40 000 milliards d’opérations par seconde (TOPS), NVIDIA estime que l’Orin Nano est un incroyable 80X plus puissant comme le précédent Nano. C’est un niveau de performance dont, certes, tous les lecteurs de Hackaday n’ont pas besoin sur leur établi. Mais l’attrait d’un superordinateur de la taille d’une paume est bien réel, et toute personne intéressée par l’expérimentation de l’apprentissage automatique ferait bien de peser (au sens propre et au sens figuré) l’Orin Nano par rapport à un ordinateur de bureau doté d’une carte graphique NVIDIA comparable.

NVIDIA nous a fourni l’un des tout premiers kits de développement Jetson Orin Nano avant leur dévoilement officiel lors de la Game Developers Conference (GDC), et j’ai passé les derniers jours à me familiariser avec le matériel et les logiciels. Après avoir accepté le fait que cette petite carte est considérablement plus puissante que l’ordinateur sur lequel j’écris actuellement, je suis ravi de voir ce que la communauté peut accomplir avec les performances incroyables offertes par ce système de la taille d’une pinte.

Plus. Plus c’est bien

À première vue, le kit de développement Jetson Orin Nano ressemble remarquablement au précédent Nano. Il semble clair que NVIDIA savait qu’ils avaient un design gagnant et a sagement décidé d’en tirer parti plutôt que d’essayer de tout recommencer à zéro. C’est un excellent exemple de prendre une bonne idée et de l’améliorer – ils ont simplement ajouté plus de tout, à la fois à l’intérieur et à l’extérieur.

Kit de développement Jetson Orin Nano 8 Go (à gauche) par rapport au kit de développement Jetson Nano 2 Go de 2020 (à droite)

L’avant du kit de développement Orin Nano comprend une prise DC baril pour l’alimentation (19 V @ 2,4 A), quatre ports USB 3.2 Type-A, vidéo DisplayPort, Gigabit Ethernet et un port USB-C que la documentation explique est pour le débogage fins uniquement. Le côté gauche comporte deux connecteurs de caméra CSI et, à droite, le même connecteur d’extension à 40 broches que celui des cartes Nano précédentes.

De tous ces changements, j’ai trouvé le passage à DisplayPort quelque peu ennuyeux. Alors que DP n’est pas un connecteur rare de nos jours, il n’y a pas de concurrence avec l’omniprésence de HDMI. Le retour de la prise DC est également quelque peu intéressant, car son retrait et son remplacement par un connecteur USB-C était l’un des changements apportés par NVIDIA entre le Jetson Nano d’origine et la version optimisée à 59 $. Comme les besoins en alimentation de l’Orin Nano sont dans la capacité de l’alimentation USB-C, je ne peux que supposer que certains commentaires des utilisateurs doivent avoir déclenché le retour au connecteur plus traditionnel.

Notez le cadre en plastique – une amélioration bienvenue par rapport au PCB nu traditionnel.

En retournant le tableau, nous pouvons voir quelques ajouts supplémentaires. Contrairement à ses prédécesseurs, le kit de développement Orin Nano bénéficie d’une capacité sans fil sous la forme d’une carte WiFi/Bluetooth AzureWave AW-CB375NF branchée dans l’emplacement M.2 2230 de la carte, avec deux antennes PCB. Il existe un deuxième emplacement M.2 Key M pour l’extension de stockage et un emplacement Key E qui, selon la documentation, répartit PCIe, USB 2.0, UART, I2S et I2C.

Vitesse ridicule

Les prises et les ports sont sympas, mais bien sûr avec quelque chose comme ça, la vraie question est de savoir à quel point c’est puissant. Alors que le précédent Jetson Nano apportait un GPU Maxwell à 128 cœurs, le nouveau Orin Nano intègre l’architecture Ampere de NVIDIA avec 1 024 cœurs CUDA et 32 ​​cœurs Tensor. Cela s’ajoute au processeur ARM Cortex-A78AE à 6 cœurs et aux 8 Go de RAM LDDR5 qui sont responsables de l’exécution du système d’exploitation lui-même.

Les comparaisons des deux cartes fournies par NVIDIA sont hilarantes à sens unique, ce qui montre clairement que ces deux appareils appartiennent à des catégories très différentes. En conséquence, la société ne prend même pas la peine de comparer l’Orin Nano avec d’autres SBC sur le marché. Probablement pour une bonne raison – comme le précédent Jetson Nano (évalué à 472 GFLOP) pourrait déjà dépasser de loin la puissance de calcul brute du Pi 4 (estimé être capable de 13,5 GFLOPS), ce ne serait même pas un problème sur ces graphiques.

Mais que signifient tous ces chiffres dans le monde réel ? En guise de test simple, j’ai relancé la même démonstration de détection d’objets en direct utilisée comme référence lors de mes travaux pratiques avec le 2020 Nano. Alors que la carte précédente pouvait gérer un respectable 25 images par seconde (FPS), elle maximisait notamment la RAM disponible dans le processus. En comparaison, l’Orin Nano a crié à travers la même démo à 180 FPS tout en consommant moins de la moitié de la mémoire système disponible.

En termes simples, si vous faites n’importe quel type de projet d’apprentissage automatique ou d’intelligence artificielle, le passage à l’Orin Nano représente un saut générationnel par rapport au matériel précédent.

Logiciel : Capable, mais lourd

Alors que vous auriez du mal à trouver beaucoup de défauts avec le matériel Orin Nano, j’ai rencontré quelques problèmes avec le côté logiciel des choses. Rien qui ne me dissuaderait de recommander le produit, mais tout de même des choses que j’aimerais voir améliorées à l’avenir si possible.

En fin de compte, mon plus gros reproche vient de la décision de NVIDIA de baser sa version personnalisée de Linux sur Ubuntu. Au risque de déclencher une guerre sainte dans les commentaires, Ubuntu me semble être un système d’exploitation beaucoup plus lourd que ce que vous voudriez sur un SBC conçu pour des performances optimales. En effet, la documentation de l’ancien Nano recommandait de tuer l’interface graphique d’Ubuntu pour essayer de libérer de la RAM. Le nouvel Orin n’a pas ce problème particulier, mais je n’ai toujours pas aimé voir le système d’exploitation consommer de l’espace précieux sur la carte SD avec des packages instantanés.

Comme je l’ai dit lors de mes travaux pratiques avec le Nano 2020, ce serait bien si NVIDIA proposait un système d’exploitation plus rationalisé pour ces cartes, en particulier un système mieux adapté au fonctionnement sans tête. Dans l’état actuel des choses, la configuration du logiciel est vraiment orientée vers l’utilisateur ayant un moniteur, une souris et un clavier branchés sur l’Orin Nano – ce qui n’est évidemment pas la façon dont il va être utilisé sur le terrain.

Cela dit, j’apprécie que toutes les bibliothèques, outils et démos nécessaires pour utiliser les cœurs CUDA de la carte soient préinstallés et prêts à l’emploi. Officiellement, cette suite est appelée JetPack SDK et fournit tout ce dont vous avez besoin pour commencer à écrire vos propres applications d’IA accélérées. La meilleure partie est que le SDK est assemblé de telle manière que le code écrit sur une carte Jetson devrait fonctionner sur toutes les autres, juste à des vitesses différentes selon le matériel. Vous pouvez donc démarrer votre projet sur le kit de développement Orin Nano, puis le déployer sur l’une des cartes haut de gamme au moment de la production.

Si vous en avez besoin, ça vaut le coup

Comme je l’ai dit au début de cet exercice pratique, tout le monde n’aura pas besoin de ce type de pouvoir. Pour utiliser à nouveau la démonstration de détection d’objets comme exemple, votre projet de bricolage n’a presque certainement pas besoin de fonctionner à plus de 150 images par seconde. Même avec la limitation de RAM, l’une des anciennes cartes Jetson Nano serait plus que appropriée pour identifier les écureuils dans votre jardin.

Un coup d’œil aux benchmarks officiels fournis par NVIDIA le montre même. Selon le modèle, le précédent Jetson Nano peut encore atteindre plus de 30 FPS. Si l’un d’eux s’avère être quelque chose avec lequel vous souhaitez jouer, vous pourriez économiser de l’argent en optant pour le matériel plus ancien.

Mais si vous êtes plus sérieux avec les logiciels d’IA et que vous voulez une plate-forme de recherche et d’expérimentation pratique et suffisamment puissante pour des modèles plus complexes, le kit de développement Jetson Orin Nano est très convaincant. Alors qu’un PC de jeu plus ancien pourrait potentiellement traiter plus de données brutes, il n’y a rien de mieux en termes de taille et d’efficacité énergétique, sans parler de l’accès à l’environnement de développement officiel de NVIDIA, même s’il est un peu plus lourd que je ne le souhaiterais.

François Zipponi
Je suis François Zipponi, éditorialiste pour le site 10-raisons.fr. J'ai commencé ma carrière de journaliste en 2004, et j'ai travaillé pour plusieurs médias français, dont le Monde et Libération. En 2016, j'ai rejoint 10-raisons.fr, un site innovant proposant des articles sous la forme « 10 raisons de... ». En tant qu'éditorialiste, je me suis engagé à fournir un contenu original et pertinent, abordant des sujets variés tels que la politique, l'économie, les sciences, l'histoire, etc. Je m'efforce de toujours traiter les sujets de façon objective et impartiale. Mes articles sont régulièrement partagés sur les réseaux sociaux et j'interviens dans des conférences et des tables rondes autour des thèmes abordés sur 10-raisons.fr.