Qu’est-ce qu’une NPU et comment peut-elle t’aider ?

Avec le Kirin 970, Huawei a présenté l'un des premiers chips pour smartphones et tablettes équipé d'une NPU. (Photo : Huawei)

L’intelligence artificielle est sur toutes les lèvres. Cependant, sans Internet, ChatGPT, Google Gemini, Microsoft Copilot, Midjourney et autres ne sont pas utilisables. En effet, les calculs complexes se font encore dans le cloud, sur des serveurs haute performance avec une consommation d’énergie énorme. Avec une unité de traitement neuronal (NPU) dans un PC ou un ordinateur portable, le « détour » par la connexion Internet pourrait bientôt être évité en principe.

Qu’est-ce qu’une NPU ?

Une NPU est un processeur spécialisé pour un PC ou un smartphone qui gère les tâches de calcul intensif liées à l’intelligence artificielle et soulage ainsi le processeur principal (CPU). Une NPU convient particulièrement aux applications d’IA basées sur l’apprentissage profond.

Vous pouvez imaginer une NPU comme une puce, similaire à un CPU ou un GPU. Tous effectuent des calculs, mais ils sont optimisés pour leurs utilisations respectives.

NPU vs CPU vs GPU

Pour les calculs généraux, les CPUs sont idéaux, c’est-à-dire les processeurs classiques. Les GPU sont largement connus des utilisateurs en tant que puces graphiques sur les cartes graphiques. Ils sont principalement utilisés pour l’affichage d’images et de graphiques, mais aussi pour des tâches de calcul plus spécialisées. Ils sont particulièrement puissants pour l’extraction de crypto-monnaies comme le Bitcoin. Les CPU et GPU sont tout à fait capables d’effectuer des calculs d’IA, mais ils ne sont pas idéaux pour cela.

Les puces les plus performantes sont celles conçues pour l’accélération des réseaux neuronaux. Ce sont les unités de traitement neuronal, ou NPUs. Elles disposent de jeux d’instructions spécialisés pour l’apprentissage profond et les opérations typiques de l’IA. En d’autres termes, leur focalisation sur leur domaine d’application spécifique (reconnaissance d’images et de la parole, apprentissage automatique, apprentissage profond) les rend nettement plus performantes et plus efficaces que les CPUs et les GPUs avec leurs instructions universelles. Les instructions pertinentes pour l’IA peuvent donc être exécutées plus rapidement par les NPUs que par les processeurs traditionnels.

Avec le Kirin 970, Huawei a présenté l'un des premiers chips pour smartphones et tablettes équipé d'une NPU. (Photo : Huawei)
Avec le Kirin 970, Huawei a déjà présenté en 2017 l’un des premiers chips pour smartphones et tablettes équipé d’une NPU. (Photo : Huawei)

Jusqu’à présent, les centres de données utilisent principalement des GPUs coûteux et énergivores pour des calculs complexes, qui révèlent leur force lors du traitement parallèle de grandes quantités de données. C’est également le cas des NPUs, mais ces dernières sont encore plus spécialisées et peuvent exécuter des instructions jusqu’à 10 000 fois plus rapidement que les GPUs. Cela est dû en partie au fait que les NPUs ont des unités de mémoire et de calcul étroitement intégrées, ce qui évite les allers-retours entre le processeur et la mémoire.

L’avantage d’une NPU est qu’elle peut effectuer simultanément un grand nombre de tâches relativement petites sans surcharger le CPU et le GPU. Elle ne remplace pas (pour le moment) les GPUs, car ces derniers sont toujours nécessaires pour des calculs complexes ou l’entraînement de modèles d’IA, même s’ils consomment plus d’énergie.

Quels sont les avantages et les inconvénients des NPUs ?

Les NPUs simulent en quelque sorte les synapses : elles effectuent des calculs et transmettent les résultats à la couche suivante du réseau neuronal jusqu’à obtenir le résultat souhaité. Ces calculs sont souvent des multiplicatiions de matrices. La plupart des modèles d’IA utilisent ce type d’opération.

Avantages des NPUs

  • Performances : Elles sont plus rapides que les CPUs et les GPUs pour les calculs liés aux réseaux neuronaux.
  • Consommation d’énergie : Malgré une puissance accrue, la consommation d’énergie est nettement inférieure à celle que devraient fournir les CPUs et GPUs.
  • Exécution sur les appareils : Dans le meilleur des cas, les NPUs effectuent les calculs d’IA sans connexion au cloud ni à Internet, directement sur des appareils tels que des ordinateurs portables ou des smartphones. Cela économise des ressources (énergie, capacité des serveurs, transfert de données…).

Inconvénients des NPUs

  • Coûts : La production de NPUs est coûteuse, le développement pour les PC est encore relativement récent – les NPUs sont donc encore chères.
  • Spécialisation : Les NPUs ne conviennent qu’aux domaines d’application de l’IA, pas à d’autres tâches.
  • Programmation : Actuellement, la programmation des NPUs est très complexe et nécessite des frameworks appropriés ainsi que des connaissances spécialisées chez les développeurs.

Pour nous, les utilisateurs, la seule chose importante est que des appareils tels que les notebooks d’IA dotés d’une NPU intégrée pourraient être plus chers que les appareils traditionnels sans une telle puce.

Pourquoi ai-je besoin d’une NPU ?

