Las GPUs con diseños modulares llevan años funcionando en el sector profesional, pero todavía no han llegado al mercado de consumo general. La Radeon RX 7900 XTX de AMD fue la primera de su clase en dar el paso hacia esa dirección, pero no llegó a implementar un diseño verdaderamente modular, porque el núcleo gráfico seguía siendo monolítico, y lo único que se externalizó fue la caché L3.
Desde hace tiempo se viene rumoreando que AMD va a unificar las arquitecturas RDNA (consumo) y CDNA (profesional) bajo una única arquitectura, UDNA, y esto ha disparado los rumores que dicen que, como consecuencia de ello, podríamos ver la llegada de las primeras Radeon con diseño modular al mercado de consumo general dentro de esa próxima arquitectura.
Esos rumores se han visto reforzados con la aparición de una patente que recoge una tecnología que, en teoría, permitiría superar los desafíos más importantes que imponen este tipo de diseños si hablamos de tarjetas gráficas de consumo general, aunque la patente está pensada principalmente para CPUs, así que por mucho que pueda trasladarse a una GPU no es una garantía de nada.
Qué problema tendría una Radeon con diseño modular
Tendría varios problemas, como la correcta coordinación entre los chiplets GPU y el ancho de banda del que disponen, pero sin duda el más importante sería la latencia. Paralelizar el trabajo que supone ejecutar un juego entre dos o más núcleos gráficos implica dividir los datos y las operaciones entre dos o más bloques colocados en posiciones diferentes.
La separación de ambos núcleos gráficos ya introduce un cierto grado de latencia, y esos retrasos podrían afectar negativamente al rendimiento y contrarrestar los efectos positivos que podría tener un diseño de este tipo en términos de potencia bruta. De nada sirve tener una enorme cantidad de shaders, unidades de texturizado y unidades de rasterizado si la comunicación entre dos o más bloques es lenta y tiene una alta latencia.
En la patente de AMD se incluye un elemento que podría ayudar a reducir la latencia, y se describe como un circuito «data-fabric» con un conmutador inteligente. Esto sería, en resumen, el Infinity Fabric que ha venido utilizando AMD con los procesadores Ryzen, pero adaptado y optimizado para cubrir las necesidades de una GPU de consumo.
Ese conmutador inteligente permitiría optimizar los accesos a la memoria realizando un ciclo de trabajo muy concreto: determinaría si la petición de una carga de trabajo gráfica requiere migración de tareas o replicación de datos, y una vez planteada esa cuestión tomaría la decisión en un margen de solo unos pocos nanosegundos.
Esto ayudaría a reducir el problema de la latencia a la hora de acceder a los datos, pero la patente también propone otros cambios importantes, que pasan por integrar memorias caché L1 y L2 de una manera parecida a lo que hemos visto en los aceleradores gráficos Instinct de AMD, que utilizan un diseño MCM (módulo multichip).
Cada chiplet GPU tendría sus propias cachés L1 y L2, y estarían acompañadas por un bloque de caché L3 compartida cuya gestión de accesos correspondería al conmutador inteligente. La caché L3 sería bastante grande para reducir la dependencia de la memoria principal (VRAM), pero habría que ver cómo se resuelve el tema del acceso por parte de ambas GPUs a la memoria gráfica.
Lo más lógico sería utilizar un bus unificado que permita a cada chiplet gráfico acceder en cualquier momento, y con una latencia muy baja, al total de memoria gráfica disponible, pero en este sentido no tenemos todavía ninguna información en particular sobre posibles innovaciones de importancia para las próximas Radeon.
La entrada Las AMD Radeon de próxima generación podrían utilizar un diseño modular se publicó primero en MuyComputer.