Estas son las claves de la arquitectura AMD Zen 4 en los Ryzen 7000

Con el nombre de Zen 4, AMD ha lanzado su cuarta generación de procesadores Ryzen, EPYC y Threadripper. Los primeros en utilizar el socket AM5 y tener soporte para tecnologías como DDR5 y PCI Express 5.0. Sin embargo, pese a todos estos cambios, se trata de una arquitectura de contrastes, con elementos que apenas han cambiado respecto a generaciones anteriores.  Es por ello que hemos decidido darle un repaso a esta arquitectura Zen 4 de una forma que todos podáis entender.

Si existe una palabra con la que podríamos definir a la arquitectura Zen 4 de AMD, esta sería transición. Se trata de la primera familia de chips pensada para usarse en el nuevo socket AM5 que trae una serie de cambios importantes, pero al mismo tiempo se trata de la generación Zen más conservadora de todas, con cambios mucho menores que en generaciones anteriores. Pese al excelente rendimiento de los Ryzen 7000. Por lo que serán necesarios cambios muchos más profundos en las siguientes iteraciones de sus CPU.

¿Qué es Zen 4?

Delid-Ryzen-7000

Bajo el nombre de Zen 4 se conoce la cuarta iteración o evolución de la arquitectura Zen de AMD utilizada en sus procesadores Ryzen. En el caso que nos ocupa y a tiempo presente en la 7000, tanto en CPU de sobremesa como de escritorio. Eso sin olvidarnos de la futura iteración de los Threadripper para estaciones de trabajo y los AMD EPYC 9004 con el nombre en clave Genoa.
En cuanto a sus especificaciones generales, estas son las siguientes:
  • Diseñado por AMD y construido bajo el nodo de 5 nm de TSMC, versiones posteriores lo harán bajo el de 4 nm.
  • Hasta 5.7 GHz de velocidad de reloj en Boost como velocidad máxima, esto son 0.8 GHz más respecto a la generación anterior. Aunque las consecuencias de ello es un aumento del consumo del chip.
    • En el caso de la versión para portátil pueden alcanzar los 5.4 GHz en Boost.
  • Es un 13% de media más rápida por ciclo de reloj que su antecesora.
  • 8 núcleos interconectados entre sí en una estructura en anillo con una caché L3 de 32 MB, la cual se reduce en 16 MB si hablamos de los Ryzen 7x40 para portátiles.
  • El tamaño de la caché L2 de cada núcleo ha aumentado, de 0.5 MB a 1 MB respecto a la iteración anterior.

¿Cuáles son las variantes de Zen 4 que existen?

AMD Ryzen 7000 versión portátil

AMD lanzará tres variaciones de la arquitectura Zen 4 en su periodo de vida, dos de ellas ya se encuentran disponibles en el mercado en forma de diferentes chips, la tercera la veremos desplegada en los próximos meses.
  • La versión estándar, la cual recibe el nombre de Zen 4 a secas.
  • Zen 4C, una versión optimizada en el área y pensada para los servidores de computación en la nube. Desconocemos por el momento los detalles oficiales de la misma, solo que los núcleos ocupan menos espacio y funcionará a una velocidad de reloj algo menor.
    • Por el momento conocemos dos futuras CPU que usaran el núcleo Zen 4C. La primera de ellas es un AMD EPYC con el nombre clave Bergamo con 128 núcleos en total. Por el otro, un futuro chip para portátiles con el nombre en clave Phoenix 2, que combina 4 núcleos Zen 4 estándar y otros 4 Zen 4C.
  • Zen 4 con V-Cache, el cual ya hemos visto en los Ryzen 7000 X3D y se trata de un chip integrado en 3D basado en un chip Zen 4 estándar con un chip de memoria SRAM encima del mismo que sirve para aumentar el tamaño de la caché L3 para un mayor rendimiento, pero a cambio de bajar la velocidad de reloj.
