Velocidades y Ancho de Banda de las Memorias DDR, GDDR y HBM

Gábor Bíró 11 de diciembre de 2024
6 min de lectura

El rendimiento de los ordenadores modernos se ve influenciado significativamente por la velocidad y el tipo de memoria utilizada. Las memorias DDR, GDDR y HBM están optimizadas para diferentes propósitos, ya sea la memoria principal del sistema para las CPU, la memoria para tarjetas gráficas o tareas que requieren computaciones de gran ancho de banda. En esta publicación, comparo las velocidades y los parámetros clave de estos tipos de memoria.

Velocidades y Ancho de Banda de las Memorias DDR, GDDR y HBM
Fuente: Elaborado por el autor

El rendimiento de los estándares de hardware informático a menudo se anuncia utilizando valores máximos teóricos medidos en condiciones ideales de laboratorio (en la práctica, las tasas de transferencia pueden verse limitadas por los controladores de dispositivos, la temperatura u otros cuellos de botella). Estas cifras no reflejan necesariamente las velocidades de uso en el mundo real, pero son excelentes para fines de comparación, ya que muestran claramente las diferencias entre las generaciones tecnológicas.

En las siguientes tablas, proporciono el valor máximo teórico para cada estándar, redondeado para facilitar la lectura y la comparación, y siempre mostrado en bytes (específicamente MB/s) donde corresponda. Aquí escribí sobre los estándares de transferencia y almacenamiento de datos informáticos, las unidades de medida, las velocidades y sus fundamentos teóricos.

DDR SDRAM (Memoria del Sistema)

La memoria del ordenador (RAM - Memoria de Acceso Aleatorio) sirve como almacenamiento de datos temporal y de acceso rápido del ordenador. Los módulos de RAM modernos utilizan la tecnología DDR (Double Data Rate - Doble Velocidad de Datos), lo que significa que la transferencia de datos se produce tanto en los flancos de subida como de bajada de la señal de reloj, duplicando efectivamente la tasa de transferencia de datos en comparación con la SDRAM original.

La SDRAM original (a veces denominada SD o SDR RAM para distinguirla de DDR) funcionaba a velocidades de reloj de 66-133 MHz. Dado que no era de "doble velocidad de datos", su tasa de transferencia de datos efectiva (en transferencias por segundo) coincidía con su velocidad de reloj (en ciclos por segundo).

MT/s (MegaTransferencias por segundo) indica cuántos millones de operaciones de transferencia de datos puede realizar la memoria por segundo. Esto es significativo para la memoria DDR (Double Data Rate) porque se producen dos transferencias de datos por ciclo de reloj: una en el flanco de subida y otra en el flanco de bajada de la señal de reloj.

Tomemos como ejemplo la memoria DDR2-400:

  • Su velocidad de reloj base es de 200 MHz.
  • Dado que utiliza la tecnología DDR (doble velocidad de datos), la tasa de transferencia real es el doble de la velocidad de reloj: 400 MT/s.

Para visualizar esto mejor:

  1. Una velocidad de reloj de 200 MHz significa 200 millones de ciclos de reloj por segundo.
  2. En cada ciclo, se producen 2 transferencias de datos (flanco de subida y bajada).
  3. Por lo tanto, el total de transferencias es: 200 millones de ciclos/segundo × 2 transferencias/ciclo = 400 millones de transferencias por segundo (400 MT/s).

Esto difiere del ancho de banda (MB/s), que mide la cantidad real de datos movidos. El ancho de banda se calcula multiplicando el valor de MT/s por el ancho del bus de memoria (típicamente 8 bytes para un DIMM DDR estándar de 64 bits): 400 MT/s × 8 bytes/transferencia = 3200 MB/s.

