NPU vs GPU : quelle est la différence ?

NPU vs. GPU: What

Aujourd’hui, les applications matérielles et logicielles de l’IA ont progressé pour devenir spécialement conçues pour optimiser les opérations de l’intelligence artificielle et des réseaux neuronaux. Il s’agit notamment des unités de traitement neuronal (NPU), qui sont souvent comparées aux unités de traitement graphique (GPU) en termes de capacité à accélérer les tâches d’IA. Les NPU sont des éléments matériels de plus en plus courants conçus pour des tâches d’IA/ML de pointe aux vitesses les plus rapides possibles. Mais en quoi sont-ils différents ?

Explorons brièvement les NPU et les GPU, comparons leurs différences et examinons les forces et les inconvénients de chacun.

Qu’est-ce qu’une NPU ?

NPU signifie Unité de traitement neuronal. Une NPU est un élément hardware spécialisé conçu pour optimiser les performances des tâches liées à l’intelligence artificielle et aux réseaux de neurones.

Cela pourrait donner l’impression que les NPU appartiennent aux laboratoires de recherche et aux bases militaires, mais les NPU – bien qu’il s’agisse d’une invention relativement nouvelle – sont de plus en plus courantes. Bientôt, vous commencerez à voir des NPU dans les ordinateurs de bureau et portables, et la plupart des smartphones modernes ont des NPU intégrés dans leurs processeurs principaux, y compris les modèles iPhone, Google Pixel et Samsung Galaxy des dernières années.

// Histoires liées

NPU vs GPU quelle est la difference

Croyez-le ou non, cette slide est tirée d’une présentation Qualcomm SoC 2013. Le terme « NPU », en tant que mot à la mode, n’a commencé à attirer l’attention qu’une décennie plus tard.

Les unités de traitement neuronal aident à prendre en charge (comme leur nom l’indique) les moteurs neuronaux et les algorithmes de réseau, et ceux-ci sont utilisés dans des contextes très avancés comme la conduite autonome et le traitement du langage naturel (NLP), ainsi que dans des applications de routine comme la reconnaissance faciale, la reconnaissance vocale et le traitement d’images. sur votre téléphone.

Note de l’éditeur:

Ce billet de blog invité a été rédigé par le personnel de Pure Storage, une société technologique américaine cotée en bourse et dédiée aux solutions de stockage de données 100 % Flash d’entreprise. Pure Storage tient un blog très actif, c’est l’un de leurs articles « Purely Educational » que nous reproduisons ici avec leur permission.

Qu’est-ce qu’un GPU ?

GPU signifie Graphics Processing Unit. Développés à l’origine pour le rendu graphique dans les jeux vidéo et les applications multimédias, les utilisations des GPU ont considérablement évolué et sont désormais utilisées dans de nombreuses applications différentes nécessitant un traitement parallèle gérant des calculs complexes.

La force unique des GPU réside dans la rapidité et l’efficacité avec lesquelles ils exécutent simultanément des milliers de petites tâches. Cela les rend particulièrement efficaces pour les tâches complexes comportant de nombreux calculs simultanés, telles que le rendu graphique, la simulation de la physique et même la formation de réseaux neuronaux.

NPU vs GPU : différences

D’un point de vue architectural, les NPU sont encore plus équipés pour le traitement parallèle que les GPU. Les NPU comportent un nombre plus élevé d’unités de traitement plus petites que les GPU. Les NPU peuvent également intégrer des hiérarchies de mémoire spécialisées et des optimisations de flux de données qui rendent le traitement des charges de travail d’apprentissage en profondeur (deep learning) particulièrement efficace. Les GPU ont un plus grand nombre de cœurs plus polyvalents que les NPU. Historiquement, ces cœurs sont utilisés dans diverses tâches de calcul via un traitement parallèle, mais les NPU sont particulièrement bien conçus pour les algorithmes de réseaux neuronaux.

1719316917 252 NPU vs GPU quelle est la difference

Les NPU sont particulièrement efficaces pour travailler avec des tâches courtes et répétitives. Incorporés dans les systèmes informatiques modernes, les NPU peuvent soulager les GPU de la charge de gestion des opérations matricielles inhérentes aux réseaux neuronaux et laisser le GPU traiter les tâches de rendu ou le calcul à usage général.

