Présentation
RÉSUMÉ
Les différents coprocesseurs/accélérateurs utilisés pour accélérer l'exécution des programmes dans certaines applications sont présentés : NPU, GPU, FPGA, QPU. Les interfaces matérielles et logicielles sont discutées. Alors qu'une amélioration des performances d'au moins un ordre de grandeur est nécessaire pour utiliser un accélérateur, un SDK logiciel mature est un facteur de succès, comme le montre l'utilisation des GPU dans les superordinateurs ou les centres de données.
Lire cet article issu d'une ressource documentaire complète, actualisée et validée par des comités scientifiques.
Lire l’articleAuteur(s)
-
Daniel ETIEMBLE : Ingénieur de l’INSA de Lyon - Collaborateur LISN, Université Paris Saclay
INTRODUCTION
Les coprocesseurs existent depuis les débuts de la fabrication des ordinateurs, avant même la naissance des circuits intégrés. Leur fonction était d’accélérer l’exécution des programmes. Depuis quelques années, souvent renommés accélérateurs, ils ont pris une nouvelle actualité pour l’intelligence artificielle (IA), notamment pour les PC et les serveurs des centres de données. Les circuits actuels utilisent plusieurs types différents d’accélérateurs aux côtés de CPU multi-cœurs performants.
L’article Évolution de l’architecture des ordinateurs [H 1 058], publié en 2016, examine l’articulation entre la technologie des semi-conducteurs, les concepts architecturaux et les besoins des grandes classes d’application. Il concerne surtout l’évolution des processeurs (CPU). Cet article reste d’actualité, même si les applications de l’IA ont pris de plus en plus d’importance.
Dans cet article, nous résumons les caractéristiques générales des CPU, et nous présentons les caractéristiques des grands types d’accélérateurs, et pourquoi ils sont apparus et ont été, ou sont, utilisés.
Nous présentons et discutons les types suivants d’accélérateurs :
-
les coprocesseurs mathématiques et d’E/S, utilisés dans les mainframes et les premiers microprocesseurs.
-
les coprocesseurs sous forme des CPU réduits spécialisés pour un type d’applications, tels les processeurs neuronaux (NPU) dans les PC pour l’IA ;
-
les coprocesseurs utilisant un modèle de calcul différent de celui des CPU, comme les GPU et les FPGA ;
-
les coprocesseurs utilisant des phénomènes physiques particuliers, tels les processeurs quantiques (QPU).
Pour qu’un coprocesseur/accélérateur soit effectivement largement utilisé, un certain nombre de conditions doivent être remplies :
-
il doit fournir un gain de performance significatif par rapport au CPU, d’un ou plusieurs ordres de grandeur ;
-
l’interface matérielle entre le CPU et l’accélérateur doit être le plus possible standardisée ;
-
l’interface logicielle (SDK) doit être mature, facile d’utilisation, comme, par exemple, CUDA pour les GPU NVidia.
MOTS-CLÉS
DOI (Digital Object Identifier)
CET ARTICLE SE TROUVE ÉGALEMENT DANS :
Accueil > Ressources documentaires > Technologies de l'information > Technologies logicielles Architectures des systèmes > Architectures matérielles > Architecture des ordinateurs : CPU et coprocesseurs/accélérateurs > Exemples d’accélérateurs
Cet article fait partie de l’offre
Électronique
(236 articles en ce moment)
Cette offre vous donne accès à :
Une base complète d’articles
Actualisée et enrichie d’articles validés par nos comités scientifiques
Des services
Un ensemble d'outils exclusifs en complément des ressources
Des modules pratiques
Opérationnels et didactiques, pour garantir l'acquisition des compétences transverses
Doc & Quiz
Des articles interactifs avec des quiz, pour une lecture constructive
Présentation
3. Exemples d’accélérateurs
3.1 Processeurs neuronaux (NPU)
À la fin des années 2010 sont apparus des processeurs neuronaux. Les circuits Ethos N37, N57, N77 (octobre 2019) et Ethos N78 (mai 2020) d’ARM en sont un bon exemple. Dans la période récente sont apparus des NPU constituant des accélérateurs pour PC, au côté du CPU et d’autres accélérateurs.
HAUT DE PAGE3.1.1 NPU 3720 du processeur Meteor Lake d’Intel
La figure 3 donne le schéma fonctionnel du NPU 3720, accélérateur pour le processeur Meteor Lake. Le NPU a deux tuiles identiques, chaque tuile comprenant une unité de calcul de données (DPU) et deux unités DSP. Le DPU travaille sur des INT8 (deux opérations par cycle) ou des FP16 (une opération par cycle). La performance maximale des deux DPU est 11 TOPS à 1,16 GHz. Des unités SIMD 128 bits sont disponibles, ainsi qu’un microcontrôleur et un DMA.
Le processeur Core Ultra d’Intel est un bon exemple pour illustrer les problèmes de liaison et de communication entre CPU et accélérateurs.
Les applications IA peuvent utiliser trois composants :
-
le CPU Meteor Lake ;
-
le GPU Arc ;
-
le NPU 3620.
Le système sur puce intégrant ces trois composants utilise l’approche chiplet (figure 4), qui consiste à disposer différentes puces sur un interposeur dans un seul boîtier.
Les différents composants accèdent aux contrôleurs des DRAM LPDDR5 via une interconnexion appelée scalable fabric (figure 5). La puce NPU doit être ajoutée dans cette figure.
Le programme peut s’exécuter sur trois composants :
-
le CPU ;
-
l’accélérateur GPU ;
-
l’accélérateur NPU.
Les programmes IA sont composés en utilisant des bibliothèques développées pour les applications d’apprentissage profond : TensorFlow, PyTorch, ONNX, etc. (figure 6).
HAUT DE PAGE...
Cet article fait partie de l’offre
Électronique
(236 articles en ce moment)
Cette offre vous donne accès à :
Une base complète d’articles
Actualisée et enrichie d’articles validés par nos comités scientifiques
Des services
Un ensemble d'outils exclusifs en complément des ressources
Des modules pratiques
Opérationnels et didactiques, pour garantir l'acquisition des compétences transverses
Doc & Quiz
Des articles interactifs avec des quiz, pour une lecture constructive
Exemples d’accélérateurs
DANS NOS BASES DOCUMENTAIRES
Cet article fait partie de l’offre
Électronique
(236 articles en ce moment)
Cette offre vous donne accès à :
Une base complète d’articles
Actualisée et enrichie d’articles validés par nos comités scientifiques
Des services
Un ensemble d'outils exclusifs en complément des ressources
Des modules pratiques
Opérationnels et didactiques, pour garantir l'acquisition des compétences transverses
Doc & Quiz
Des articles interactifs avec des quiz, pour une lecture constructive