El mercado de las tarjetas gráficas ha evolucionado bastante más que el de los procesadores en los últimos años. De ser dispositivos que, básicamente, se usaban exclusivamente en el ámbito de los videojuegos, han pasado a ser una herramienta computacional de primer orden gracias a la intrínseca naturaleza de las GPUs, con un procesamiento que prima el paralelismo frente a la potencia “bruta” de las pipelines de las CPUs.
Una GPU realiza operaciones más simples sobre los datos y las instrucciones que una CPU, pero es capaz de realizar miles de estas operaciones en paralelo en cada ciclo de reloj.
Un poco de historia
NVIDIA comenzó su andadura en 1999 con la GeForce 256. A partir de ahí y el procesamiento básico Transform / Lightning, ha ido añadiendo elementos a los procesadores gráficos que permiten realizar operaciones paulatinamente más complejas sobre los elementos gráficos, así como sobre datos si hablamos de GPGPU o General Purpose GPU. En el caso de NVIDIA, en 2007 presentó CUDA, que es la plataforma de computación en paralelo para tareas de propósito general en ámbitos como la simulación o la Inteligencia artificial.
NVIDIA está a punto de presentar las tarjetas gráficas RTX 40, basadas en la arquitectura Ada Lovelace, en honor a la matemática homónima. Sucede a las RTX 30 con arquitectura Ampere, tras casi dos años (se presentó en septiembre de 2020) de presencia en el mercado. Se espera que NVIDIA mejore tanto el rendimiento como la eficiencia de sus tarjetas RTX 40 gracias a las mejoras tecnológicas que comentaremos más adelante.
Foto de la tarjeta gráfica NVIDIA GeForce 256. Fuente Wikipedia
ATI tiene sus primeros productos gráficos allá por el año 1994, aunque no sería hasta 1998 con el ATI Rage 128 GL cuando empezaría a meterse más de lleno en el mercado de la aceleración gráfica. Las primeras Radeon llegarían en 2001 y en 2006 fue comprada por AMD. Actualmente, AMD está evolucionando su arquitectura RDNA, que llegó tras GCN en 2020. Los gráficos Vega están asociados a GCN mientras que Navi están asociados a RDNA.
AMD está a punto también de presentar sus nuevas tarjetas gráficas Radeon RX 7000 con arquitectura RDNA3 y GPUs Navi 3X, que suceden a las RDNA2 y las Navi 2X. AMD tenía pendiente ofrecer una arquitectura solvente y competitiva en rendimiento frente a NVDIA, algo que no consiguió con GCN y los gráficos Radeon Vega. Pero en esta generación que llega ahora, parece que la competencia está reñida entre AMD y NVIDIA.
Intel, por su parte, tuvo sus primeros gráficos en 1998 en forma de la GPU i740. Después, Intel movería los gráficos al chipset primero y al procesador después. En realidad, Intel ha sido la empresa que más procesadores gráficos ha comercializado, aunque sea en forma de iGPU. En los últimos años, Intel fichó a ingenieros de AMD para relanzar los gráficos dedicados, tras una etapa en la que se centró en los gráficos dedicados para centros de datos en el campo de la computación de propósito general GPGPU con la familia Xeon Phi.
Intel puso en marcha esta división de gráficos discretos para gaming y HPC en 2019, aunque no ha sido hasta este mismo año cuando se han anunciado los primeros productos comerciales, que empiezan a distribuirse en algunos mercados como el de China. Intel Arc Alchemist, a estas alturas, llega bastante tarde, aunque tiene la oportunidad de posicionarse como una solución óptima para los usuarios que solo necesiten una tarjeta gráfica discreta básica que permita al equipo funcionar de un modo un poco más desahogado. Sin olvidar que las Arc Alchemist vienen con aceleración hardware para la descodificación de vídeo, por ejemplo.
Roadmap de las GPUs de Intel. De momento, llega tarde con Arc Alchemist.
Así pues, nos ponemos en el mes de agosto de 2022, con un panorama muy interesante donde nos encontramos con NVIDIA y AMD dispuestas a competir mano a mano en el segmento premium de GPUs tanto en rendimiento como en eficiencia, más Intel que llega a este mercado con la baza de ocupar un puesto interesante en el segmento low-end, compitiendo con las GPUs RDNA2 y Ampere de AMD y NVIDIA, mientras agotan las posibilidades de sus GPUs de última generación en los mercados para entusiastas y gamas medias y altas de equipos de sobremesa y portátiles.
De momento, ni NVIDIA ni AMD han dado detalles oficiales sobre sus nuevas generaciones de GPUs, pero sí que hay abundantes filtraciones que permiten hacernos una idea acerca de por dónde “van a ir los tiros”. Sobre Intel, ya hay GPUs presentadas y comercializadas, aunque en este caso hay interrogantes como el del rendimiento “bueno”, si atendemos a la precariedad de los controladores y los modos optimizados de un modo un tanto “forzado” que hacen que haya resultados de benchamrks de dudosa validez.
En este artículo trataremos de recoger la información clave para estas tres familias de GPUs.
Roadmap de AMD para sus GPUs gaming,
Cómo son las arquitecturas de las GPUs
Por lo pronto, para los menos duchos en la materia, decir que los fabricantes de GPUs desarrollan arquitecturas más o menos “modulares”. Hasta ahora, los chips han sido monolíticos, en tanto en cuanto una GPU integraba todos sus elementos constituyentes en una única pieza de silicio. Ahora, AMD parece que traerá al segmento de consumo (en las GPUs para centros de datos ya se usa esta tecnología) los diseños basados en chiplets. Es decir, en una GPU encontramos diferentes piezas de silicio interconectadas, de modo que unas integran la parte de la GPU propiamente dicha, mientras que otras integran la parte de I/O, así como la de la memoria, por ejemplo.
NVIDIA e Intel parece que seguirán con diseños monolíticos en esta generación. Por otro lado, para una misma arquitectura (Ada Lovelace o Navi 3X, en el caso de NVIDIA y AMD), los fabricantes ofrecen diferentes variantes de GPUs con diferente número de procesadores stream. A su vez, para cada GPU, podemos encontrar variantes con un número variable de procesadores stream deshabilitados, de modo que alrededor de cada una de estas GPUs se van ofreciendo diferentes modelos de tarjetas gráficas con diferentes prestaciones.
Esquema de la arquitectura de las GPU Ampere de NVIDIA.
De este modo, las GPUs “completas” se reservan para los modelos más top. Estas GPUs suelen ponerse a la venta semanas o meses después del lanzamiento inicial, de modo que da tiempo a optimizar los procesos de fabricación en las fabs de TSMC o Samsung para mejoras los yields. Mientras tanto, los chips con defectos se comercializan en forma de tarjetas con más o menos procesadores deshabilitados para cada gama de productos lanzados.
Ten en cuenta que una GPU GA102 como la de las RTX 3090 Ti tiene 28.000 millones de transistores, y todos tienen que estar perfectos para que un chip sea considerado como válido. La GPU Navi 21 de las Radeon RX 6950 XT viene con 26.800 millones de transistores nada menos. Como puedes ver, se trata de muchos miles de millones de transistores que tienen que funcionar como deben tras el proceso de litografía, lo cual no siempre sucede. De este modo, los fabricantes, al deshabilitar partes de los chips cuando no superan las pruebas de calidad o fiabilidad, van definiendo gamas de GPUs con diferentes rendimientos y posibilidades de overclocking, por ejemplo. El chip NVIDIA GA102 Ampere, sin ir más lejos, tiene tres variantes: la GA102-350 “completa” con 10.752 cores CUDA de la RTX 3090 Ti, la GA102-300 con 10.496 cores CUDA de la RTX 3090, la GA102-225 con 10.240 cores CUDA de la RTX 3080 Ti o la GA102-200 con 8.704 cores CUDA de la RTX 3080, entre otras posibles variaciones.
Esquema de la arquitectura de las GPU Navi 31 de AMD.
Para las AMD Navi 21, tenemos variantes como la GPU Navi 21 KXTX con 5.210 shaders (Radeon RX 6950 XT), la Navi 21 XT con 4.608 shaders (Radeon RX 6800 XT) o la Navi 21 XL con 3.840 shaders (Radeon RX 6800). Lo importante es entender que, para cada generación gráfica, los fabricantes diseñan varios chips con diferente número de transistores o tamaño, basados en esa arquitectura, y que para cada chip, existen variaciones con más o menos elementos funcionales deshabilitados, dependiendo de las imperfecciones encontradas en el silicio. Al menos en una primera fase. Cuando los yields de los procesos de fabricación mejoran, puede darse el caso de que el fabricante deshabilite elementos funcionales del chip aunque el proceso de fabricación sea perfecto. Es algo que se da con más frecuencia en los chips de rendimientos más bajos.
Las GPUs se organizan en clústeres. Las GPUs GA10X se componen de diferentes Graphics Processing Clusters (GPCs), Texture Processing Clusters (TPCs), Streaming Multiprocessors (SMs), Raster Operators (ROPs) y controladores de memoria. La GA102, por ejemplo, en su versión completa, cuenta con 7 clústeres GPCs, 42 clústeres TPCs (6 clústeres por cada GPC) y 84 SMs (2 SMs por cada TPC). Los cores CUDA están contenidos en los Streaming Multiprocessors, con 128 cores CUDA en cada SM y 4 Cores Tensor de tercera generación más un core RT . Así, en una GPU GA102 tenemos 84 x 128 cores CUDA (10.752) y 84 x 4 cores Tensor (336) y 84 cores RT. En cuanto a ROPs, tenemos 7 GPCs x 16 ROPs por cada GPC (112), lo cual completa el perfil de la arquitectura Ampere. Además, cada SM tiene 4 Texture Units para un total de 84 x 4 TMUs (336).
Además, los fabricantes suelen presentar primero las gráficas más potentes, dejando para lanzamientos posteriores los modelos de gamas más bajas. De este modo, una arquitectura gráfica va completando su evolución a lo largo de un periodo de tiempo que se prolonga durante entre uno y dos años, y que se prolonga más adelante incluso en forma de modelos de “nueva generación” que se basan en chips de la generación anterior, especialmente en las gamas más bajas.
Esquema de la arquitectura de las GPU Intel Arc Alchemist.
Las arquitecturas de las NVIDIA Ada Lovelace RTX 40 o las AMD Navi 3X Radeon RX 7000 son una evolución de las Ampere RTX 30 y las Navi 2X Radeon RX 6000 respectivamente, mientras que las Intel Arc Alchemist son fruto de un diseño nuevo.
Vatios, TFLOPS, Ancho de banda: memoria y bus
La potencia de cálculo de una tarjeta gráfica se mide en TFLOPS. Es un valor teórico que se calcula a partir de las unidades de texturizado (TMU), la raster operations pipeline (ROP) y la velocidad de reloj de la GPU. Dan una idea sobre la potencia de procesamiento de los chips, aunque no necesariamente se tiene que traducir en un rendimiento proporcional en juegos. Es una potencia de cálculo que puede hacer referencia a operaciones en coma flotante con 32 bits (FP 32) o 64 bits (FP 64). Generalmente, cuando se habla de TFLOPs, se hace mención a las operaciones de 32 bits.
Los rendimientos teóricos en TFLOPs de las GPUs están liderados por la RTX 3090 Ti con 42,58 TFLOPs. La RTX 3080 Ti arroja un rendimiento de 34 TFLOPs, mientras que las Radeon RX 6900 XT se queda en 23 TFLOPs, así como la RX 6950 XT.
Esquema de la disposición de los chips de memoria en una GPU.
Las especificaciones para el subsistema de memoria están perfiladas a partir del ancho del bus, la frecuencia de la memoria o la velocidad de los chips GDDR6(X). La velocidad en Gbps de los chips se puede obtener a partir de la frecuencia de la memoria, todo sea dicho. Puedes encontrar más información aquí. Para una RTX 3080 con una frecuencia de reloj para la memoria de 1.188 MHz, Quad Data Rate, PAM4 , la velocidad efectiva es de 1.188 MHz x 2 (se aprovecha la subida y bajada de cada pulso) x 4 (Quad Data Rate) x 2 (PAM4), lo cual arroja un resultado de 19.008 bits, o 19 Gbps.
El ancho de banda es el resultado de multiplicar la velocidad efectiva de la memoria por el ancho del bus de memoria y dividir entre 8. Por ejemplo, para la RTX 3080, tenemos 19.008 bits x 320 bits (ancho de bus) / 8. El resultado es de 760.320 bytes o 760 GB/s..
El ancho del bus de memoria está asociado también al número de módulos de memoria y, por ende, a la cantidad de memoria disponible. Las diferentes gamas de tarjetas gráficas se segmentan también a partir del ancho de banda disponible.
En cuanto a los vatios, están asociados al rendimiento. Aquí tenemos varias métricas: el TDP de la GPU propiamente dicha, así como el TBP o Total Board Power que da una métrica del consumo en vatios de toda la tarjeta gráfica. Aquí encontramos que, NVIDIA, en una primera aproximación “tira” más de vatios brutos que AMD. Con las GPUs de nueva generación se ha rumoreado que NVIDIA podría llegar a los 600W para las RTX 40.
Intel, por su parte, usaría los llamado límites de potencia PL1 (límite de potencia prolongado), PL2 (límite de potencia corto) y PL4 (límite de potencia de pico) para caracterizar el rendimiento de las GPUs Intel Arc Alchemist. .
Los vatios se están convirtiendo en un parámetro importante de cara a valorar el buen hacer de las tarjetas gráficas. La eficiencia energética es una variable tan relevante como el rendimiento bruto. Una gráfica o un procesador pueden tener un rendimiento espectacular, pero si es a expensas de un consumo elevado de vatios, esta aparente virtud puede convertirse en un defecto.