AMD Infinity Cache es una de las tecnologías más novedosas de la nueva generación de gráficas Radeon RX 6000. Aunque AMD todavía no ha revelado su whitepaper con todos los detalles sobre esta, ya se conoce lo suficiente para saber cómo funciona, para qué se usa y por qué es importante. ¿Quieres descubrir cómo le da un buen toque de rendimiento a tu GPU? ¡Vamos a verlo!
Índice de contenidos
Uno de los aspectos más importantes de una tarjeta gráfica es el ancho de banda de sus memorias VRAM, algo que resulta crítico a la hora de ofrecer un rendimiento decente, si bien se nota más en algunas arquitecturas que en otras.
En el caso de AMD, su último gran intento por mejorar esto había sido la introducción de las memorias de tipo HBM, que revolucionaron el mercado al encontrarse en el propio chip de la GPU, con una cercanía que les permitía llegar a unas cotas de ancho de banda efectivo que serían inalcanzables con algunas memorias GDDR.
Ahora, con la llegada de la nueva generación Big Navi (Radeon RX 6000), AMD podría haber apostado por la misma solución que NVIDIA, que es usar memorias de tipo GDDR6X, una versión más veloz de las clásicas GDDR6. No obstante, la vía que decidió tomar AMD fue otra: apostar por Infinity Cache.
AMD Infinity Cache es una marca comercial que se refiere al uso de una caché situada en sus chips de GPU, la cual funciona de una manera parecida a la caché L3 de la CPU.
Estas memorias caché se presentaron con las primeras tarjetas gráficas RX 6000, esto es, la RX 6900 XT, RX 6800 XT y RX 6800. Las tres gráficas hacen uso de distintas variantes del chip de GPU Navi 21, y tienen exactamente la misma capacidad de Infinity Cache: 128MB. Aunque como os dijimos no es exactamente lo mismo que una caché L3 de una CPU, lo cierto es que es una cantidad bastante generosa, es el doble que la caché L3 de un Ryzen 9 5950X.
Debéis tener en cuenta que, actualmente, todas las tarjetas gráficas tienen cachés en su interior, pero se trata de cachés de nivel 1 (L1) y nivel 2 (L2), y cuanto más bajo sea el nivel estaremos hablando de cachés mucho más rápidas pero también más pequeñas (de hecho también hay un nivel 0 o L0 en AMD RDNA 2). Cuando una unidad de cómputo de la GPU necesita un dato, primero lo buscará en su caché de nivel 0, y si no lo encuentra ahí irá a la de nivel 1, luego a la de nivel 2… Y finalmente recurrirá directamente a la memoria VRAM, que es la más grande pero la más lenta de esta jerarquía.
Esto sería lo que ocurriría en una GPU AMD RDNA, como la RX 5700 XT. Ahora, en las nuevas RDNA 2 (RX 6000) lo que ocurre es que hay un nivel 3 adicional, que es exactamente Infinity Cache.
La idea es reducir la cantidad de veces que se recurre a la memoria VRAM para obtener un dato, al poder almacenar mucho más en un nivel superior como el L3 entonces incrementamos las posibilidades de que no haya que llegar a este punto, en el que el rendimiento decae mucho no solo por la propia velocidad de las memorias sino muy especialmente por el hecho de no tener que «viajar» fuera del chip, y perder muchísimo tiempo en el proceso.
Si entramos en la letra pequeña de AMD y vemos de dónde sale este cálculo, básicamente viene de la tasa de aciertos de esta caché obtenida en una selección de juegos a 4K, que según AMD es del 58%. Vamos, que cuando la GPU le pide un dato a Infinity Cache lo consigue en el 58% de las ocasiones, librándose de viajar a la memoria VRAM, y AMD calcula cuánto rendimiento se ha ganado gracias a ello para dar el dato.
A la hora de la verdad, todo dependerá de cada juego, cada instante, la configuración gráfica y muchísimas cosas… así que el beneficio concreto es inmesurable. Pero sin duda Infinity Cache puede dar un aumento de rendimiento interesante.
Debido a su naturaleza, estas memorias Infinity Cache están totalmente controladas por el propio chip de la GPU, y no pueden gestionarse mediante software, algo totalmente normal y esperable. Esto significa que no podemos activar y desactivar Infinity Cache a voluntad, no es un software, es un elemento puramente integrado en el hardware, así que no hay manera de ver cómo sería el rendimiento en juegos si esta no estuviese ahí.
Debéis tener en cuenta que también nos trae beneficios en cuanto a consumo energético, puesto que el hecho de tener que acceder menos a la memoria VRAM nos beneficia mucho, ya que las memorias GDDR6 consumen bastante energía, y precisamente el hecho de que AMD recurra a esta solución (y con un bus de memoria bastante más estrecho, que también reduce el consumo) frente a la «hambrienta» memoria GDDR6X de las RTX 3080/3090 podría tener parte de la responsabilidad de que AMD haya superado a NVIDIA en eficiencia energética en esta generación.
Evidentemente hablamos de unos transistores muy miniaturizados, más aún con el proceso de 7nm de TSMC, y no deja de ser una estimación… pero ya de por sí está claro que Infinity Cache no es ninguna broma y se trata de una propuesta muy ambiciosa por parte de AMD. El tamaño en el chip que se le dedica es relativamente grande, y no en vano.
Sin embargo, AMD ha estado claramente por detrás en lo que se refiere al tipo de memorias usado, el ancho del bus de memorias y su frecuencia efectiva. Por ejemplo, la AMD Radeon RX 6800 XT usa 16GB GDDR6 con bus de 256 bits y a 16Gbps, mientras que la NVIDIA GeForce RTX 3080 usa 10GB GDDR6X con bus de 320 bits y a 19 Gbps. Evidentemente, esto puede decantar la balanza y poner a AMD por detrás de NVIDIA, así que ha sido bastante importante que incluyesen Infinity Cache para intentar compensarlo y obtener mejores valores de ancho de banda de memorias.
Las pruebas de rendimiento de las nuevas gráficas RX 6000 muestran de forma bastante consistente cómo a mayor resolución las gráficas de NVIDIA ganan ventaja sobre AMD. Esto es algo que hemos visto, por ejemplo, en nuestra comparativa de la RX 6900 XT y la RTX 3090, donde de media la opción de AMD ganaba ligeramente a 1080p (+2.1%), perdía un poco a 1440p (-1.5%) y a 4K perdía bastante más (-7.6%) sobre NVIDIA.
Es posible que Infinity Cache tenga algo que ver con esto, ya que el aumento de la resolución y por tanto la mayor cantidad y peso de las texturas y datos a procesar son algo que se podría notar en la gestión de su «caché L3» de «tan solo» 128MB.
A cada nueva arquitectura gráfica, NVIDIA y AMD intentan introducir nuevas características que puedan repercutir positivamente en el rendimiento de los juegos, y son las pequeñas optimizaciones las que luego marcan la diferencia.
En el caso de AMD RDNA 2, la arquitectura de las gráficas RX 6000, una de estas novedades es Infinity Cache, que es básicamente la inclusión de un nuevo tipo de caché nunca antes visto en una tarjeta gráfica de escritorio, y que más o menos equivale a una caché de nivel 3. Su tamaño es de 128MB, mucho más que la mayoría de CPUs, donde las cachés L3 son de lo más común.
Lo que pretende este nuevo tipo de caché, como todas, es reducir la cantidad de veces que se tiene que recurrir a la VRAM para acceder a un dato, ya que esto es algo muy costoso en tiempo de ejecución y en energía consumida.
Lo que ocurre en toda GPU (y CPU) al buscar un dato es empezar mirando en cada uno de sus niveles de caché, desde los inferiores (más pequeños pero también más rápidos) hasta el más alto de todos, y si no se encuentra en ninguna de ellas entonces se buscará en la VRAM. Infinity Cache introduce un nivel adicional a los ya existentes con un tamaño relativamente grande.
A nivel práctico, lo que así se consigue es aumentar el ancho de banda efectivo de la memoria de la gráfica en general, y sobre todo lo que AMD busca es intentar compensar el hecho de que NVIDIA usa memorias más rápidas y con buses más amplios, a la vez que reducen considerablemente el consumo energético.
¿Qué te ha parecido Infinity Cache? ¿Crees que NVIDIA intentará poner más niveles de caché en sus futuras RTX? ¡No dudes dejarnos tus comentarios!
Abysm es una de las muchas marcas que celebran el Black Friday a lo grande.…
YouTube se prepara para lanzar una función que va a cambiar la forma en la…
ASUS está lanzando la carcasa SSD TUF Gaming A2, que vendría a ser un dispositivo…