miércoles, 25 de noviembre de 2009

Memoría en GPUs

Las tarjetas gráficas, aunque no siempre, incorporan su propia memoria. La tecnología utilizada en esta es muy similar a la memoria RAM de la CPU de un ordenador.

De hecho las tarjetas gráficas utilizaban memoria SDR, después DDR estándar y en algunos casos memoria DDR2 convencional. Sin embargo en los últimos años han aparecido variaciones específicas para su uso en tarjetas gráficas, con los nombres GDDR2, GDDR3, GDDR4 y GDDR5. Hay que decir que con estas memorias se utilizan diferentes anchos de bus, frecuencias y número de canales, por lo que el ancho de banda de una tarjeta gráfica a su memoria es muy variable y no depende únicamente de la tecnología utilizada.

La primera memoria especialmente pensada para tarjetas gráficas (GDDR2) era en realidad una variante de DDR normal. Funcionaban a 2.5 V e igual que DDR utilizaban el flanco de bajada y de subida para duplicar su tasa de transferencia, solo que a mayor frecuencia de reloj que la memoria DDR convencional. Esto hacía que el consumo y el calor disipado fueran bastante altos. Por ello algunos fabricantes que comenzaron a utilizarla rectificaron y volvieron a DDR. Con este tipo de memoria, funcionando a 900 MHz se han conseguido anchos de banda de hasta 14.4 G/s.

La siguiente variación bautizada GDDR3 fue diseñada por ATI y utilizada tanto por esta compañía como por nVidia. Un pin transmite 4 bits cada 2 ciclos de reloj. En este caso se redujo el voltaje (1.8 ó 2.0 V dependiendo del fabricante), con lo que el consumo es más reducido. Además de esto hay cambios en la señalización y en la terminación eléctrica de esta que permiten mejorar la velocidad de funcionamiento. Este tipo de memoria es muy popular en la tarjeta actuales y se utiliza (no exclusivamente) en las 3 consolas de la actual generación. Como ya se ha dicho, hay una gran variedad de configuraciones para la memoria. Pondremos com ejemplo extremo de esto un dispositivo Tesla de nVidia, que con una frecuencia de reloj de 1600 MHz, 512 bits de bus y 4 canales de memoria (uno por nucleo) llega a un ancho de banda combinado de 410 GB/s con memoria GDDR3. Una tarjeta gráfica normal sin embargo tiene un ancho de banda que puede ir desde los 25 GB/s para buses estrechos y velocidades de reloj bajas, hasta más de 150 GB/s para las configuraciones de memoria más eficientes.



GDDR4 es una mejora sobre GDDR3. Los cambios más importantes son la reducción del voltaje a 1.5 V y el aumento de la tasa de transferencia por ciclo, pasando a transmitir 8 bits cada 2 ciclos de reloj, doblando (teóricamente) el ancho de banda de GDDR3, aunque con una latencia bastante mayor. Este tipo de memoria no ha tenido una gran acogida en comparación con su predecesora y se utiliza en unos pocos modelos de tarjetas gráficas de ATI. Incluso algunos fabricantes han anunciado que no van a fabricar chips de memoria GDDR4. A modo de ejemplo, la primera tarjeta gráfica que usó este tipo de memoria tenía un ancho de banda entre GPU y memoria de 64 GB/s con un bus de 256 bits y una frecuencia de funcionamiento de la memoria de 1 GHz.

Por último tenemos la memoria GDDR5 cuya principal novedad respecto a GDDR4 es que dobla el número de pins de datos del chip de memoria, doblando la tasa de transferencia de su antecesor. Este tipo de memoria se utiliza en algunos modelos modernos de tarjetas gráficas de ATI. Estas tarjetas logran unos anchos de banda que van desde unos 50 GB/s hasta más de 100 GB/s para cada core de la GPU.

En el futuro se espera que muchos fabricantes adopten la futura DDR3 aunque seguramente tenga que competir con XDR o XDR2 (tecnología RAMBUS) en las tarjetas de gama alta.

Patxi Astiz

No hay comentarios:

Publicar un comentario