Par rapport aux GPU, les NPU excellent dans les tâches qui dépendent de calculs intensifs d’apprentissage en profondeur (deep learning). La PNL, la reconnaissance vocale et la vision par ordinateur sont quelques exemples de domaines dans lesquels les NPU excellent par rapport aux GPU. Les GPU ont une architecture plus polyvalente que les NPU et peuvent avoir du mal à rivaliser avec les NPU dans le traitement de modèles de langage à grande échelle ou d’applications informatiques de pointe.

NPU vs GPU : performances

Lorsqu’on les met côte à côte, la plus grande différence de performances entre les NPU et les GPU réside dans l’efficacité et la durée de vie de la batterie. Étant donné que les NPU sont spécialement conçus pour les opérations sur les réseaux neuronaux, ils nécessitent beaucoup moins d’énergie pour exécuter les mêmes processus qu’un GPU à des vitesses comparables.

Cette comparaison constitue bien plus une déclaration sur la complexité et l’application actuelles des réseaux de neurones que sur les différences architecturales entre les deux types de hardware. Les NPU sont optimisés sur le plan architectural pour les charges de travail IA/ML et surpassent les GPU dans la gestion des charges de travail les plus complexes telles que l’inférence et la formation du deep learning.

NPU vs GPU quelle est la difference

1719316918 820 NPU vs GPU quelle est la difference

Le hardware spécialisé des NPU pour les multiplications matricielles et les fonctions d’activation signifie qu’ils atteignent des performances et une efficacité supérieures par rapport aux GPU dans des tâches telles que la traduction linguistique en temps réel, la reconnaissance d’images dans les véhicules autonomes et l’analyse d’images dans les applications médicales.

Problèmes de mise en œuvre et demandes de stockage

Au niveau de l’entreprise, les NPU peuvent être intégrées à l’infrastructure et aux pipelines de traitement de données existants. Les NPU peuvent être déployés aux côtés des CPU, GPU et autres accélérateurs au sein des centres de données pour obtenir la plus grande puissance de calcul possible pour les tâches d’IA. Cependant, lorsque tous les éléments de traitement IA/ML sont intégrés aux opérations du centre de données de l’entreprise, des risques d’accès et de stockage des données peuvent survenir.

Les NPU et GPU entièrement optimisés traitant les charges de travail IA/ML peuvent traiter les données à des vitesses si élevées que les systèmes de stockage traditionnels peuvent avoir du mal à suivre, ce qui entraîne des bottleneck (goulots d’étranglement) potentiels dans la récupération et le traitement des données.

En pratique, les NPU ne nécessitent pas d’espace de stockage spécifique. Toutefois, pour les exploiter avec une efficacité maximale, il faut qu’ils aient un accès extrêmement rapide à de vastes ensembles de données. Les NPU traitant des charges de travail d’IA/ML nécessitent souvent d’énormes volumes de données pour former et déduire des modèles précis, ainsi que la possibilité de trier, d’accéder, de modifier et de stocker ces données extrêmement rapidement. Les solutions pour cela au niveau de l’entreprise se présentent sous la forme de stockage flash et d’infrastructures de stockage gérées de manière globale.

Pour récapituler, les NPU sont spécialement conçues et architecturées pour exécuter des opérations de réseau neuronal, ce qui les rend particulièrement efficaces pour gérer les petites tâches répétitives associées aux opérations d’IA/ML.

À première vue, les GPU semblent similaires : des composants matériels conçus pour effectuer de petites opérations simultanément. Cependant, les NPU ont un net avantage en termes de charges de travail neuronales en raison de leur optimisation pour des tâches telles que les multiplications matricielles et les fonctions d’activation. Cela rend les NPU supérieurs aux GPU pour gérer les calculs d’apprentissage profond, notamment en termes d’efficacité et de vitesse.

Détente, découvrez l’évolution du nombre de smartphones vendus par marque au fil du temps dans la vidéo ci-dessous :

Youtube video