Vitesses et bande passante de la mémoire DDR, GDDR et HBM
Les performances des ordinateurs modernes sont considérablement influencées par la vitesse et le type de mémoire utilisé. Les mémoires DDR, GDDR et HBM sont optimisées pour différents usages, qu'il s'agisse de la mémoire système principale pour les CPU, de la mémoire pour les cartes graphiques ou des tâches nécessitant des calculs à large bande passante. Dans cet article, je compare les vitesses et les paramètres clés de ces types de mémoire.

Les performances des normes matérielles informatiques sont souvent annoncées en utilisant des valeurs maximales théoriques mesurées dans des conditions de laboratoire idéales (en pratique, les taux de transfert peuvent être limités par les contrôleurs de périphériques, la température ou d'autres goulets d'étranglement). Ces chiffres ne reflètent pas nécessairement les vitesses d'utilisation réelles, mais ils sont excellents à des fins de comparaison car ils montrent clairement les différences entre les générations technologiques.
Dans les tableaux ci-dessous, je fournis la valeur maximale théorique pour chaque norme, arrondie pour faciliter la lecture et la comparaison, et toujours exprimée en octets (plus précisément en Mo/s) lorsque cela est applicable. J'ai écrit ici sur les normes de transfert et de stockage de données informatiques, les unités de mesure, les vitesses et leurs fondements théoriques.
DDR SDRAM (Mémoire Système)
La mémoire de l'ordinateur (RAM - Random Access Memory) sert de stockage de données temporaire et à accès rapide de l'ordinateur. Les modules de RAM modernes utilisent la technologie DDR (Double Data Rate), ce qui signifie que le transfert de données se produit à la fois sur les fronts montants et descendants du signal d'horloge, doublant ainsi le taux de transfert de données par rapport à la SDRAM originale.
La SDRAM originale (parfois appelée SD ou SDR RAM pour la distinguer de la DDR) fonctionnait à des fréquences d'horloge de 66-133 MHz. Comme elle n'était pas à "double débit de données", son taux de transfert de données effectif (en transferts par seconde) correspondait à sa fréquence d'horloge (en cycles par seconde).
MT/s (MegaTransferts par seconde) indique le nombre de millions d'opérations de transfert de données que la mémoire peut effectuer par seconde. Ceci est significatif pour la mémoire DDR (Double Data Rate) car deux transferts de données ont lieu par cycle d'horloge - un sur le front montant et un sur le front descendant du signal d'horloge.
Prenons l'exemple de la mémoire DDR2-400 :
- Sa fréquence d'horloge de base est de 200 MHz.
- Comme elle utilise la technologie DDR (double débit de données), le taux de transfert réel est le double de la fréquence d'horloge : 400 MT/s.
Pour mieux visualiser cela :
- Une fréquence d'horloge de 200 MHz signifie 200 millions de cycles d'horloge par seconde.
- Dans chaque cycle, 2 transferts de données ont lieu (front montant et descendant).
- Par conséquent, le nombre total de transferts est : 200 millions de cycles/sec × 2 transferts/cycle = 400 millions de transferts par seconde (400 MT/s).
Ceci diffère de la bande passante (Mo/s), qui mesure la quantité réelle de données déplacées. La bande passante est calculée en multipliant la valeur MT/s par la largeur du bus mémoire (généralement 8 octets pour un DIMM DDR standard de 64 bits) : 400 MT/s × 8 octets/transfert = 3200 Mo/s.
Version | Taux de transfert (MT/s) | Nom du module | Année de sortie | Fréquence d'horloge (MHz) | Bande passante (Mo/s) |
---|---|---|---|---|---|
DDR | 200-400 | PC-1600 - PC-3200 | 1998 | 100-200 | 1 600 - 3 200 Mo/s |
DDR2 | 400-1066 | PC2-3200 - PC2-8500 | 2003 | 200-533 | 3 200 - 8 533 Mo/s |
DDR3 | 800-2133 | PC3-6400 - PC3-17000 | 2007 | 400-1066 | 6 400 - 17 066 Mo/s |
DDR4 | 1600-3200+ | PC4-12800 - PC4-25600+ | 2014 | 800-1600+ | 12 800 - 25 600+ Mo/s |
DDR5 | 4800-8000+ | PC5-38400 - PC5-64000+ | 2020 | 2400-4000+ | 38 400 - 64 000+ Mo/s |
Bande passante calculée pour une interface mémoire standard de 64 bits (8 octets) de large (DIMM unique). Les configurations à double canal ou à quatre canaux multiplient cette bande passante.
Les fabricants commercialisent les modules de mémoire en utilisant différentes notations, telles que le numéro de version (DDR4), le taux de transfert (3200 MT/s) ou le nom du module (PC4-25600). Cela peut être déroutant, mais le tableau ci-dessus permet d'identifier les modules équivalents. Par exemple, DDR4-3200 et PC4-25600 font référence à la même spécification de vitesse de mémoire.
Mémoire DDR ECC
La mémoire ECC (Error-Correcting Code) est un type spécial de mémoire principalement utilisé dans les serveurs, les stations de travail et autres systèmes nécessitant une haute fiabilité. La mémoire DDR ECC diffère de la mémoire DDR standard non-ECC par ses capacités de correction d'erreurs.
- Correction d'erreurs : La mémoire ECC peut détecter et corriger automatiquement les erreurs mono-bit et détecter les erreurs multi-bits. Cela réduit considérablement le risque de corruption de données et de plantages du système.
- Bits supplémentaires : Un module de mémoire ECC utilise généralement des bits supplémentaires par mot de données (par exemple, 72 bits pour 64 bits de données) pour stocker les codes de vérification d'erreurs, permettant la correction des erreurs.
- Compatibilité : Toutes les cartes mères ne prennent pas en charge la mémoire ECC. La plupart des cartes mères de serveurs et de stations de travail sont compatibles, mais les cartes mères de bureau grand public typiques ne le sont pas. Le CPU doit également prendre en charge l'ECC.
- Vitesse et latence : La mémoire ECC peut être légèrement plus lente ou avoir une latence plus élevée que la mémoire DDR non-ECC comparable en raison de la surcharge du processus de vérification des erreurs.
- Générations DDR : La technologie ECC est disponible pour toutes les versions DDR modernes (DDR, DDR2, DDR3, DDR4, DDR5) et est couramment utilisée dans les serveurs pour améliorer la stabilité du système.
La mémoire ECC est généralement utilisée dans les systèmes critiques où l'intégrité des données et le fonctionnement continu sont essentiels, tels que les services financiers, les systèmes de santé, la recherche scientifique et les environnements informatiques à haute performance.
GDDR (Mémoire Graphique)
Mémoire GDDR : La mémoire GDDR (Graphics Double Data Rate) est spécialement conçue pour les cartes graphiques (GPU). Elle présente généralement des fréquences d'horloge et des taux de transfert (GT/s) plus élevés que la mémoire système DDR standard, optimisée pour les besoins en bande passante élevée du rendu graphique et du traitement parallèle. Les puces de mémoire GDDR ont généralement une interface plus large (par exemple, 32 bits par puce) par rapport aux puces DDR standard, et plusieurs puces sont utilisées sur une carte graphique pour un bus mémoire global très large (par exemple, 128 bits, 256 bits, 384 bits).
GT/s (GigaTransferts par seconde) indique le nombre d'opérations de transfert de données par seconde, similaire à MT/s pour la mémoire DDR, mais à l'échelle de 1000 (Giga vs. Mega). Il représente la vitesse de transfert brute, et non la bande passante finale en octets/seconde.
Version | Année de sortie | Fréquence d'horloge (MHz) | Taux de transfert (GT/s) | Bande passante typique (Go/s) |
---|---|---|---|---|
GDDR2 | 2002 | 400–500 | 0.8–1.0 | ~12.8 – 16 Go/s |
GDDR3 | 2004 | 800–1000 | 1.6–2.0 | ~51.2 – 80 Go/s |
GDDR4 | 2006 | ~900–1150 | 1.8–2.3 | ~86 – 110 Go/s |
GDDR5 | 2008 | ~1250–2000 | 5.0–8.0 | ~160 – 384 Go/s |
GDDR5X | 2016 | ~1250–1750 | 10.0–14.0 | ~320 – 540 Go/s |
GDDR6 | 2018 | ~1750–2500 | 14.0–20.0 | ~448 – 960 Go/s |
GDDR6X | 2020 | ~1188–1438 | 19.0–23.0 | ~760 – 1104 Go/s |
Les valeurs de bande passante sont des exemples illustratifs pour les cartes graphiques haut de gamme typiques de l'époque, calculées comme (Taux de transfert * Largeur du bus / 8). La bande passante réelle dépend fortement de la configuration de la mémoire du GPU spécifique (largeur du bus). La fréquence d'horloge fait référence à l'horloge de données effective (la moitié du taux de transfert pour la GDDR non-PAM4).
HBM (Mémoire à Large Bande Passante)
Mémoire HBM : La HBM (High Bandwidth Memory) utilise une approche fondamentalement différente en empilant verticalement les puces de mémoire et en les connectant au processeur (souvent un GPU ou un accélérateur spécialisé) via une interface extrêmement large (par exemple, 1024 bits ou plus par pile) sur un interposeur. Cela permet d'obtenir d'énormes taux de transfert de données à des fréquences d'horloge plus basses et une consommation d'énergie plus faible par rapport à la GDDR atteignant une bande passante similaire. La HBM3E, par exemple, peut dépasser 1 To/s de bande passante par pile. La HBM est principalement utilisée dans le calcul haute performance (HPC), les accélérateurs d'intelligence artificielle (IA) et les cartes graphiques haut de gamme où la bande passante mémoire maximale est essentielle.
Version | Année de sortie | Bande passante par pile (Go/s) |
HBM | 2013 | ~128 Go/s |
HBM2 | 2016 | ~256 - 307 Go/s |
HBM2E | 2018 | ~307 - 460 Go/s |
HBM3 | 2022 | ~819 Go/s |
HBM3E | 2023 | ~1 200+ Go/s |
HBM4 (Prévue) | ~2026 | ~1 500 - 2 000+ Go/s |
Comparaison Récapitulative
- DDR SDRAM : RAM système standard utilisée avec les CPU. Offre un équilibre entre vitesse, capacité et coût. La bande passante augmente avec les générations (DDR3, DDR4, DDR5) et en utilisant plusieurs canaux (double, quadruple). Les variantes ECC offrent une fiabilité pour les serveurs/stations de travail.
- GDDR SDRAM : Optimisée pour les cartes graphiques (GPU). Priorise une très large bande passante grâce à des fréquences d'horloge/taux de transfert plus rapides et des bus mémoire larges sur la carte graphique. Essentielle pour les jeux et les tâches accélérées par GPU. Généralement plus coûteuse et consommant plus d'énergie que la DDR pour une capacité équivalente.
- HBM : Conçue pour une densité de bande passante et une efficacité énergétique maximales. Utilise des puces de mémoire empilées et des interfaces extrêmement larges. Se trouve dans les GPU haut de gamme, les accélérateurs d'IA et les systèmes HPC où le débit de données est primordial. Coût le plus élevé et capacités généralement inférieures à celles de la DDR/GDDR.