Les NPUs : un élément clé de la bataille des fournisseurs de puces AI

Il est clair qu’une bataille est en cours parmi les principaux acteurs du marché des PC concernant la définition de ce qui fait un PC AI. Cette guerre s’étend également à la façon dont Microsoft et d’autres OEM interprètent cette définition. La réalité est qu’un PC AI doit être capable d’exécuter localement des charges de travail AI, que ce soit en utilisant un CPU, un GPU ou une unité de traitement neuronale. Microsoft a déjà introduit la clé Copilot dans le cadre de ses plans visant à combiner les GPU, CPU et NPUs avec des fonctionnalités basées sur le cloud pour permettre des expériences AI sous Windows.

La réalité plus large est que les développeurs AI et l’industrie des PC dans son ensemble ne peuvent pas se permettre de faire tourner l’AI dans le cloud de manière perpétuelle. Plus spécifiquement, l’informatique AI locale est nécessaire pour une croissance durable. Et même si toutes les charges de travail ne sont pas identiques, la NPU est devenue une destination nouvelle et populaire pour de nombreuses charges de travail AI de nouvelle génération.

Qu’est-ce qu’une NPU ?

Au cœur, une NPU est un accélérateur spécialisé pour les charges de travail AI. Cela signifie qu’elle est fondamentalement différente d’un CPU ou d’un GPU car elle n’exécute pas le système d’exploitation ou ne traite pas les graphiques, mais elle peut facilement aider à le faire lorsque ces charges de travail sont accélérées en utilisant des réseaux neuronaux. Les réseaux neuronaux dépendent fortement des tâches de multiplication de matrices, ce qui signifie que la plupart des NPUs sont conçues pour effectuer des multiplications matricielles à une puissance extrêmement basse de manière extrêmement parallèle.

Les GPUs peuvent faire la même chose, ce qui explique en partie pourquoi ils sont très populaires pour les tâches de réseau neuronal dans le cloud aujourd’hui. Cependant, les GPUs peuvent être très énergivores pour accomplir cette tâche, tandis que les NPUs se sont révélées être beaucoup plus économes en énergie. En bref, les NPUs peuvent effectuer rapidement, efficacement et pour des charges de travail plus soutenues des tâches AI sélectionnées.

L’évolution de la NPU

Certains des premiers efforts de construction de NPUs venaient du monde du calcul neuromorphique, où de nombreuses entreprises ont essayé de construire des processeurs basés sur l’architecture du cerveau humain et du système nerveux. Cependant, la plupart de ces efforts n’ont jamais abouti, et beaucoup ont été éliminés de l’existence. D’autres efforts sont nés de l’évolution des processeurs de signaux numériques, qui ont été initialement créés pour convertir des signaux analogiques tels que le son en signaux numériques. Des entreprises comme Xilinx (maintenant partie d’AMD) et Qualcomm ont toutes deux adopté cette approche, repurposant une partie ou la totalité de leurs DSP en moteurs AI. Ironiquement, Qualcomm avait déjà une NPU en 2013 appelée Zeroth, qui était environ une décennie trop tôt. J’ai écrit sur sa transition matériel dédié en logiciel en 2016.

L’un des avantages des DSP est qu’ils ont traditionnellement été très programmables tout en ayant une très faible consommation d’énergie. Combiner ces deux avantages avec la multiplication matricielle a conduit les entreprises vers la NPU dans de nombreux cas. J’ai appris les DSP au début de mon parcours avec une entreprise de conception de prototypes électroniques qui travaillait beaucoup avec les DSP de TI au milieu des années 2000. Xilinx appelait autrefois son accélérateur AI un DPU, tandis qu’Intel l’appelait une unité de traitement visuel en héritage de son acquisition de Movidius, un fabricant d’accélérateurs AI basse puissance. Tous ceux-ci ont quelque chose en commun, à savoir qu’ils proviennent tous d’un processeur conçu pour analyser des signaux analogiques (par exemple, le son ou l’imagerie) et traiter ces signaux rapidement et à une puissance extrêmement faible.