Versión Tasa de Transferencia (MT/s) Nombre del Módulo Año de Lanzamiento Velocidad de Reloj (MHz) Ancho de Banda (MB/s)
DDR 200-400 PC-1600 - PC-3200 1998 100-200 1,600 - 3,200 MB/s
DDR2 400-1066 PC2-3200 - PC2-8500 2003 200-533 3,200 - 8,533 MB/s
DDR3 800-2133 PC3-6400 - PC3-17000 2007 400-1066 6,400 - 17,066 MB/s
DDR4 1600-3200+ PC4-12800 - PC4-25600+ 2014 800-1600+ 12,800 - 25,600+ MB/s
DDR5 4800-8000+ PC5-38400 - PC5-64000+ 2020 2400-4000+ 38,400 - 64,000+ MB/s

Ancho de banda calculado para una interfaz de memoria estándar de 64 bits (8 bytes) de ancho (DIMM único). Las configuraciones de doble canal o cuádruple canal multiplican este ancho de banda.

Los fabricantes comercializan módulos de memoria utilizando diferentes notaciones, como el número de versión (DDR4), la tasa de transferencia (3200 MT/s) o el nombre del módulo (PC4-25600). Esto puede ser confuso, pero la tabla anterior ayuda a identificar módulos equivalentes. Por ejemplo, DDR4-3200 y PC4-25600 se refieren a la misma especificación de velocidad de memoria.

Generaciones de módulos de RAM DDR

Memoria DDR ECC

La memoria ECC (Código de Corrección de Errores) es un tipo especial de memoria utilizada principalmente en servidores, estaciones de trabajo y otros sistemas que requieren alta fiabilidad. La memoria DDR ECC se diferencia de la memoria DDR estándar no ECC en sus capacidades de corrección de errores.

  • Corrección de Errores: La memoria ECC puede detectar y corregir automáticamente errores de un solo bit y detectar errores de múltiples bits. Esto reduce significativamente el riesgo de corrupción de datos y fallos del sistema.
  • Bits Adicionales: Un módulo de memoria ECC típicamente utiliza bits adicionales por palabra de datos (por ejemplo, 72 bits para 64 bits de datos) para almacenar los códigos de verificación de errores, lo que permite la corrección de errores.
  • Compatibilidad: No todas las placas base admiten memoria ECC. La mayoría de las placas base de servidores y estaciones de trabajo son compatibles, pero las placas base de escritorio de consumo típicas no lo son. La CPU también debe ser compatible con ECC.
  • Velocidad y Latencia: La memoria ECC podría ser ligeramente más lenta o tener una latencia mayor que la memoria DDR no ECC comparable debido a la sobrecarga del proceso de verificación de errores.
  • Generaciones DDR: La tecnología ECC está disponible para todas las versiones modernas de DDR (DDR, DDR2, DDR3, DDR4, DDR5) y se utiliza comúnmente en servidores para mejorar la estabilidad del sistema.

La memoria ECC se emplea típicamente en sistemas críticos donde la integridad de los datos y el funcionamiento continuo son esenciales, como en servicios financieros, sistemas de salud, investigación científica y entornos de computación de alto rendimiento.

GDDR (Memoria Gráfica)

Memoria GDDR: La memoria GDDR (Graphics Double Data Rate - Doble Velocidad de Datos Gráfica) está diseñada específicamente para tarjetas gráficas (GPU). Generalmente presenta velocidades de reloj y tasas de transferencia (GT/s) más altas en comparación con la memoria del sistema DDR estándar, optimizada para las necesidades de gran ancho de banda del renderizado de gráficos y el procesamiento paralelo. Los chips de memoria GDDR típicamente tienen una interfaz más ancha (por ejemplo, 32 bits por chip) en comparación con los chips DDR estándar, y se utilizan múltiples chips en una tarjeta gráfica para un bus de memoria general muy ancho (por ejemplo, 128 bits, 256 bits, 384 bits).

