Deux philosophies d’accélération
À l’edge, deux familles d’accélérateurs se disputent l’inférence. Le GPU embarqué — comme celui du Jetson Orin — est un processeur massivement parallèle, programmable, qui exécute à peu près n’importe quel graphe de calcul. Le NPU (Neural Processing Unit) est un circuit dédié : des tableaux de multiplieurs-accumulateurs câblés pour les opérateurs les plus courants des réseaux de neurones.
L’un est un généraliste rapide. L’autre est un spécialiste très efficace. Le choix dépend moins des TOPS affichés que de la nature de votre charge.
Le GPU embarqué : flexible mais gourmand
Le GPU embarqué hérite de tout l’écosystème du GPU desktop : CUDA, frameworks matures, runtimes d’inférence éprouvés. Si un nouveau modèle sort avec un opérateur exotique, le GPU le fera tourner — peut-être pas de façon optimale, mais il le fera.
Cette flexibilité a un coût : un GPU consomme plus, par opération utile, qu’un circuit dédié. Dans une enveloppe de quelques watts, c’est un vrai handicap.
Le NPU : efficace mais rigide
Le NPU inverse le compromis. Sur les opérateurs qu’il implémente — convolutions, matmul, quelques fonctions d’activation — il atteint, à enveloppe comparable et sur une charge stable, une efficacité énergétique (énergie par opération utile) qu’un GPU généraliste n’égale pas : le silicium ne fait que ça. L’écart est structurel ; sa valeur exacte dépend du modèle et reste une estimation.
La contrepartie est la rigidité. Le NPU ne sait faire que ce qui a été câblé. Tout opérateur absent de son jeu doit être exécuté ailleurs — en pratique sur le CPU de l’hôte, via un kernel logiciel de référence.
Comparatif : énergie, flexibilité, écosystème
| Critère | NPU dédié | GPU embarqué |
|---|---|---|
| Efficacité énergétique | Excellente (opérateurs supportés) | Moyenne |
| Flexibilité des modèles | Faible | Excellente |
| Maturité de l'outillage | Variable selon le fournisseur | Élevée |
| Comportement hors support | Repli CPU coûteux | Repli intra-GPU, sans rupture |
| Cible idéale | Modèle figé, déployé en volume | Modèles variés ou évolutifs |
Le piège du compilateur
C’est l’erreur la plus fréquente des projets edge : choisir un NPU pour ses TOPS, puis découvrir que le modèle réel ne se compile qu’à 80 %, le reste s’exécutant lentement sur le CPU. Un GPU embarqué un peu plus gourmand mais qui exécute tout le graphe peut gagner en pratique.
Comment choisir
Deux questions suffisent souvent. Le modèle est-il figé ? Un modèle stable, déployé en grand volume, justifie l’investissement d’optimisation NPU. Un modèle qui évoluera tous les trimestres rendra cette optimisation à refaire sans cesse. Le graphe se compile-t-il intégralement ? Faites le test sur le matériel cible, avec le modèle réel, avant tout engagement.
En cas de doute, le GPU embarqué est, de notre point de vue, le choix à plus faible risque : un opérateur non optimisé y reste généralement exécuté sur le GPU plutôt que renvoyé au CPU, au prix de performances dégradées plutôt que d’un effondrement. Ce n’est pas une garantie absolue — une saturation mémoire ou un opérateur réellement absent du runtime restent possibles.
Conclusion
NPU et GPU embarqué ne sont pas en compétition sur le même axe. Le NPU optimise l’énergie d’un problème connu ; le GPU absorbe l’incertitude. Choisissez le NPU quand votre modèle est stable et que la chaîne de compilation le couvre entièrement — et le GPU embarqué dans tous les autres cas. Pour le déploiement concret sur module, voir Jetson Orin et edge AI.
Sources et méthode
La comparaison est volontairement qualitative : les chiffres bruts d’efficacité (TOPS/W, latence) dépendent trop du modèle, du fournisseur et de la version du compilateur pour qu’un classement absolu ait du sens. En revanche, les mécanismes décrits — périmètre d’opérateurs câblés, repli CPU, rôle de la chaîne de compilation — sont documentés par les fournisseurs :
- GPU embarqué — NVIDIA Jetson Orin : GPU Ampere programmable, pile CUDA / TensorRT
- NPU à fonction fixe — ARM Ethos-U et son compilateur Vela : un opérateur non conforme est planifié sur le CPU
- NPU edge — compilateur Google Edge TPU (Coral) : dès le premier opérateur non supporté, cette opération et toutes les suivantes s’exécutent sur le CPU
- Chaîne de compilation GPU — ONNX Runtime / TensorRT Execution Provider : un sous-graphe non pris en charge retombe sur un autre execution provider (CUDA, puis CPU)
Faits vérifiés : la nature à fonction fixe des micro-NPU et le mécanisme de repli CPU de leurs compilateurs ; le caractère programmable du GPU embarqué. Estimation crédible : l’ampleur de l’écart d’efficacité énergétique. Jugement éditorial : la recommandation de privilégier le GPU embarqué « en cas de doute ».