AMD llevaba más de un año adelantando sus Epyc de 256 núcleos. En un evento de prensa en Las Vegas, la semana pasada, por fin explicó los cambios de arquitectura del núcleo Zen que los hacen posibles, informó The Register. Ese mismo núcleo moverá más adelante la próxima generación de Ryzen para escritorio y notebook.
Según AMD, Zen 6 entrega un alza promedio de 27% en instrucciones por ciclo (IPC) en distintas cargas de IA y de servidor, con relojes de 4,1 a 5,3 GHz. The Register espera frecuencias todavía más altas en los chips de consumo, pero AMD no quiso hablar de Ryzen por ahora.
El rendimiento de una CPU depende de la potencia eléctrica, del IPC y de los relojes. Zen 6 mejora en los tres, y por eso perfila como uno de los saltos generacionales más grandes de la compañía.
Dos núcleos con la misma base
Como en los lanzamientos anteriores de Epyc, Zen 6 no es un solo núcleo. Viene en dos sabores, una variante optimizada para frecuencia (Zen 6) y otra optimizada para densidad (Zen 6c).
La división viene de los Epyc Bergamo de 2023, que metían 128 núcleos compactos Zen 4c en apenas ocho chiplets. Su estreno se comparó con los núcleos de eficiencia (E-cores) que Intel acababa de sacar, por razones obvias. Por dentro, sin embargo, Zen 4c no se parecía a lo que hacía Intel. El núcleo era casi idéntico a Zen 4. Solo cambiaba reloj y algo de caché por núcleo a cambio de un die de CPU más denso.
Entre correr una aplicación en Bergamo o en Genoa, la única diferencia era la velocidad. Con los núcleos P y E de Intel no pasaba lo mismo, porque usaban conjuntos de instrucciones (ISA) distintos.
Esa característica se mantuvo hasta Zen 5 y le permitió a AMD vender los Turin con hasta 192 núcleos sin que el usuario tuviera que preocuparse de si su aplicación caía en un núcleo compacto o no.
Con Zen 6c la filosofía sigue casi igual, hasta donde entiende The Register. Zen 6 y Zen 6c comparten la misma ISA y el reloj es la diferencia principal. Hay otras diferencias de microarquitectura pensadas para equilibrar mejor el IPC y la frecuencia.
¿Cuánto más rinde Zen 6 frente a Zen 5?
En el diagrama de bloques eso no se nota a simple vista. Zen 6 y Zen 5 tienen un front end y un back end muy parecidos.
The Register lo habría llamado un núcleo iterativo de no ser por el alza de 20 a 31% en IPC en cargas de nube e IA que AMD declara frente a Zen 5. Eso sugiere que, núcleo por núcleo, un Epyc Venice con Zen 6c a 4,1 GHz debería rendir lo mismo que un Epyc Turin con Zen 5 a 5 GHz.
Que AMD vea ese avance en servidores y nube no significa que se repita en el PC. Muchos recuerdan la mejora de cerca de 5% que reportaron los jugadores con la serie Ryzen 9000, que dejó el desafortunado apodo de "Zen 5 percent".
Pasó porque los motores de juego de entonces no tenían a la CPU como cuello de botella, así que un núcleo más rápido solo podía subir el techo hasta cierto punto. Aun así, Mike Clark, fellow de AMD y apodado "Zen daddy", le dijo a The Register que los compradores de PC esperan de Zen 6 bastante más que una mejora de 6%.
De dónde sale el aumento de rendimiento
The Register reconoce que pasa por alto varias optimizaciones de bajo nivel. Según Clark, uno de los mayores motores del alza fue el front end. Zen 5 estrenó un front end doble que funcionaba muy bien con cargas simples, pero perdía fuerza frente a cargas más dinámicas.
"El equipo de Zen 6 hizo un muy buen trabajo con esas cargas de mayor huella que tienen una naturaleza bipolar", dijo Clark. "No es algo que salte a la vista. No lo vas a ver muy bien en un diagrama de bloques. Es algo sutil... pero es una gran palanca".
Otro aporte fue el paso a un planificador distribuido dentro del pipeline fuera de orden. Los núcleos modernos no ejecutan las instrucciones en el orden en que llegan. Las reordenan para mantener a las unidades de ejecución del back end con un flujo constante de trabajo.
Ahí está la mayor diferencia entre Zen 6 y Zen 6c. Para compensar el reloj más bajo del segundo, AMD le dio colas más profundas al planificador, lo que según Clark ayuda con las cargas de mayor latencia. Las colas menos profundas de Zen 6, por lo que entiende The Register, le permiten subir más el reloj con menos consumo.
¿Qué cambia para la IA en CPU?
En el back end, AMD hizo varios cambios menores con efectos grandes en cargas vectoriales, incluida la IA. Uno de los más relevantes es que el núcleo ahora puede hacer cuatro cargas AVX2 o dos AVX-512 por ciclo.
Eso no mejora mucho el rendimiento en AVX-512. Para las aplicaciones que no se han actualizado a esas instrucciones, en cambio, el núcleo puede hacer el doble de cargas, lo que debería subir el rendimiento del software heredado. Sirve sobre todo en el PC, donde la falta total de AVX-512 en los chips de Intel dejó a AVX2 como el mínimo común de mucho software.
AVX-512 también recibió mejoras en esta generación. Para quien corre IA en la CPU, Zen 6 soporta de forma nativa el tipo de dato FP16. Antes también lo soportaba, pero había que rellenar los datos a FP32, así que la menor precisión casi no se traducía en rendimiento. En Zen 6 eso ya no ocurre.
Clark agregó que Zen 6 duplica las unidades VNNI-INT8, de dos a cuatro, lo que debería duplicar el rendimiento en las cargas que las aprovechan.
La caché por núcleo deja de depender de la variante
Aunque no es parte del núcleo, los procesadores Zen 6 también corrigen una de las mayores asimetrías entre las versiones de frecuencia y de densidad.
Desde Bergamo, elegir un Epyc optimizado para densidad costaba reloj y también caché. Cada chiplet Zen 4c o Zen 5c tenía el doble de núcleos y la misma cantidad de caché L3.
Con Zen 6 y Zen 6c se pierde algo de reloj, pero la caché por núcleo queda fija en 4 MB. Como The Register explicó en su análisis del Epyc Venice de septiembre, cada uno de los ocho dies de CPU del procesador lleva 12 o 32 núcleos, con 48 y 128 MB de caché respectivamente.
| Variante | Núcleos por die de CPU | Caché L3 por die |
|---|---|---|
| Zen 6 | 12 | 48 MB |
| Zen 6c | 32 | 128 MB |
La ventaja es que el usuario no tiene que lidiar con ISA ni jerarquías de caché distintas al optimizar su software para los Epyc de AMD. Con los Xeon de Intel no es así.
Los núcleos de rendimiento y de eficiencia de Intel usan microarquitecturas, ISA, jerarquías de caché y relojes distintos, y hasta agrupan sus núcleos de otra forma. Eso complica las cosas en cargas que aprovechan registros vectoriales anchos como AVX-512, o aceleradores como AMX, que funcionan en los núcleos P de Intel y ni siquiera corren en los E.
Según The Register, eso y el soporte de SMT (Hyperthreading), que Intel dejó de lado por ahora, pueden ayudar a AMD a quitarle todavía más participación de mercado a su rival de siempre.






