jueves, 2 de febrero de 2017

Intel Atom Silvermont 22 nm. Introducción – ProfessionalSAT

Largo tiempo ha pasado desde que Intel presentó la primera generación Atom. Ha sido demasiados años para sustituir su arcaica arquitectura Bonnell cuyo diseño databa de 2004 (!!). Bonnell fue lanzado en 2008 en el nodo de 45 nm y evolucionado tímidamente a 32 nm en Saltwell.

En LowLevelHardware estoy escribiendo una serie de artículos detallando la micro arquitectura de este diseño de Intel para los que quieran un análisis más profundo:

Intel Silvermont 22nm. Micro arquitectura. Etapas de Fetching – LowLevelHardware

Atom Tick TockBonnell 45 nm, Saltwell 32nm y el nuevo Silvermont 22 nm.

Por fin este año con Silvermont 22 nm Intel juega la carta out of order (OoO) en el segmento ultra móvil y prepara a Atom para la feroz competencia con ARM.

En LowLevelHardware estoy escribiendo una serie de artículos detallando la micro arquitectura de este diseño de Intel:

Intel Silvermont 22nm. Micro arquitectura. Etapas de Fetching – LowLevelHardware

El arcaico y venerable core Bonnell

Han sido cinco largos años de espera. Debido a la falta de progresos en la micro arquitectura Atom los Netbooks han pasado prácticamente al olvido por su terrible rendimiento y por una plataforma / chipset / GPU que no ayudaba en absoluto al rendimiento y consumo de los anémicos cores Bonnell.

09-intel-atom-470-1108El minimalista core Bonnell de 45 nm de 2008, el primer Atom.

A mi modo de ver es increíble, ms parece mentira hablar de sistemas PC a la venta en pleno 2013 basados en chips con cores con ejecución In Order.

Todas las máquinas actuales basadas en CPUs Atom sean de 45 o 32 nm ejecutan el stream de instrucciones de un programa en estricto orden. Es decir, hasta que la instrucción 1 no ha sido ejecutada no pasa a la instrucción 2 y así sucesivamente.

No hay que pensar mucho para llegar a la conclusión de que no es el modo más rápido de proceder. En el mundo real, las instrucciones no siempre tienen disponibles los datos sobre los que deben operar en tiempo cero sino que deben cargarlos de algún sitio (caché, memoria RAM, disco duro…) que suele estar a varios ciclos de distancia temporal (cachés L1 o L2) o cientos de ciclos en caso de la RAM y muchísimo más de se trata de un acceso a disco duro.

Los procesadores Intel Atom de 45 y 32 nm palían este grave defecto con el Hyper Threading, ejecutan dos threads a la vez, cuando un thread no puede ejecutar una instrucción pasa al otro thread (a ver si hay suerte y tiene los datos disponibles…) En Atom Hyper Threading aporta sobre un 30% de prestaciones adicionales en modo multithread.

Desafortunadamente Hyper Threading no puede hacer nada con el rendimiento single thread, de hecho lo empeora levemente (menos de un 10%).

Intel Atom 22 nm 2013, bienvenido a la Ejecución Fuera de Orden (OoOE)

La forma ideal de operar en cambio, es la Ejecución Fuera de Orden (OoOE Out of Order Execution). Todas las CPUs de alto rendimiento de propósito general actuales funcionan de este modo, incluso ARM desde los Cortex A9 emplea una forma limitada de OoOE y ya en el Cortex A15 de manera completa.

Silvermont DieIntel Silvermont 22 nm die. (A bajísima resolución)

El procesador tiene un buffer (ROB Re Order Buffer) en el que almacena las últimas instrucciones del programa en ejecución (por ejemplo 128) y las analiza para averiguar cual de ellas es la más antigua que está lista para ser ejecutada inmediatamente y a que unidad de ejecución enviarla.

Por si solo, el OoOE supone sobre un 50% de incremento de velocidad de ejecución si se implementa adecuadamente.

Adiós FSB, adiós

Otra mejora fundamental de esta nueva generación Atom en la desaparición del venerable y arcaico Bus FSB. Por fin los cores se comunican con el exterior mediante un bus del siglo XXI. En este caso es un bus punto a punto, IDI, el mismo de Nehalem 45 nm y Westmere 32 nm.

Image1El bus IDI conecta cada módulo dualcore Silvermont con 1 MB L2 al System Agent.

La controladora de memoria DDR3 va integrada en el die del procesador, que a día de hoy es más bien un SoC (System on Chip) y se beneficia de la conexión del bus IDI a los cores X86 y la GPU integrada para aportar baja latencia en los accesos a RAM (que era terrible en los Atom con FSB).

A modo aclaratorio diré que si bien el primer core Atom (Bonnel 45 nm) tenía un chipset (Intel 945GM) al que se comunicaba por FSB y desde ahí accedía ala RAM, en la segunda generación (Saltwell 32 nm) apenas mejoró nada en este sentido ya que aunque la controladora DDR3 se situó en el mismo die, seguía conectada por el arcaico FSB.