GT/s (GigaTransferencias por segundo) indica el número de operaciones de transferencia de datos por segundo, similar a MT/s para la memoria DDR, pero escalado por 1000 (Giga vs. Mega). Representa la velocidad de transferencia bruta, no el ancho de banda final en Bytes/segundo.

Versión Año de Lanzamiento Velocidad de Reloj (MHz) Tasa de Transferencia (GT/s) Ancho de Banda Típico (GB/s)
GDDR2 2002 400–500 0.8–1.0 ~12.8 – 16 GB/s
GDDR3 2004 800–1000 1.6–2.0 ~51.2 – 80 GB/s
GDDR4 2006 ~900–1150 1.8–2.3 ~86 – 110 GB/s
GDDR5 2008 ~1250–2000 5.0–8.0 ~160 – 384 GB/s
GDDR5X 2016 ~1250–1750 10.0–14.0 ~320 – 540 GB/s
GDDR6 2018 ~1750–2500 14.0–20.0 ~448 – 960 GB/s
GDDR6X 2020 ~1188–1438 19.0–23.0 ~760 – 1104 GB/s

Los valores de ancho de banda son ejemplos ilustrativos para tarjetas gráficas de gama alta típicas de la época, calculados como (Tasa de Transferencia * Ancho de Bus / 8). El ancho de banda real depende en gran medida de la configuración de memoria específica de la GPU (ancho de bus). La velocidad de reloj se refiere al reloj de datos efectivo (la mitad de la tasa de transferencia para GDDR no PAM4).

HBM (Memoria de Ancho de Banda Alto)

Memoria HBM: La HBM (High Bandwidth Memory - Memoria de Ancho de Banda Alto) utiliza un enfoque fundamentalmente diferente apilando verticalmente los chips de memoria y conectándolos al procesador (a menudo una GPU o un acelerador especializado) a través de una interfaz extremadamente ancha (por ejemplo, 1024 bits o más por pila) en un interposer. Esto permite enormes tasas de transferencia de datos a velocidades de reloj más bajas y un menor consumo de energía en comparación con GDDR logrando un ancho de banda similar. HBM3E, por ejemplo, puede superar 1 TB/s de ancho de banda por pila. HBM se utiliza principalmente en computación de alto rendimiento (HPC), aceleradores de inteligencia artificial (IA) y tarjetas gráficas de gama alta donde el ancho de banda máximo de la memoria es crítico.

Versión Año de Lanzamiento Ancho de Banda por Pila (GB/s)
HBM 2013 ~128 GB/s
HBM2 2016 ~256 - 307 GB/s
HBM2E 2018 ~307 - 460 GB/s
HBM3 2022 ~819 GB/s
HBM3E 2023 ~1,200+ GB/s
HBM4 (Proyectado) ~2026 ~1,500 - 2,000+ GB/s

Comparación Resumida

  • DDR SDRAM: RAM de sistema estándar utilizada con las CPU. Ofrece un equilibrio entre velocidad, capacidad y coste. El ancho de banda aumenta con las generaciones (DDR3, DDR4, DDR5) y mediante el uso de múltiples canales (dual, quad). Las variantes ECC proporcionan fiabilidad para servidores/estaciones de trabajo.
  • GDDR SDRAM: Optimizada para tarjetas gráficas (GPU). Prioriza un ancho de banda muy alto a través de velocidades de reloj/tasas de transferencia más rápidas y buses de memoria anchos en la tarjeta gráfica. Esencial para juegos y tareas aceleradas por GPU. Generalmente mayor coste y consumo de energía que DDR para una capacidad equivalente.
  • HBM: Diseñada para la máxima densidad de ancho de banda y eficiencia energética. Utiliza chips de memoria apilados e interfaces extremadamente anchas. Se encuentra en GPUs de gama alta, aceleradores de IA y sistemas HPC donde el rendimiento de datos es primordial. Mayor coste y típicamente menor capacidad en comparación con DDR/GDDR.
Gábor Bíró 11 de diciembre de 2024