Présentation
EnglishRÉSUMÉ
Les ensembles de données gigantesques de beaucoup d’applications modernes et des techniques matérielles comme l’empilement 3D de puces dans les DRAM HBT ont donné une nouvelle actualité au calcul en mémoire ou calcul près de la mémoire. L’article présente les problématiques correspondantes : localisation du calcul, quantité de calcul, coordination entre CPU et l’accélérateur en ou près de la mémoire. Cinq exemples significatifs récents sont présentés et discutés : le circuit Untether AI Bocqueria, le circuit Cebras WCS-2, le projet Ambit, la puce PIM d’UPMEM et le circuit Aquabolt-XL de Samsung.
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 - Professeur émérite à l’université Paris Saclay
INTRODUCTION
Depuis plusieurs décennies, l’écart entre les performances de processeurs et des mémoires DRAM, connu sous le nom de « mur mémoire », n’a cessé de croître. Différentes techniques sont utilisées pour limiter la croissance de cet écart :
-
hiérarchies de caches, pour rapprocher instructions et données du processeur ;
-
multithreading matériel pour limiter les attentes mémoires ;
-
augmentation des débits des DRAM avec des générations successives : DDR, GDDR, HBM.
Rapprocher les calculs des données mémoire est une technique étudiée depuis les années 1960. Des réalisations comme les Vector IRAM ont été proposées dans les années 1990. Calcul en mémoire ou près de la mémoire devient d’actualité en fonction de deux phénomènes :
-
Beaucoup d’applications modernes utilisent des ensembles de données gigantesques. Minimiser les transferts entre CPU et mémoire principale DRAM devient une obligation.
-
Les techniques matérielles de réalisation de circuits, comme l’empilement 3D de puces dans des DRAM HBM (High Bandwith Memory) permettent de faciliter le calcul près de mémoires DRAM.
Calculer près ou en mémoire pose un certain nombre de questions :
-
Où effectuer le calcul ?
-
Quelle est la quantité de calculs nécessaire ?
-
Comment organiser la coordination entre le CPU maître et l’accélérateur matériel en ou près de la mémoire ?
Ces questions sont détaillées.
Cinq exemples récents de réalisation sont discutés :
-
L’architecture Untether AI Boqueria est un accélarateur pour inférence dans les réseaux de neurones. Il est constitué d’une grille 2D de 729 blocs SRAM, chaque bloc comprenant 512 SRAM de 640 octets et 512 processeurs élémentaires. Les calculs sont proches des SRAM.
-
Le circuit Celebras WS2 est un circuit constitué d’un wafer de 850 000 cœurs (2,6 . 1012 transistors) pour l’apprentissage profond. Les cœurs, interconnectés en grille 2D au niveau du wafer, ont un ratio 50 : 50 de logique (calcul) et de mémoire SRAM.
-
Le projet Ambit modifie la structure interne d’une DRAM pour réaliser un certain nombre d’opérations de base : copie, Not, And, Or, etc.
-
La société UPMEM a conçu et testé des puces PIM comprenant un processeur réalisé en technologie DRAM avec un jeu d’instructions complet pour le calcul entier, sans flottants ni instructions SIMD à côté de bancs mémoire DRAM. On a des calculs près des bancs mémoire DRAM.
-
Le circuit Aquabolt-XL de Samsung empile des puces DRAM avec la technologie TSV et insère dans l’empilement des puces avec des unités de calcul entre les bancs mémoire. L’unité de calcul a un nombre réduit d’instructions de type RISC 32 bits contrôlant notamment des instructions SIMD d’additions et multiplications sur des flottant 16 bits.
DOI (Digital Object Identifier)
CET ARTICLE SE TROUVE ÉGALEMENT DANS :
Accueil > Ressources documentaires > Électronique - Photonique > Électronique > Architecture et tests des circuits numériques > Calcul en mémoire ou près de la mémoire > Calcul en mémoire DRAM
Cet article fait partie de l’offre
Technologies logicielles Architectures des systèmes
(240 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
Un Parcours Pratique
Opérationnel et didactique, pour garantir l'acquisition des compétences transverses
Doc & Quiz
Des articles interactifs avec des quiz, pour une lecture constructive
Présentation
5. Calcul en mémoire DRAM
Avec le calcul en mémoire, mémoire et calcul sont réalisés dans la même mémoire DRAM.
Le projet Ambit est très représentatif de cette approche. Il consiste en de légères modifications de la structure interne d’une DRAM pour implanter des fonctions logiques élémentaires comme ET, OU et NOT. Compte tenu de l’organisation interne des DRAM, ces opérations portent sur des vecteurs d’un nombre significatif de bits. Nous reprenons les éléments clés de l’article pour illustrer les principes.
5.1 Fonctionnement d’un point mémoire DRAM
Il est nécessaire de rappeler le fonctionnement du point mémoire DRAM (cellule transistor + capacité et amplificateur de lecture) présenté en figure 17.
Les états successifs impliqués dans la lecture d’un point mémoire sont présentés en figure 18 extraite de :
-
on suppose que la capacité est initialement chargée ...
Cet article fait partie de l’offre
Technologies logicielles Architectures des systèmes
(240 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
Un Parcours Pratique
Opérationnel et didactique, pour garantir l'acquisition des compétences transverses
Doc & Quiz
Des articles interactifs avec des quiz, pour une lecture constructive
Calcul en mémoire DRAM
BIBLIOGRAPHIE
-
(1) - SING (G.) et al - Near-Memory Computing: Past, Present, and Future - arXiv, 2019 https://arxiv.org/pdf/1908.02640.pdf
-
(2) - PATERSON (D.) et al - A case for Intelligent RAM, - IEEE Micro, vol. 17, n°2, pp 34-44, March 1997.
-
(3) - KOZIRAKIS (C.E.) et al - Scalable Processors in the Billion-Transistor Era : IRAM, - Computer, Vol. 30, N° 9, pp 75-78, Sept. 1997.
-
(4) - CALPIN (J.M.) - Memory Bandwidth and System Balance in HPC System, - https://sites.utexas.edu/jdm4372/tag/memory-bandwidth/
-
(5) - FARBER (R.) - How High-Bandwidth Memory Will Break Performance Bottlenecks, The Next platform, - October 21, https://www.nextplatform.com/2021/10/21/how-high-bandwidth-memory-will-break- performance-bottlenecks/
-
(6) - GHOSE (S.), BOROUMAND (A.), KIM (J.S.), GÓMEZ-LUNA...
DANS NOS BASES DOCUMENTAIRES
Cet article fait partie de l’offre
Technologies logicielles Architectures des systèmes
(240 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
Un Parcours Pratique
Opérationnel et didactique, pour garantir l'acquisition des compétences transverses
Doc & Quiz
Des articles interactifs avec des quiz, pour une lecture constructive