Vitesses et bande passante de la mémoire DDR, GDDR et HBM

Gábor Bíró 11 décembre 2024
6 min de lecture

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.

Vitesses et bande passante de la mémoire DDR, GDDR et HBM
Source: Création originale

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 :

  1. Une fréquence d'horloge de 200 MHz signifie 200 millions de cycles d'horloge par seconde.
  2. Dans chaque cycle, 2 transferts de données ont lieu (front montant et descendant).
  3. 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.

Générations de modules de RAM DDR

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.
Gábor Bíró 11 décembre 2024