La NPU de Qualcomm

Quant à Qualcomm, j’ai personnellement assisté à son parcours du DSP Hexagon au NPU Hexagon, au cours duquel la société a continuellement investi dans des améliorations incrémentales pour chaque génération. Aujourd’hui, la NPU de Qualcomm est assez puissante pour revendiquer 45 TOPS de performance AI à elle seule. En fait, dès 2017, Qualcomm parlait de la performance AI à l’intérieur du DSP Hexagon, et de l’exploiter aux côtés du GPU pour les charges de travail AI. Alors qu’il n’y avait pas de revendications de performance pour le Hexagon 682 à l’intérieur du SoC Snapdragon 835, sorti cette année-là, le Snapdragon 845 de 2018 incluait un Hexagon 685 capable de 3 TOPS grâce à une technologie appelée HVX. Lorsque Qualcomm a mis le Hexagon 698 à l’intérieur du Snapdragon 865 en 2019, le composant n’était plus appelé un DSP, mais une “cinquième génération d’unités AI”, ce qui signifie que les actuels Snapdragon 8 Gen 3 et Snapdragon X Elite sont les neuvièmes générations d’unités AI de Qualcomm.

Le reste du paysage de la NPU AI PC

Toutes les NPUs ne sont pas identiques. En fait, nous ne comprenons toujours pas pleinement quelles sont les architectures des NPUs de chacun ni à quelle vitesse elles fonctionnent, ce qui nous empêche de pouvoir les comparer pleinement. Cela dit, Intel a été très ouvert au sujet de la NPU dans le modèle Intel Core Ultra codé Meteor Lake. A l’heure actuelle, le Moteur Neural M3 d’Apple est livré avec 18 TOPS de performance AI, tandis que la NPU d’Intel en a 11 et la NPU XDNA dans le Ryzen 8040 d’AMD (également appelé Hawk Point) a 16 TOPS. Ces chiffres semblent tous faibles comparés aux 45 TOPS de performance AI de la seule NPU du Snapdragon X Elite de Qualcomm, et aux 75 TOPS du système complet. En fait, le système complet TOPS de Meteor Lake est de 34, tandis que celui du Ryzen 8040 est de 39, tous deux plus bas que la performance AI seule de Qualcomm. Alors que je m’attends à ce qu’Intel et AMD minimisent le rôle de la NPU au départ et que Qualcomm le mette en avant, il semble que le paysage devienne beaucoup plus intéressant à la fin de cette année pour se poursuivre dans le début de l’année prochaine.

Le transfert d’applications du cloud vers la NPU

Bien que le CPU et le GPU restent extrêmement pertinents pour une utilisation quotidienne dans les PC, la NPU est devenue le centre d’attention pour de nombreux acteurs de l’industrie en tant que domaine de différenciation. Une question ouverte est de savoir si la NPU est suffisamment pertinente pour justifier d’être un axe de technologie et, si c’est le cas, combien de performance est suffisant pour offrir une expérience adéquate ? Dans l’ensemble, je crois que les NPUs et leur performance en TOPS sont déjà devenus un champ de bataille majeur au sein du secteur des PC. Ceci est particulièrement vrai si l’on considère le nombre d’applications qui pourraient cibler simultanément la NPU et, éventuellement, la surcharger si la marge de performance n’est pas suffisante.

Avec autant d’attention portée à la NPU à l’intérieur du PC AI, il est logique qu’il y ait des applications qui tirent parti de cette NPU pour justifier son existence. Aujourd’hui, la plupart des applications AI résident dans le cloud car c’est là que se trouve la plupart de la puissance de calcul AI. À mesure que ces applications se déplacent du cloud vers un modèle hybride, la dépendance envers les NPUs locales pour décharger les fonctions AI du cloud augmentera. De plus, il y aura des applications qui nécessiteront des niveaux de sécurité plus élevés pour lesquels les services informatiques ne permettront tout simplement pas aux données de quitter la machine locale – ces applications dépendront entièrement du calcul local. Ironiquement, je crois qu’un de ces domaines d’application clé sera la sécurité elle-même, étant donné que la sécurité a traditionnellement été l’un des plus grands consommateurs de ressources pour les systèmes d’entreprise.

