Un estado de Zen: AMD presenta nuevos detalles arquitectónicos en su último núcleo de CPU

Función AMD-Zen

AMD dio a conocer una gran cantidad de información en Hot Chips sobre su próxima arquitectura y núcleo de CPU 'Zen'. El nuevo chip ha sido objeto de una enorme cantidad de especulaciones durante más de un año, pero las cosas se han calentado en las últimas semanas como puntos de referencia filtrados surgió y AMD llevó a cabo su propia prueba pública.

El volcado de información de hoy es el mayor detalle que AMD ha compartido hasta la fecha; de hecho, es significativamente más información de la que esperaba que compartiera la compañía hasta que Zen se lanzó realmente. Empecemos.

Objetivos de diseño de Zen

El zen se entiende mejor como una respuesta a los problemas que bulldozer plagado. AMD objetivo original con esa arquitectura era compartir recursos de manera inteligente entre los núcleos de la CPU, al tiempo que alcanzaba frecuencias más altas y una mayor eficiencia de ejecución que el núcleo de CPU anterior de AMD, K10. El fracaso de Bulldozer para entregar dejó a AMD en una posición desagradable: ¿Debería intentar reparar su antiguo núcleo o volver a la mesa de dibujo y construir algo completamente nuevo?



Las fuentes con las que hemos hablado en AMD sugieren que la dificultad de reparar Bulldozer fue lo suficientemente significativa como para que AMD optó por construir un nuevo núcleo desde cero sin el bagaje de Bulldozer. Eso no significa que no haya ADN de Bulldozer en Zen; de hecho, AMD ha declarado que la experiencia que obtuvo al mejorar la eficiencia energética de Steamroller y Excavator se aprovechó para su arquitectura más nueva. En cambio, di que qué elementos de diseño AMD hace tomar prestado de sus arquitecturas anteriores serán los componentes del chip que realmente funcionaron bien en lugar de los problemáticos que dominaban su rendimiento.

Caché de arquitectura

Mucho de lo que salió mal con Bulldozer estaba relacionado con su subsistema de caché y la arquitectura general, por lo que es un buen lugar para comenzar a sumergirse en el Zen.

Complejo de CPU

Donde Bulldozer usó el concepto de módulo de CPU (definido como un par de núcleos que comparten recursos), Zen usa complejos. Un complejo de CPU (CCX) contiene cuatro núcleos, 2 MB de caché L2 (512 KB por núcleo) y 8 MB de caché L3. Eso significa que el consumidor Zen de gama más alta de AMD contiene ocho núcleos y 16 MB de caché L3 en total, divididos en trozos de 2x8 MB. AMD ha declarado que los dos CCX en un chip de ocho núcleos pueden comunicarse entre sí a través de la estructura del chip, aunque es probable que haya una penalización en el rendimiento por hacerlo.

El caché L3 de Zen funciona como un caché de víctima para L1 y L2, lo que significa que los datos desalojados de esos cachés se almacenan en el L3. También es asociativo de 16 vías, que es un cambio significativo con respecto al L3 asociativo de 64 vías de Bulldozer. Una caché con una asociatividad de conjunto más alta tiene una mayor probabilidad de contener la información que la CPU está buscando, pero lleva más tiempo buscar, y uno de los problemas que paralizó a Bulldozer fue la latencia de la caché en casi todas las etapas.

No sabemos nada sobre las velocidades de reloj ni en la caché L3 ni en el controlador de memoria integrado. Históricamente, las CPU y APU derivadas de Bulldozer de AMD han usado un reloj entre 1.8 - 2.2GHz para el caché L3 y el IMC.

ZenCache

AMD ha declarado que el ancho de banda L1 y L2 es casi 2x Excavator, mientras que el ancho de banda L3 supuestamente es 5 veces mayor. Estos cambios deberían mantener el núcleo alimentado y respaldar un mayor rendimiento. La caché L1 es de escritura diferida en lugar de escritura simultánea; ese es un cambio significativo que debería mejorar el rendimiento y reducir la contención de la caché (la caché de escritura simultánea de Bulldozer significaba que el rendimiento de L1 podría verse limitado por la velocidad de escritura de la memoria caché L2 en algunos casos).

El núcleo de la CPU

Ya hemos abordado los cachés, así que veamos el núcleo de la CPU.

Zenuarch

Aquí está el diagrama central de alto nivel de Zen. Existen varias diferencias significativas en comparación con el núcleo Bulldozer más antiguo de AMD, incluida la adición de una caché de operaciones, una cola de microoperaciones y una mayor cantidad de canalizaciones enteras por núcleo.

Cola Zen

A continuación, se muestra una vista ampliada de cómo se alimenta el núcleo. Esta fue otra área de problemas importantes con Bulldozer: la lógica compartida de Bulldozer y Piledriver significaba que la unidad de despacho solo podía enviar trabajo a un núcleo u otro en cada ciclo de reloj. Steamroller luego solucionó este problema duplicando las unidades de envío, pero esto solo resultó en una modesta mejora del rendimiento.

