Los entusiastas de los videojuegos son importantes para AMD. El lanzamiento de este procesador lo confirma. Y es que el nuevo Ryzen 7 5800X3D se suma al porfolio de chips de la familia Ryzen 5000 con microarquitectura Zen 3 con el propósito de afianzarse como la opción más atractiva para los jugones. Esto es, al menos, lo que nos prometió esta marca durante la presentación de este chip.
La característica que, según AMD, debería permitirle alcanzar este objetivo es una nueva arquitectura de memoria caché de nivel 3 con una capacidad de nada menos que 96 MB. Esta cifra es una auténtica monstruosidad. Para ponerla en contexto solo tenemos que fijarnos en que los Ryzen 9 5950X y 5900X, que tienen una mayor cantidad de núcleos, incorporan ‘solo’ 64 MB de caché L3.
La tecnología 3D V-Cache, que es como se llama esta innovación, ya ha sido utilizada por AMD en algunas de sus soluciones profesionales, como los procesadores EPYC para centros de datos. A grandes rasgos, hace posible el apilado de chiplets, de manera que en vez de colocarse uno al lado del otro se emplazan uno encima del otro.
De esta forma es posible incrementar notablemente la capacidad de la memoria caché de nivel 3, y, además, la latencia de este subsistema se reduce. Sobre el papel esta estrategia pinta bien. Muy bien. Veamos si los ingenieros de esta marca realmente han puesto toda la carne en el asador.
Los tres ‘chiplets’ no apilados de este microprocesador reflejan que se trata de un Ryzen 9 de la familia 5000 con dos CCD y un IOD (este último es el de mayor tamaño).
AMD Ryzen 7 5800X3D: especificaciones técnicas
Al igual que los demás procesadores de la familia Ryzen 5000, el Ryzen 7 5800X3D está siendo fabricado por TSMC empleando su fotolitografía FinFET de 7 nm. Su tecnología de fabricación y su microarquitectura son las mismas utilizadas por los otros chips de esta serie, pero si nos ceñimos a su estructura lógica hay una diferencia importante entre el nuevo Ryzen y sus predecesores.
En todos los procesadores de esta familia cada chiplet CCD (Core Complex Die) aglutina 8 núcleos y una caché de nivel 3 compartida entre todos ellos con una capacidad de 32 MB, entre otros elementos funcionales. El nuevo Ryzen 7 5800X3D incorpora 8 núcleos y es capaz de procesar simultáneamente hasta 16 hilos de ejecución (threads), por lo que tiene un solo chiplet CCD, y, al igual que los demás chips de esta familia, un chiplet IOD (Input Output Die).
En la siguiente tabla hemos reunido las especificaciones de varios microprocesadores de la familia Ryzen 5000 para poner las características del Ryzen 7 5800X3D en contexto:
RYZEN 9 5950X | RYZEN 9 5900X | RYZEN 7 5800X3D | RYZEN 7 5800X | RYZEN 5 5600X | |
---|---|---|---|---|---|
MICROARQUITECTURA | Zen 3 | Zen 3 | Zen 3 | Zen 3 | Zen 3 |
FOTOLITOGRAFÍA | TSMC 7 nm FinFET | TSMC 7 nm FinFET | TSMC 7 nm FinFET | TSMC 7 nm FinFET | TSMC 7 nm FinFET |
NÚCLEOS | 16 | 12 | 8 | 8 | 6 |
HILOS DE EJECUCIÓN | 32 | 24 | 16 | 16 | 12 |
FRECUENCIA DE RELOJ BASE | 3,4 GHz | 3,7 GHz | 3,4 GHz | 3,8 GHz | 3,7 GHz |
FRECUENCIA DE RELOJ MÁXIMA | 4,9 GHz | 4,8 GHz | 4,5 GHz | 4,7 GHz | 4,6 GHz |
CACHÉ L2 | 8 MB | 6 MB | 4 MB | 4 MB | 3 MB |
CACHÉ L3 | 64 MB | 64 MB | 96 MB | 32 MB | 32 MB |
ZÓCALO | AM4 | AM4 | AM4 | AM4 | AM4 |
PCI EXPRESS | 4.0 | 4.0 | 4.0 | 4.0 | 4.0 |
TDP | 105 vatios | 105 vatios | 105 vatios | 105 vatios | 65 vatios |
VELOCIDAD MÁXIMA DE LA MEMORIA | 3200 MHz | 3200 MHz | 3200 MHz | 3200 MHz | 3200 MHz |
CHIPLETS | 2 x CCD 1 x IOD | 2 x CCD 1 x IOD | 1 x CCD1 x L3D (3D V-Cache)1 x IOD | 1 x CCD 1 x IOD | 1 x CCD 1 x IOD |
La microarquitectura Zen 3, a fondo
La primera diapositiva en la que merece la pena que nos detengamos refleja con claridad lo diferente que es la estructura de los CCD utilizados por los Ryzen con microarquitectura Zen 2 y Zen 3. Cada conjunto de cuatro núcleos en los procesadores Ryzen 3000 tiene acceso a una memoria caché compartida de nivel 3 con una capacidad de 16 MB, mientras que, como acabamos de ver, cada conjunto de ocho núcleos en los Ryzen 5000 accede a una caché de nivel 3 unificada de 32 MB.
Según AMD este cambio de estrategia tiene un impacto perceptible en el rendimiento de la CPU debido a que cada uno de los núcleos en Zen 3 tiene acceso a una memoria caché de nivel 3 con el doble de capacidad que en Zen 2. El tamaño total de la caché L3 de cada CCD es el mismo en Zen 2 y Zen 3, pero esta última microarquitectura consigue optimizar el aprovechamiento de este subnivel de caché al permitir que cada uno de los núcleos «vea» toda la memoria L3.
AMD también asegura que esta estrategia les ha permitido reducir la latencia derivada del acceso de los núcleos a esta caché, lo que según esta compañía tiene un impacto positivo en el rendimiento de sus CPU con videojuegos.
Todos los núcleos de los procesadores Ryzen 5000 implementan la tecnología SMT (Simultaneous MultiThreading), por lo que cada uno de ellos es capaz de procesar simultáneamente dos hilos de ejecución (threads). Además, AMD asegura haber mejorado su algoritmo de predicción de bifurcaciones del código, y sus microprocesadores son capaces de decodificar cuatro instrucciones por ciclo de reloj y de llevar a cabo tres operaciones de acceso a memoria durante cada uno de los ciclos de la señal de reloj.
En la siguiente diapositiva podemos ver que los ingenieros de AMD han refinado el cauce de ejecución de instrucciones, que en Zen 3 es ligeramente diferente al de los procesadores con microarquitectura Zen 2. Entre otras mejoras han conseguido invertir menos tiempo en la recuperación de una predicción fallida de una bifurcación del código; han optimizado la secuenciación de las microinstrucciones que conlleva la ejecución de cada instrucción; han reducido la latencia asociada a algunas operaciones en coma flotante y con enteros, y también han mejorado la detección de las dependencias existentes entre varias posiciones de memoria.
Las modificaciones que los ingenieros de AMD han introducido en el cauce de ejecución persiguen un objetivo bastante ambicioso: incrementar un 19% el número de instrucciones que los Ryzen 5000 consiguen ejecutar en cada ciclo de la señal de reloj.
El front end tiene una responsabilidad diferente a la del back end o motor de ejecución. Muy a grandes rasgos y sin entrar en detalles complicados este último se encarga de ejecutar las instrucciones, mientras que el front end se responsabiliza de recogerlas desde la memoria principal o la caché y de decodificarlas para que posteriormente puedan ser procesadas por el motor de ejecución.El ‘front end’ de Zen 3 conmuta con más rapidez entre las cachés de microoperaciones e instrucciones y se recupera en menos tiempo de las predicciones de bifurcaciones fallidas
Además de predecir con más eficacia las bifurcaciones del código, el front end de Zen 3 conmuta con más rapidez entre las cachés de microoperaciones e instrucciones, y, como hemos visto unos párrafos más arriba, se recupera en menos tiempo de las predicciones de bifurcaciones fallidas.
Las mejoras de la lógica de predicción de bifurcaciones del código de las que hemos hablado contribuyen a optimizar el proceso de precarga en el registro de instrucción de la siguiente instrucción que va a ser ejecutada, y también, por tanto, su decodificación, pero hay otra mejora relevante en el front end que también nos interesa conocer: la caché de nivel 1 encargada de almacenar las instrucciones también ha sido refinada para optimizar la precarga e incrementar la tasa de aciertos de esta memoria intermedia.
Las novedades que introduce Zen 3 no involucran únicamente al front end; el motor de ejecución, o back end, también ha sido refinado por los ingenieros de AMD en esta microarquitectura. Una de las mejoras más relevantes consiste en que cada uno de los cuatro planificadores de la unidad de números enteros expide hacia dos unidades de ejecución, lo que, según AMD, contribuye a incrementar la eficiencia de las operaciones con enteros. Por otro lado, cada uno de los dos planificadores de la unidad de coma flotante expide hacia tres unidades de ejecución.
Cada uno de los ocho núcleos activos que puede incorporar como máximo un chiplet CCD de los procesadores Ryzen 5000 integra una caché de nivel 1 de 64 KB (32 KB para instrucciones y 32 KB para datos), y también una memoria caché de nivel 2 con una capacidad de 512 KB en la que se almacenan tanto datos como instrucciones. El siguiente subnivel, como hemos visto, es una caché compartida de nivel 3 con una capacidad de 32 MB que está colocada junto a los núcleos en el chiplet.En Zen 3 cada uno de los núcleos integra una caché de nivel 1 de 64 KB (32 KB para instrucciones y 32 KB para datos), y también una memoria caché de nivel 2 con una capacidad de 512 KB
Esta estrategia permite que cada núcleo tenga acceso a toda la caché L3 unificada, lo que, en teoría, debería reducir el número de fallos de caché. Como hemos visto, los procesadores Ryzen 9 5950X y 5900X incorporan dos chiplets CCD, cada uno con su propia caché L3, por lo que la capacidad global de esta memoria en cada CPU asciende a 64 MB.
La tecnología 3D V-Cache del Ryzen 7 5800X3D, en detalle
Los ingenieros de AMD han trabajado codo con codo con los de TSMC para desarrollar la tecnología de empaquetado necesaria para incorporar en el Ryzen 7 5800X3D el chiplet adicional L3D, pero sin incrementar la superficie del encapsulado. Y lo han logrado haciendo posible el apilado de los chiplets CCD y L3D. Esto significa, sencillamente, que este último no está colocado al lado del chiplet que aglutina los núcleos; está alojado justo encima del CCD.
Ahí va un dato sorprendente: el chiplet L3D, que, como hemos visto, incorpora los transistores que integran los 64 MB de caché L3 adicionales, está acoplado a nivel molecular al CCD que aglutina los núcleos Zen 3 mediante las fuerzas de Van der Waals
Por otro lado, la interfaz que hace posible la comunicación entre los dos chiplets apilados en la dimensión vertical, el CCD y el L3D, es capaz de alcanzar una velocidad de transferencia máxima de 2 TB/s. Es crucial que esta cifra sea lo más elevada posible para que cada acceso a los 64 MB de caché alojados en el chiplet L3D conlleve una latencia mínima.
Además, la tecnología de empaquetado utilizada por TSMC en el nuevo procesador Ryzen 7 5800X3D consigue, según AMD, que la altura Z de esta CPU sea la misma de los procesadores Ryzen 5000 que carecen de 3D V-Cache.
La altura Z es el parámetro que refleja la distancia que existe entre la superficie del PCB (placa de circuito impreso) de la placa base y la superficie del IHS (Integrated Heat Spreader), que es el disipador metálico que recubre los chiplets para optimizar la transferencia de energía térmica mediante conducción.
En la práctica esto significa que tanto el Ryzen 7 5800X3D como los procesadores de AMD que utilicen en el futuro la tecnología 3D V-Cache serán compatibles desde un punto de vista físico con el empaquetado, el zócalo y los sistemas de refrigeración utilizados con los procesadores Ryzen 5000 que carecen de esta innovación.