À mesure que le temps passe, de plus en plus de LLMs et d’autres modèles seront quantifiés de manière à leur permettre d’avoir une empreinte plus petite sur l’appareil local tout en améliorant la précision. Cela permettra plus d’AI locale qui aura une meilleure compréhension contextuelle des données de l’appareil local, et qui fonctionnera avec une latence plus faible. Je crois également que bien que certaines applications AI se déploient initialement comme des applications hybrides, il y aura toujours des organisations informatiques qui voudront déployer en premier sur l’appareil – les premières versions de ces applications ne seront probablement pas aussi optimisées que possible et prendront probablement plus de calcul, ce qui entraînera une demande plus élevée pour des puces AI à plus de TOPS.

Momentum croissant

Cependant, la course à la domination et la pertinence de la NPU ne fait que commencer. Le Snapdragon X Elite de Qualcomm devrait être le leader des TOPS NPU lorsque l’entreprise lancera au milieu de cette année, mais elle ne sera pas seule. AMD s’est déjà engagée à fournir 40 TOPS de performance NPU dans ses prochains processeurs Ryzen de la génération Strix Point attendus début de l’année prochaine, tandis qu’à sa récente conférence Vision 2024, Intel a revendiqué 100 TOPS de performance AI au niveau de la plate-forme pour les puces Lunar Lake prévues au quatrième trimestre de 2024. (Rappelons que le Snapdragon X Elite de Qualcomm revendique 75 TOPS à travers le GPU, le CPU et la NPU.) Bien que cela ne soit pas officiel, on comprend dans l’écosystème des PC que Microsoft a exigé de ses partenaires équipementiers en silicium de fournir au moins 40 TOPS de performance AI NPU pour exécuter le Copilot localement.

Un point à noter est que la plupart des entreprises n’ajustent apparemment pas la performance de leur NPU en fonction du niveau du produit ; en effet, la performance de la NPU est la même sur toutes les plateformes. Cela signifie que les développeurs peuvent cibler une seule NPU par fournisseur, ce qui est une bonne nouvelle pour les développeurs car l’optimisation pour une NPU reste une tâche assez complexe. Heureusement, il existe des APIs de bas niveau comme DirectML et des cadres de travail tels que ONNX qui espérons-le aideront à réduire la charge pour les développeurs afin qu’ils n’aient pas à cibler chaque type de NPU par eux-mêmes. Cela dit, je crois que chaque fournisseur de puces aura également son propre ensemble d’APIs et de SDKs qui peuvent aider les développeurs à tirer encore plus parti de la performance et des économies d’énergie de leurs NPUs.

Conclusion

La NPU devient rapidement le nouveau centre d’intérêt pour une industrie en quête de moyens pour résoudre les coûts et la latence qui accompagnent l’informatique AI basée sur le cloud. Alors que certaines entreprises disposent déjà de NPUs à haute performance, il existe un désir clair et très pressant pour les OEM de utiliser des processeurs intégrant des NPUs avec au moins 40 TOPS. Il y aura un mouvement accéléré vers l’AI sur l’appareil, qui commencera probablement par des applications et des modèles hybrides et passera en temps opportun vers un calcul principalement sur appareil. Cela signifie que l’importance de la NPU sera moins pertinente au départ pour certaines plateformes, mais avoir une NPU moins puissante pourrait également se traduire par ne pas offrir les meilleures expériences PC AI possibles.

Il y a encore beaucoup d’inconnues sur la vision complète du PC AI, en particulier compte tenu du nombre de vendeurs différents impliqués, mais j’ai entendu dire que beaucoup de choses seront éclaircies lors de la conférence Build de Microsoft fin mai. Cependant, je crois que la bataille pour le PC AI se prolongera probablement jusqu’en 2025 alors que de plus en plus de fournisseurs de puces et d’OEM adopteront des NPUs plus rapides et plus performantes.