AMD tomó una página del libro de Intel e implementó un caché de operaciones con Zen, incluso si no sabemos mucho sobre los detalles de la función. Esto permite que la CPU almacene en caché las operaciones decodificadas que puede necesitar enviar repetidamente en lugar de requerir que decodifique y envíe repetidamente las mismas instrucciones. Cada núcleo Zen puede decodificar cuatro instrucciones por ciclo de reloj, pero la cola de microoperaciones puede enviar seis instrucciones por ciclo. Claramente, AMD anticipa que su caché aliviará la presión sobre las unidades de decodificación y ayudará a mantener el núcleo alimentado mientras reduce el consumo de energía. Steamroller tenía una cola de macrooperaciones que podía contener hasta 40 macrooperaciones, pero su utilidad se limitaba a pequeños bucles.

Zen-Fetch

Al igual que la familia Bulldozer, Zen teóricamente puede obtener 32 bytes de datos a la vez, aunque el analista de CPU Niebla de Agner descubrió que la familia de núcleos Bulldozer estaba prácticamente limitada a 21 bytes de datos cuando ambos núcleos estaban en uso o 16 bytes si se usaba un núcleo. Teorizó que este límite puede haber sido la razón por la que duplicar las unidades de despacho de Steamroller arrojó resultados relativamente limitados. Resolver esto en Zen podría ser parte de por qué AMD ha mejorado significativamente su IPC.

Zen-Entero

Los núcleos enteros se han reequilibrado de la familia Bulldozer. Antes de Bulldozer, el K10 de AMD emparejó tres ALU con tres AGU (unidades de generación de direcciones). Bulldozer recortó esto a dos ALU y dos AGU por núcleo. Esto, combinado con la capacidad de envío limitada en los núcleos BD / PD, se pensó que era un cuello de botella importante en el rendimiento hasta que Steamroller agregó capacidades de envío adicionales y redujo la penalización que Kaveri tomó al escalar a través de múltiples núcleos. (Piledriver y Bulldozer lograron aproximadamente 1.8x de la escala que esperarías de un 'verdadero' de doble núcleo, mientras que Steamroller alcanzó aproximadamente 1.9x). Cuatro ALU y dos AGU podrían aumentar el rendimiento general en comparación con el diseño estrecho de Bulldozer, pero nosotros ' Tendré que ver cómo funciona el chip en los puntos de referencia.

FloatingPoint-Zen

La unidad de punto flotante de AMD seguirá usando registros de 128 bits para AVX y AVX2, pero la latencia en algunas operaciones FP se ha reducido y ahora hay cuatro conductos en lugar de tres para alimentar la FPU. La CPU no es capaz de ejecutar instrucciones AVX de 256 bits en un solo ciclo. Si esto resultará en detrimento del código del mundo real es una pregunta abierta, pero AVX / AVX2 no han mejorado el rendimiento general de las aplicaciones como lo hizo SSE2.

Poniendolo todo junto:

Si desea una sola diapositiva de alto nivel que capture lo que AMD ha revelado sobre Zen hasta la fecha, esta es:

DiseñoObjetivos

Todavía hay algunas áreas del chip que no he mencionado, como SMT, porque quiero investigar en qué se diferencia la implementación de SMT de AMD de la de Intel, pero no he tenido tiempo de examinar el tema en profundidad. AMD no ha declarado que Zen utilizará funciones como Carrizo’s AVFS, pero dado que han extendido ese enfoque a ambos Polaris y sus líneas APU es una apuesta segura que lo harán.

Aún así, hay mucho aquí que sugiere que Zen será ofrecen un rendimiento sustancialmente mejor que el de cualquier núcleo de Bulldozer. El diablo, como siempre, estará en los detalles. ¿Cuánto rendimiento gana AMD con SMT? ¿Qué velocidades de reloj puede alcanzar? ¿Cuál será el precio del núcleo frente a los productos actuales de Intel? ¿Ofrecerá 'suficiente' mejora de rendimiento y cómo se compararán sus características de chipset con lo que Intel trae al mercado?

Estas son preguntas importantes que, en última instancia, determinarán si Zen puede reavivar la competencia en el mercado de las CPU. Hablando estrictamente por mí mismo, soy cautelosamente optimista sobre el Zen. Bulldozer, en retrospectiva, estaba casi perfectamente mal posicionado para las realidades de la CPU y el negocio de la fundición de 2011 a 2016. Era una CPU diseñada para altas frecuencias en un momento en que la frecuencia de la CPU se había estrellado de frente en los límites de escala fundamentales. AMD mejoró el rendimiento y la eficiencia energética del núcleo, pero no pudo solucionar los problemas que lo rompieron en primer lugar. No es ridículo pensar que la empresa podría hacer girar un chip con un IPC mejorado en un 40% dado el lugar desde donde comenzaron.

Zen no necesita igualar el reloj por reloj de Intel o el núcleo por núcleo para ser una gran mejora con respecto a la situación actual de AMD. Debe ofrecer una mayor eficiencia, eficiencia energética y un rendimiento mucho más competitivo a un precio relevante. Según lo que AMD ha revelado hasta la fecha, creo que tienen una posibilidad real de lograrlo. Y aunque pensamos lo mismo sobre Bulldozer hace cinco años, Zen no es intentando crear un nuevo tipo de CPU de recursos compartidos. Eso debería contar para algo en el análisis final.

Se espera que Zen debute en el primer trimestre de 2017 en un gran volumen. El dinero inteligente actual está en un debut y lanzamiento de CES, aunque eso es solo una suposición basada en programas y ciclos de productos anteriores.

Copyright © Todos Los Derechos Reservados | 2007es.com