Une NPU peut être utilisée dans de nombreux domaines. Beaucoup d’entre eux sont déjà considérés comme acquis pour nous. Cependant, avec une puce supplémentaire, certaines applications peuvent être accélérées et le CPU et le GPU peuvent être soulagés, ce qui améliore les performances globales.

Une NPU est particulièrement adaptée à :

  • La reconnaissance faciale et d’objets
  • La reconnaissance vocale et la traduction automatique
  • La génération de textes, de code de programmation et d’images
  • Des recommandations basées sur le comportement de l’utilisateur
  • L’analyse, l’optimisation et l’automatisation de processus et d’activités
  • Des adversaires plus intelligents et des mondes innovants dans les jeux vidéo

Samsung montre par exemple avec le dernier Galaxy S24 ce qui est possible avec l’IA – par exemple, l’assistant photo.

Dans quels appareils trouve-t-on déjà des NPUs ?

Même si l’IA n’est sur toutes les lèvres que depuis 2022, les NPUs sont déjà utilisées depuis plusieurs années – principalement dans les appareils mobiles. Depuis 2018, Qualcomm intègre une unité de traitement neuronal (NPU) dans ses propres puces Snapdragon, à commencer par le Snapdragon 855. Le fabricant de puces a ainsi répondu aux efforts d’IA des concurrents tels que Huawei (Kirin 970 et ultérieur), Samsung (Exynos 9820 et plus récent) et Apple (A11 et plus récent). Nous utilisons donc l’IA depuis bien plus longtemps – par exemple pour des fonctionnalités de confort telles que la reconnaissance faciale (« Face Unlock »), le flou d’arrière-plan lors des appels vidéo ou l’édition d’images et de vidéos (effets de filtre…).

Les NPUs gagnent également en importance dans les ordinateurs de bureau et les ordinateurs portables : les processeurs AMD avec architecture XDNA, pris en charge par la plateforme Ryzen AI, intègrent déjà des NPUs. La deuxième génération de XDNA est en préparation et promet plus de puissance pour l’IA en 2024. AMD s’est principalement concentré sur les ordinateurs portables ; les PC de bureau et les stations de travail suivront.

Le Meta Quest 3 nécessite également des NPUs pour les calculs spécifiques à l'IA. (Photo : Meta)
Le Meta Quest 3 nécessite également des NPUs pour les calculs spécifiques à l’IA. (Photo : Meta)

Intel mise sur l’Intel AI Boost avec les processeurs Core Ultra. Ce terme désigne les NPUs intégrées à la puce. Les nouveaux processeurs Core Ultra (Meteor Lake) devraient accélérer les notebooks et offrir de puissantes fonctions d’IA avec une durée de vie de batterie plus longue. Des puces d’IA adaptées aux PC de bureau devraient suivre plus tard chez Intel.

Les NPUs sont également nécessaires dans d’autres domaines et sont déjà utilisées. Par exemple :

  • Lunettes de réalité virtuelle et augmentée : Pour générer des mondes authentiques
  • Véhicules : Les voitures autonomes nécessitent une reconnaissance rapide des images et de la parole pour s’orienter.
  • Enceintes intelligentes et maisons intelligentes : Meilleure reconnaissance vocale, adaptation dynamique aux besoins individuels (éclairage, chauffage, etc.)
  • Automatisation industrielle : Les robots industriels et autres machines pour augmenter la productivité nécessiteront (à l’avenir) de plus en plus de NPUs.

TOPS : Indicateur de performances des NPUs

Comment savoir si une NPU est performante ? C’est là que les TOPS entrent en jeu. Le terme signifie « Trillion Operations per Second » et indique combien de billions d’opérations une NPU peut effectuer par seconde. Mais : il s’agit d’une valeur théorique, car les TOPS ne disent rien sur la précision des calculs, sur le type d’opérations (multiplication de matrices ou autres) ou sur la bande passante de la mémoire. Ce sont précisément ces éléments qui varient d’une NPU à une autre.

NPUs dans les processeurs actuels

Processeur/SoC (avec NPU) Billions de calculs par seconde (TOPS)
Qualcomm Snapdragon 8 Gen 3 45
Qualcomm Snapdragon X Elite 75
Google Edge TPU 45
Apple A16 Bionic 17
Samsung Exynos 2300 25
MediaTek Dimensity 9200 24
Remarque : Plus de TOPS ne signifie pas automatiquement une NPU plus performante.

Un Qualcomm Snapdragon 8 Gen 3 dispose de 45 TOPS, les nouveaux processeurs Core Ultra d’Intel offrent 34 TOPS. Est-ce qu’une puce de smartphone est donc mieux adaptée à l’IA qu’un processeur de laptop haut de gamme ? Il n’est pas possible de répondre à cette question de manière générale. Des outils de benchmark supplémentaires tels que MLPerf ou ResNet-50 aident à évaluer de manière réaliste la performance, en fonction du domaine d’application. Il est également crucial que les NPUs puissent être comparées les unes aux autres. Pour cela, elles doivent exécuter les mêmes types de calculs sur un réseau neuronal identique.

De plus : Par exemple, chez AMD et Intel, les CPUs et les GPUs effectuent également des tâches spécifiques à l’IA, ce qui augmente la puissance (valeur TOPS) mais augmente également la consommation d’énergie par rapport aux processeurs de smartphones.

Néanmoins, les TOPS sont considérés comme un indicateur pertinent reflétant les performances théoriques des NPUs.

Quest ce quune NPU et comment peut elle taider