Cada una de las tres variaciones se ha diseñado para un mercado y, por tanto, para unas exigencias de rendimiento y consumo diferentes.  Por el momento conocemos el punto diferencial entre Zen 4 y su versión con V-Cache. Al tiempo de escribir este artículo, desconocemos por completo si hay diferencias concretas con Zen 4C, dado que por el momento AMD no ha hablado de forma específica de dicha variante de la arquitectura.

Así es la arquitectura Zen 4

AMD-Ryzen-7000X3D-3D-V-Cache-IOD

Cómo su nombre bien indica, nos encontramos ante una mejora incremental de una arquitectura ya existente. Por lo que Zen 4 se construye sobre los cimientos de Zen 3 para mejorar una serie de puntos en concreto, pero dejando a otros intactos a la espera de una futura mejora u optimización que veremos en la más que confirmada arquitectura Zen 5, aunque para ello deberemos esperar a 2024 como mínimo.

Para entender mejor los cambios vamos a dividir la explicación en dos partes diferenciadas. En la primera de ellas nos centraremos solo en lo que es la CPU desde el punto más estricto. Es decir, los núcleos y la caché. Luego ya nos centraremos en lo que es el controlador de memoria integrado, donde ha habido cambios importantes respecto a generaciones de procesadores de AMD anteriores a este.

Núcleos, caché y latencia

Zen 4 Caché

Los procesadores basados en Zen 4 heredan la misma estructura organizativa que vimos en Zen 3. Tenemos 8 núcleos interconectados entre sí en una topografía en anillo con una caché de tercer nivel compartida entre todos ellos. En cuanto a los dos primeros niveles de caché, siguen siendo privados de cada núcleo, pero con un aumento en la caché L1 de los 512 KB a 1 MB.
Pese a estar todos ellos en un mismo chip, el tipo de comunicación hace que exista cierto nivel de latencia entre los diferentes núcleos cuando tienen que trabajar en una tarea en conjunto. Lo cual nos indica que el anillo transmite los datos en una misma dirección y no en dos, una mejora que deberíamos esperar para una futura iteración de la arquitectura. Sin embargo, esto supone duplicar el consumo energético de la comunicación interna y tener que subir de nuevo el TDP, algo que no creemos que hagan mientras sigan en la plataforma AM5 por varias generaciones.
Sin embargo, pese a estas limitaciones, está muy claro que si en algo AMD supera por mucho a Intel es en el rendimiento de su memoria caché. Es una grata noticia que la caché de tercer nivel en Zen 4 tenga el mismo rendimiento que la de segundo nivel en Golden y Raptor Cove, arquitecturas donde el rendimiento de la caché L3 es paupérrimo. Aunque no os preocupéis los fans de Intel, que en el siguiente punto se va a girar la tortilla.

FrontEnd en procesadores con arquitectura Zen 4

Zen 4 FrontEnd

Nos estamos refiriendo a lo que tradicionalmente llamamos Unidad de Control de la CPU y sinceramente, es la parte que menos cambios ha sufrido respecto a Zen 3. Tan pocos que en Zen 4 podríamos decir que es totalmente idéntica y seguimos con una AMD con decodificador capaz de traducir hasta 4 instrucciones x86 de 32 o de 64 bits en la misma cantidad de microinstrucciones. Sin embargo, gracias a la caché dedicada a ello, la cantidad crece hasta 8, pero dicha capacidad no es mejor que la que teníamos en generaciones anteriores.
Se trata sin duda del talón de Aquiles de la arquitectura Zen 4 y no lo decimos nosotros, lo reconoce la propia AMD cuando es uno de los puntos de mejora importantes en la siguiente generación. Comparativamente, las CPU de Intel de las dos últimas generaciones pueden decodificar 6 instrucciones al vuelo y si hablamos de núcleos ARM como los de Apple, la cosa se nos va a los 8. En todo caso, hemos de tener en cuenta que lo que estamos hablando en este caso es la cantidad de instrucciones que se envían a las unidades de ejecución y no la velocidad con las que estas se resuelven.
¿El mayor cambio? Sin duda en la unidad de predicción de saltos, la cual ha sufrido una mejora importante respecto a Zen 3. Dicha unidad es clave para que no se pierdan ingentes cantidades de ciclos de reloj por una mala predicción a la hora de ejecutar una instrucción de salto o de bucle, las cuales son totalmente comunes en todos los programas.

