En el mundo del PC es habitual ver cómo se ponen a prueba los sistemas de caché de los procesadores pero es menos frecuente, por no decir que casi no se hace, poner a prueba la caché de las tarjetas gráficas. En la web de Chips and Cheese han decidido realizar una comparativa entre Ampère y RDNA 2 y el resultado es cuanto menos curioso. Sobre todo porque AMD, que viene de tiempos oscuros en el sector de las tarjetas gráficas, ahora mismo tiene una arquitectura bastante más interesante que la de NVIDIA

El resultado es que el sistema de caché de RDNA 2 tiene en general menos latencia y eso que cuenta con un nivel más de caché gracias a la Infinity que viene a actuar de tercer nivel. La siguiente gráfica es un resumen de las pruebas, que es un script en OpenCL que genera fallos de caché para forzar a que se tenga que ir a la memoria principal y poder analizar el tiempo invertido.

ampere_rdna2_mem.png.jpg

La arquitectura Ampère cuenta con una caché de instrucciones de nivel 0 en cada uno de los cuatro bloques de los que se compone un multiprocesadores de flujos de datos (SM), más una caché de datos de 128 KB común para todo el SM que hace de nivel 1 (128 sombreadores). El chip GA102 tiene hasta 10 752 KB de caché N1. Luego existe una caché de 512 KB que hace de nivel 2 ligada a cada uno de los controladores de memoria de 32 bits. La cantidad total de caché de N2 dependerá del número de chips de memoria en uso. He de decir que la caché de N1 de Ampère es reconfigurable, por lo que se puede modificar para ciertas cargas de trabajo a, por ejemplo, una caché de 28 KB N1 y una de 100 KB compartida con el resto de las SM. Lo normal es una configuración de 64 KB de N1 para datos/texturas, 48 KB compartidos y 16 KB reservados para otras tuberías gráficas.

La arquitectura RDNA 2 tiene un sistema de caché ligeramente distinto. Existe una caché Infinity de 128 MB que actúa de caché de N3 ligada a los controladores de memoria. Luego existe una caché de instrucciones de 32 KB de N0, una de 128 KB de nivel 1 común a grupo de unidades de cómputo dual (128 sombreadores en total) hasta 4 MB para un Navi 21 totalmente desbloqueado (32 unidades de cómputo duales o 64 simples) y una de 4 MB de nivel 2 común a todo el chip.

NVIDIA cuenta con una clara ventaja de capacidad excluyendo la caché Infinity de RDNA 2. Luego habría que analizar cómo realizan el movimiento de la información, cómo la reutilizan y otros factores para ver su aplicación real en el día a día. Porque, si bien la latencia es importante, lo es más cómo se gestione la información de la caché y la capacidad total. Chips and Cheese se ha centrado en las latencias y no en la reutilización y eficiencia en la ejecución paralela, por lo que es una visión parcial de los dos sistemas de caché cuando el de Ampère cuenta casi con el doble de caché de N1 y N2, y teniendo en cuenta que la RX 6900 XT compite bien con la RTX 3090 en una buena cantidad de juegos. Esa mayor cantidad de N1 y N2 estarían detrás del mejor comportamiento a cuanto mayor resolución se juega frente a una RDNA 2 con menor capacidad. Además, cuanta más capacidad de caché menor es la necesidad de hacer todo el recorrido hasta la memoria del sistema, por lo que se reduce de facto la latencia.

No se puede decir claramente que el sistema de caché de RDNA 2 sea mejor que el de Ampère; solo se puede aseverar que tiene menor latencia en fallos de caché. Eso sí, he dicho desde un primer momento, y lo sigo manteniendo, que Ampère es un timo de generación porque prácticamente no aporta cambios a la arquitectura, solo más sombreadores. Pero teniendo en cuenta la ventaja que le saca NVIDIA a AMD en ventas tampoco ha debido ver necesario sacar la artillería. Y le va muy bien, todo sea dicho.

older_amd_mem.jpg

La siguiente transparencia de AMD establece lo que se puede esperar de un sistema de caché normal, y de hecho es lo que al final le ocurre aunque consigue una reducción sustancial de la latencia al no tener que ir a la memoria principal. Funciona muy bien a resoluciones inferiores y peor a las mayores. Pero los resultados de Chips and Cheese tampoco son nada nuevo.

La propia AMD dijo que el acceso a memoria principal tras un fallo de caché era según sus propios análisis hasta un 34 % más rápido que otros sistemas de caché, y específicamente el de RDNA que vendría a ser un sistema de caché clásico sin la Infinity de por medio. En la práctica esto significa que incluso la RX 5700 XT disponía de una latencia inferior de caché frente a GCN, recogida esta en la trasparencia de arriba. Habría sido interesante comparar la latencia de RDNA con la de RDNA 2.

arch7.jpg
arch12.jpg

Fuente: Chips and Cheese. Vía: Videocardz.