En la segunda parte empezaré un análisis de la micro arquitectura del core Silvermont y cómo afecta al rendimiento IPC y a sus frecuencias estimadas así como a su integración en  chips comerciales de 2 a 8 cores.

En LowLevelHardware estoy escribiendo una serie de artículos detallando la micro arquitectura de este diseño de Intel para los que quieran un análisis más profundo:

Intel Silvermont 22nm. Micro arquitectura. Etapas de Fetching – LowLevelHardware

Si consideras útil el contenido de este Blog, ayuda a mantenerlo ojeando algunas de las ofertas que consideres interesantes de nuestros anunciantes. Gracias de antemano.

El que tenga dudas o aportaciones tiene para ello la sección de comentarios, intentaré responder a todos y con la máxima claridad. Los Blogs deben de ser lugares de intercambio y agradezco vuestro feedback.

Carlos Yus Valero – informaticapremium      informaticapremium-logo-150px[3]

6 comentarios:

  1. Me alegra ver que vuelve a estar activo este blog. Soy un adicto a tus articulos.

    Aprovecho para pedirte un articulo acerca del procesador ARM Cortex-A57. Tengo muchas esperanzas puestas en la arquitectura big.little.

    ResponderEliminar
  2. Linutux,

    Estoy en ello, ahora estoy dedicando el tiempo a crear una serie sobre Silvermont en LowLevelHardware, ya he escrito el primer artículo:

    http://lowlevelhardware.blogspot.com.es/2013/06/intel-silvermont-22nm-micro.html

    Por su parte ARM está entrando en los big cores, su primer intento es el actual Cortex A15, con un consumo elevado y por ello va emparejado con los pequeños y simples Cortex A7:

    http://zonaarm.blogspot.com.es/2012/03/arm-cortex-a15-parte-1-zonaarm.html

    Sobre los Cortex A57, son CPUs ya de 64 bit. Tendrán sin duda un consumo superior al A15 por lo que tendrán que ser fabricados en nodos rondando los 20 nm e idealmente 14 - 15 nm para que sean lógicos.

    Un saludo,

    Carlos Yus Valero.

    ResponderEliminar
  3. Si go pensando que cuando salga el Arm A57 va a aniquilar al Atom ese :p

    Cambiando de tema... este artículo es mas para LowLevelHardware no? que te estás volviendo mu técnico xD

    Por cierto ,deberías hacer un artículo sobre cómo meter un Corsair H110 en una caja mini-itx o micro-atx... El reto es que sea lo más pequeó posible y sin moddear! xD

    ResponderEliminar
  4. Anónimo,

    El ARM Cortex A57 probablemente llegue al mercado en el nodo de fabricación de 20 nm y será sin duda un excelente core en su clase. Recordemos que la arquitectura ARM persigue la simplicidad y tamaños de core de superficie mínima.

    Los A57, en cambio, van hacia el mercado de servers de gama baja consolidados. Muchos cores en poco espacio con un consumo y disipación térmica moderados.

    Atom Silvermont no va a por los A57, en principio competirá con los A15 de 32 bit.

    ARM va de menos a más, inicialmente cores simples sin muchas pretensiones y avanzando hacia arriba. Intel, el contrario, sigue el camino inverso, de los big cores a Atom.

    A mí, particularmente el roadmap de Atom me parece excelente a corto y medio plazo con actualizaciones anuales de micro arquitectura y a la vuelta de la esquina tenemos los 14 nm.

    parece que al fin Intel se ha dado cuenta de la crucial importancia estratégica del segmento móvil.

    Saludos,

    Carlos Yus Valero.

    ResponderEliminar
  5. Hola Carlos, Un gusto como siempre leer tus artículos.

    Intel esta invirtiendo mucho esfuerzo para competir en el sector móvil, que parece no dar el resultado esperado, pero no todo se ve tan mal por que con este esfuerzo parece que le va hacer mucho peso en el sector de los servidores con Soc de reducido tamaño y consumo.

    tienes una aproximación en que nivel prestaciones se encuentra esta arquitectura comparadas con otras x86 antiguas de amd e intel asi como los cortex a15?

    Sobre el primer comentario creo que Big.Little es un poco como desperdicio de espacio, veo mejor usar solo un core extra(Tegra?) o un mejor control de frecuencias de reposo y de apagado de cores como mejor métodos de control de consumo y espacio, igual es solo mi opinión.

    Saludos.

    ResponderEliminar
  6. Maximiliano,

    Los nuevos Atom por fin serán chips competentes, no como ahora los actuales con lo que ejecutar algunas tareas se hace eterno... son cores con ejecución In Order.

    Nivel de prestaciones, aumento de IPC espectacular y aumento de frecuencia. Sobre el doble que los actuales Atom por core y con el doble de cores por chip.

    Algo más rápido que un Cortex A15.

    A tu última pregunta, todo son maneras de reducir el consumo cuando no estás utilizando el dispositivo (IDLE) o en cargas muy bajas. Todas ellas son buenas aproximaciones y cada una tiene sus ventajas e inconvenientes.

    Un saludo,

    Carlos Yus Valero.


    ResponderEliminar

Nota: solo los miembros de este blog pueden publicar comentarios.