Unidades de ejecución en Zen 4

Zen 4 Unidades Ejecución

Aquí nos encontramos con una mejora incremental respecto a Zen 3, sin embargo, no en el número de unidades, pero sí en el búfer de reordenamiento y en los registros de los diferentes planificadores. Es decir, ahora puede gestionar una mayor cantidad de instrucciones al mismo tiempo y mantener una lista más larga de estas en espera. Sin embargo, los cambios son menores y eso explicaría el motivo por el cual el aumento de la media de instrucciones por ciclo haya sido peor que en generaciones anteriores.

Es más, Zen 4 conserva las mismas unidades de ejecución que Zen 3, pero añadiendo soporte para instrucciones AVX-512 en el proceso como su mejora principal. Sin embargo, no nos debemos dejar engañar. El aumentar la velocidad de reloj media de un procesador no se limita a darle más consumo energético y a subir los voltajes, sino que también tiene que ver con ello el aumento del número de etapas necesarias por instrucción, con el objetivo de cada una de ellas dure menos tiempo.

Dicho de otra forma, pese a todo lo que os hemos explicado, no es un simple Zen 3 con una serie de mejoras leves, sin embargo, AMD ya se ha encontrado con un muro importante a la hora de aumentar el IPC respecto a generaciones anteriores, pero no por incapacidad de las unidades de ejecución de Zen 4, sino más bien por las etapas anteriores y a un FrontEnd o Unidad de Control sin cambios de ningún tipo.

Soporte para memoria DDR5

Zen 4 DDR5

El hecho qué AMD haya decidido adoptar la memoria DDR5 para los procesadores basados en Zen 4 cambia por completo la naturaleza del controlador de memoria integrado, ya que la forma de funcionar de dicha RAM es totalmente distinta a la DDR4. Por cierto, al contrario que ocurre con los últimos Intel Core, en AMD han decidido suprimir por completo el soporte para la DDR de cuarta generación.

Hasta el momento el IMC funcionaba a la velocidad de reloj del controlador de la memoria a la que estaba conectado, la cual es la mitad de su velocidad de transferencia al ser del tipo DDR. Por ejemplo, si nuestra memoria era DDR4-3200, entonces la velocidad de reloj del controlador de memoria era de 1600 MHz, con un bus de 256 bits, de ahí a que podemos conectar dos módulos DIMM o SO-DIMM que tienen cada uno un bus DDR de 64 bits.

El cambio de la DDR4 a la DDR5 no es solo el hecho de un aumento en el ancho de banda y una mayor cantidad de ciclos de latencia, como suele ocurrir en estos casos. Si no el hecho de que ahora cada chip de memoria DDR5 tiene un segundo puerto de acceso, lo que se traduce en que dos componentes del procesador pueden acceder al mismo recurso, reduciendo los atascos que provocaban aumentos de la latencia.

GPU integrada en los Ryzen 7000 de escritorio

AMD-RYZEN-IGPU-7000-RDNA2-1

Hasta el momento, uno de los elementos que diferenciaban las APU Ryzen para portátiles de los procesadores por chiplets para los PC de escritorio no era solo el hecho que los primeros fueran monolíticos, sino también la inclusión de una GPU integrada. Pues bien, en los Ryzen 7000 de escritorio lo que tenemos es una RDNA 2 de muy baja potencia, apenas 2 Compute Units, por lo que no nos sirve ni para los juegos menos exigentes, pero cumplen de sobras como tarjeta gráfica básica.