Mostrando entradas con la etiqueta Shanghai. Mostrar todas las entradas
Mostrando entradas con la etiqueta Shanghai. Mostrar todas las entradas

jueves, 2 de febrero de 2017

AMD Bulldozer. Prestaciones estimadas - LowLevelHardware

En el tercero de esta serie de artículos dedicados a la próxima micro arquitectura de AMD voy a aventurar mis previsiones sobre su nivel prestacional. Además lo compararé con los diseños actuales y con su muy evolucionado y perfeccionado futuro competidor, Intel Sandy Bridge.

Bulldozer_server AMD Bulldozer, la próxima micro arquitectura.

Bulldozer module, el módulo Bulldozer:

BulldozerModuleAMD Bulldozer module.

AMD llama módulo al conjunto siguiente:

  • Las etapas de Fetching
  • La circuitería de Decodificación X64
  • Los tres Schedulers independientes
  • Las cachés L1i
  • Los 2 cores de enteros compuestos de 2 ALUs y 2 AGUs
  • Una doble FPU con capacidad FMAC de 128 bit
  • Las cachés L1d
  • La L2 compartida para todas las unidades funcionales dentro del módulo

Este concepto se contrapone a la actual acepción de core. En los actuales diseños entendemos como core al conjunto del procesador excluyendo las interfaces externas, el North Bridge y en todo caso la caché L3 compartida (de haberla).

AMD nos obliga a cambiar el concepto para subrayar que cada módulo contiene dos cores funcionales e independientes de proceso de enteros.

Prestaciones por ciclo esperadas

A estas alturas tengo absolutamente claro que el tamaño en mm2 de la parte lógica (excluyendo L2 e interfaces) de Bulldozer será notable, claramente superior a sus actuales cores K10.5.

AMD ha comunicado que su núcleo K10 fabricado en 32 nm SOI HKMG por GloFo ocupa solamente 9.69 mm2 para 35 M Transistores, 17.7 mm2 incluyendo 1 MB de L2 (110 MT).

AMD_K10_32nm AMD K10 32 nm core 1 MB L2.

Estimo que el área lógica (ALUs + FPU) de Bulldozer se irá a la zona de los 20 mm2 en 32 nm, el doble que K10 32 nm y más área de die que los actuales cores K10.5 de 45 nm de Phenom II (unos 17 mm2).

K10.5_45nm_1MBAMD K10.5 45 nm 1 MB de L2.

Prestaciones en coma flotante (FPU)

Donde habrá un gran incremento en número de transistores será en la gran FPU doble de 128 bit con capacidad FMAC.

La actual implementación en K10.5 de 45 nm (Phenom II) comprende 3 pipelines de coma flotante especializados de 128 bit:

  • FMUL
  • FADD
  • FMISC

Esta limitación reduce su capacidad de proceso FPU puesto que cada unidad procesa un tipo de instrucciones y cada tipo de instrucción debe ir a su unidad y no otra.

En Bulldozer ambos pipelines son generales (ejecutan cualquier instrucción FPU) y simétricos y por ello resulta una arquitectura mucho más potente en cálculo matemático.

En coma flotante espero un gran avance en prestaciones clock for clock respecto a los actuales diseños de AMD, cifrado en torno a un 50% para 4 módulos Bulldozer con sus 4 FPUs dobles frente a las 6 FPUs con 3 pipelines de 128 bit cada una del hexacore Istambul.

Istambul45nm AMD Istambul hexacore, Bulldozer lo superará en un 50% en potencia FPU.

Prestaciones en proceso de enteros

Los Int cores muy probablemente serán más cortos en transistores que los actuales cores de enteros de Phenom II. De hecho reducen su capacidad de 3 ALUs mas 3 AGUs a 2 mas 2 respectivamente. AMD claramente apuesta por un futuro multithread…

Las prestaciones por Int core en cambio serán muy probablemente inferiores a las actuales en Phenom II.

Según las propias estimaciones de AMD, un MCM Bulldozer con 16 Int cores será un 37% más rápido que el doble hexa core Magny Cours. Si calculamos, a igualdad de cores, llegamos a un empate técnico.

Es decir, las prestaciones multithreaded en proceso de enteros serán equivalentes. En cambio, en algoritmos single threaded parece que Bulldozer será inferior a los actuales cores de AMD. Me puedo equivocar pero a la luz de los datos conocidos…

Frecuencias estimadas

La frecuencia de trabajo de un microprocesador actual la determinan numerosos factores:

  • La capacidad de la lógica de procesamiento (ALUs, FPUs…) de funcionar con corrección y estabilidad a esa frecuencia con un voltaje razonable.
  • La capacidad de realizar las comunicaciones inter core en un tiempo suficientemente corto para finalizar la transferencia antes del siguiente tick de reloj.
  • Frecuencia máxima de las cachés a la latencia y voltaje estipulado.
  • Entrar dentro del TDP de diseño (Thermal envelope) a esa frecuencia y voltaje en carga máxima combinada.

Como vemos, por un lado la frecuencia viene determinada por las capacidades del chip, del “silicio”, y por otro lado de no excederse en disipación térmica.

La velocidad de propagación de las señales eléctricas es limitada (y muy, muy inferior a la de la luz contrariamente a lo que algunos piensan) y por ello transcurre un tiempo finito desde que una unidad envía un resultado hasta que otra unidad lo recibe y puede comenzar su procesamiento sobre él. Esto limita la frecuencia de los procesadores y motiva que su diseño sea extremadamente complejo pues hay que posicionar las unidades que necesitan comunicación mutua lo más cerca posible (no en distancia, sino en tiempo – latencia –).

La disipación térmica depende de la frecuencia linealmente y del voltaje. La dependencia del voltaje es con una potencia entre 2 y 3:

  • Doble frecuencia, doble disipación.
  • Doble voltaje, de 4 a 8 veces mayor disipación térmica.

Como todos sabéis, a mayor voltaje (dentro de las limitaciones del diseño y el proceso de fabricación) mayor fiabilidad y linealidad en el rendimiento de los transistores de los que está compuesto el chip.

Todos estos condicionantes dan un rango de voltaje utilizable en el procesador, cuanto más nos acercamos al máximo obtendremos una mayor frecuencia estable pero con un gran consumo y en cambio, en la parte baja del rango obtendremos una menor frecuencia pero un excelente performance per watt.

Estimo que las frecuencias de Bulldozer se moverán en el mismo rango que los actuales cores Shanghai y Interlagos, sus frecuencias máximas rondarán los 3+ GHz. No veo probable cruzar los 4 GHz con TDPs razonables (máximo de 140W).

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

Previo AMD Bulldozer. Actualizado - LowLevelHardware

La próxima generación del core de AMD está despertando una gran excitación entre los profesionales de la arquitectura de procesadores, e incluso entre los propios ingenieros en Intel. Tal como ahora la conocemos será un rotundo éxito si es llevada a buen puerto como apuntan los numerosos rumores y las escuetas informaciones del fabricante.

Bulldoxer_4module_8int_cores_L3shared_630 AMD Bulldozer Zambezi 8 cores: 4 módulos y 8 threads con 8 INT cores.

En un artículo anterior, de Enero de este año, hice una pequeña lista de peticiones (wish list) para la próxima generación de procesadores AMD. Todos sabemos que el diseño definitivo del procesador que sustituirá, ya fabricado en 32 nm, a los actuales Opteron y Phenom II basados en núcleos Shanghai es definitivo hace meses y con alta probabilidad están ya en los previos al tape-out del primer stepping bootable.

Un poco de historia: Intel y la era Netburst

Durante años, desde la aparición del flamante Athlon64 en 2003, AMD gozó de una etapa de clara supremacía de sus diseños en prestaciones, consumo y disipación térmica. Intel ya desde el año 2000 comercializó su línea Netburst, unas CPUs basadas en pipelines extraordinariamente largos con la excusa de altísimas frecuencias y con un desafortunado e intrusivo (aunque necesario) mecanismo de Replay de micro operaciones.

Fueron procesadores que más bien parecían diseñados por los equipos de márqueting que por los excelentes grupos de ingeniería en Intel…

Las primera iteración del procesador Pentium 4 (Willamette 180nm) salió a la venta en 2000 compitiendo con el excelente y equilibrado procesador AMD Athlon. Con un pipeline de enteros de 20 etapas (!!) después de los decoders y la trace caché.

Contaba con unos tamaños de caché claramente insuficientes: la ínfima caché L1 de 8 KB y la L2 de 256 KB. El tamaño de la L2 de 256 KB se rumorea que fue una víctima de las prisas de Intel por llevar al mercado el diseño en 180 nm. Sus frecuencias finales fueron de 1.3 a 2.0 GHz.

die_180nm[1]Intel Pentium 4  Willamette 180 nm 256 KB L2.

Era una CPU muy cara y difícil en fabricación dado su tamaño y complejidad, casi toda su superficie era lógica. Contaba con un FSB quad pumped (4 x 100 MHz) de 400 MTs para un dual channel RAMBUS a 800 MHz y 16 bit (en el año 2000 !!). En fín, una plataforma de un coste estratosférico para finalmente y en la práctica obtener rendimientos similares o inferiores a un AMD Athlon con simple memoria SDRAM.

A finales de 2001 llegó, en mi opinión, el mejor integrante de la saga: el procesador Northwood de 130 nm ya con 512 KB de L2 y posteriormente dotado con HyperThreading. Partió de los 2 GHz (FSB 400 MHz) para escalar rápidamente. En esta época ya competía con los Athlon XP de AMD de 180 nm.

die_130nm[2]Intel Pentium 4  Nothwood 130 nm 512 KB L2.

Cuando llegó a frecuencias desde los 2.8 GHz y con un FSB de 800 MHz empezó a ser el líder en prestaciones y los modelos 3.2 y 3.4 gozaron de gran fama y un excelente rendimiento.

En 2004 llegó Prescott en 90 nm (1 MB L2) con un pipeline absurdamente dilatado a más de 30 atapas (!!).

Fue un rediseño absoluto de Netburst, poco tenía que ver con Willamette o Northwood. Incluso se rumoreó el nombre de Pentium 5, posteriormente introdujo el proceso de 64 bit. Sus prestaciones finales fueron desalentadoras, de hecho era algo más lento clock for clock que Northwood… Además su disipación térmica ponía en aprietos al mejor sistema de refrigeración de la época.

die_90nm_1m[1] Intel Pentium 4 Prescott 90 nm 1 MB L2.

Todavía recuerdo cuando probé los primeros engineering samples de Prescott a 2.8 GHz sustituyendo un excelente Nortwood HT a 3.2 GHz obteniendo 20ºC más de temperatura y un rendimiento muy inferior… La cuerpo del disipador daba miedo…

Prescott se diseño para frecuencias máximas sobre los 5 GHz, pero problemas de diseño (excesivo leakage del proceso de 90 nm en Prescott) y su incontenible consumo eléctrico y consiguiente disipación térmica lo hicieron inviable. Intel incluso tuvo en sus roadmap versiones a 4 y 4.2 GHz que más tarde canceló.

En 2005 Intel tenía previsto el lanzamiento de Tejas (con un pipeline previsto sobre 50!!!!!! etapas). Los primeros samples fueron una gran decepción, consumos excesivos rayando lo imposible en plataformas de consumo y un rendimiento decepcionante. Fue sabiamente cancelado.

En Intel se cortaron algunas cabezas en los staff directivos y se replanteó totalmente el diseño de sus futuros microprocesadores. El management dio paso al diseño del equipo en Haifa (Israel), los padres del excelentísimo procesador Pentium M Banias de 90 nm derivado del núcleo Pentium III.

El despertar de un gigante, Intel Conroe (Core 2 Duo / Quad) 65 nm

Tras todos estos hechos, AMD equivocadamente pensó o más bien confió en que Intel continuaría con la evolución de Netburst eternamente.

Se durmieron en los laureles del K8, dedicaron muchos recursos al proyecto K9, un procesador con un pipeline extra largo tipo Netburst y con SMT al estilo HyperThreading que fue tardíamente aunque acertadamente cancelado.

merom_die_image Intel Core 2 Duo Conroe 65 nm, dual core 4 MB L2.

Intel sacó al mercado en 2006 Conroe, el famoso Core 2, dando un vuelco radical mercado y consiguiendo un dominio absoluto en todos los segmentos desde portátiles a sobremesa de consumo y servidores dual core.

En el terreno multisocket AMD mantenía su liderato absoluto en 4 sockets gracias a su más avanzada arquitectura con enlaces HT (HyperTransport) frente al arcaico FSB de Intel. En los servidores de dos socket había una encarnizada pelea, Intel contaba con mejores núcleos de ejecución pero AMD ganaba en ancho de banda.

El éxito de Conroe reside en su poderoso núcleo de ejecución de enteros de cuatro pipelines y sus bien dimensionadas FPU de 128 bit, además de su excelente arquitectura de cachés inclusivas y de gran tamaño (2 MB de L2 por core en 65 nm y 3 MB de L2 por core en 45 nm).

La decepción del AMD Barcelona 65 nm

AMD llegó tarde al mercado con los procesadores Opteron quad core y Phenom basados en cores Barcelona de 65 nm.

Con una exigua caché L3 compartida de solo 2 MB para cuatro núcleos (512 KB por core). Una caché L3 de diseño totalmente asíncrono con los núcleos que imponía altas latencias de acceso cifradas en unos 48 ciclos a frecuencias nominales. Además y debido a su pequeño tamaño, unas bajas tasas de aciertos L3 (cache hits) y grandes cargas en el dual channel DDR2 lo que causaba contención en acceso.

phenom AMD Barcelona 65 nm, quad core nativo con 2 MB de L3 compartida.

Intel hacía meses que disponía del doble dual core Clovertown de 65 nm con dos L2 de 4 MB que aumentó más si cabe el diferencial de prestaciones con AMD, además de ser más barato de fabricar dada su poca superficie y avanzada tecnología de fabricación.

Estaba formado por dos dies Core 2 Duo en un chip:

intel-core-2-quad-q6600-cpus1[2] El Intel Core 2 Quad, un MCM de dos Core 2 Duo. 4 + 4 MB de L2 en 65 nm.

Rápidamente Intel sacó al mercado la evolución de 45 nm de Core 2, los núcleos Penryn con 6 MB de L2 compartida. Contaban con numerosas mejoras que lo hacían sobre un 16% más rápido que su antecesor de 65 nm y recuerdo como todos mis mejores clientes sustituyeron sus CPUs Conroe por Penryn en pocos meses debido a su gran mejora en algoritmos conteniendo divisiones.

Penryn_58 Intel Core 2 Duo Penryn 45 nm, dual core con 6 MB L2 compartida.

Barcelona fue un débil rival para tales procesadores y esto se agravó cuando Intel presento el sustituto de Yorkfield, Harpertown, dotado de cuatro núcleos Penryn y 2 L2 de 6MB y proceso de 45 nm.

penryn_quadcore Los Core 2 quad de la serie 9000, fabricados en 45 nm.

Nivelando el terreno, AMD Shanghai

Por fin AMD introdujo en el mercado, esta vez sí, un procesador competente con la oferta de su rival Intel: el core Shanghai de 45 nm. Lo he analizado en multitud de artículos y desde todos los ángulos en LowLevelHardware (ordenados por fecha):

Y en ProfessionalSAT:

Ha poblado las series Opteron y Phenom II dotado de una L3 de 6 MB y 48 vías desplazando al mediocre chip Barcelona. Con esta evolución logró al fin doblegar a los invencibles hasta el momento Core 2 Quad Penryn. Actualmente se comercializa en versiones hasta los 3.4 GHz (Phenom II X4 965 BE) y este modelo en particular supera a cualquier Core 2 Quad en la media de benchmarks.

K10%20processor%2045nm%20architec%201[1]AMD Shanghai 45 nm, quad core nativo con 6 MB de L3 compartida.

Intel Tick–Tock. Microarquitectura Nehalem con SMT

El pasado año 2008 (en Q4) Intel dio a luz a su última microarquitectura de altas prestaciones: Nehalem. Salió a la venta con el nombre comercial de Core i7.

Este procesador lo he tratado extensamente (quizás me quedo corto…) en varios de mis blogs:

En LowLevelHardware he detallado su microarquitectura:

die Intel Nehalem 45 nm, quad core con SMT (8 threads) y 8 MB L3 compartida.

Su gran  baza es reside en el SMT, el Turbo Mode  y un brutal y desorbitado ancho de banda dado por el triple channel DDR3 además de su excelente arquitectura de caché de tres niveles con unos 38 ciclos de latencia L3 y unas ultrarrápidas L2 de 10 ciclos y 256 KB.

Con Nehalem, Intel ha logrado el liderato destacado en prestaciones en todos los terrenos: enteros, coma flotante, single thread, multithreading, ancho de banda, latencia… y AMD está pasando tiempos difíciles compitiendo con su única arma, el precio… y la inteligencia de su líder.

Un Phenom II X4 965 BE (el tope de gama) compite actualmente con el procesador benjamín de la gama Nehalem el Lynnfield Core i5 750 sin SMT (HyperThreading) y con dual channel DDR3 en prestaciones y precio.

die-angle-620[1] Intel Lynnfield 45 nm. Integra el controlador PCIe 2.0 en el die (a la izquierda).

Por encima de ellos se sitúan los Core i7 Lynnfield de socket LGA1156 con SMT, Turbo Mode agresivo y dual DDR3 Core i7 860 y 870. Este procesador, al integrar el bus PCIe en el die prescinde de los enlaces QPI y del chipset X58.

Lynnfield45nmIntel Lynnfield. 45 nm, 8 MB L3, SMT y PCIe integrado.

La superior gama i7 LGA1366 con SMT y triple DDR3 (asociado por un QPI de 4.8 a 6.4 GT/s con el chipset X58) no cuenta a día de hoy con un procesador equivalente en velocidad en AMD aunque tampoco en precio.

Servidores AMD e Intel en 2009

El año 2009 ha sido excelente para Intel, ha podido desplegar su arquitectura Nehalem hasta los dos sockets. En este terreno AMD no tiene una alternativa en paridad aunque se acerca bastante con su diseño Istambul, un hexa core nativo con 6 MB de L3 y fabricado en 45 nm:

Istambul45nmAMD Istambul. 6 núcleos y 6 MB L3 en 45 nm.

En el espacio 4 socket AMD es imbatible ya que Intel mantiene sus mastodónticos e ineficientes chips Dunnington hexa core basado en núcleos tres Penryn dual core con 3 MB de L2 shared por pareja y 6 MB de L3 compartida con una latencia superior a los 100 ciclos!!!

Dunnington_Xeon Intel Xeon Dunnington. 6 cores 3 L2 de 3 MB y 16 MB de L3 shared en 45 nm.

AMD e Intel en 2010

En 2010 AMD seguirá refinando el diseño de Shanghai. Hace un mes aproximadamente lanzó el nuevo stepping C3 que reduce el consumo y disipación térmica así como permite mayores overclocks en cores y uncore (caché L3, North Bridge y controladoras de memoria).

Introducirá un verdadero estado C1E lo que reducirá el consumo. Probablemente veremos versiones a 3.6 GHz del Phenom II X4 BE y como novedad la introducción del hexa core Istambul de 45 nm y 6 MB de L3 procedente de las actuales gamas de servidores Opteron de la serie (quizás Phenom II X6??) en el mercado de sobremesa llamado Thuban.

Westmere_wafer Wafer de procesadores Intel Westmere de 32 nm.

Intel tiene previsto la migración a 32 nm con los núcleos Westmere, la evolución de Nehalem. En el terreno más prestacional veremos los Westmere de 6 cores con SMT que elevará a 12 el número de threads por procesador. Contarán con 12 MB de L3 y varias mejoras micro arquitecturales.

westmereEl futuro Westmere dual core 32nm, 4 MB de L3 compartida y 256 KB L2 por core.

En principio Intel no tiene planes de un quad core de 32 nm basado en núcleos Westmere, para ello habrá que esperar a Sandy Bridge en 2011. Lo que sí habrá es un hexacore nativo llamado Gulftown:

gulftown32nm_6core Gulftown 6 cores, 12 MB L3 y 12 threads en 32 nm.

La buena noticia para algunos de mis clientes es que será compatible con la mayoría de actuales placas base con chipset X58 y socket LGA 1366.

AMD e Intel en 2011

Intel introducirá Sandy Bridge, su nueva microarquitectura tras Nehalem. Incluirá también SMT y la interconexión del procesador con el Uncore y los buses y cachés L3 compartidas será a través de un anchísimo ring bus que proporcionará latencias menores que en los actuales diseños.

003Sandy Bridge 32 nm, la próxima evolución microarquitectural de Intel.

En el siguiente artículo haré una educada estimación de la siguiente microarquitectura de AMD, el revolucionario core Bulldozer de 32 nm que verá la luz en 2011.

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

Phenom II X2, Athlon II X2 y el futuro Athlon II X4. Nuevos cores de AMD – LowLevelHardware

Advanced Micro Devices está ejecutando su roadmap admirablemente, de una manera que pocos esperaban teniendo en cuenta el gran éxito y presión ejercida por su rival y mayor fabricante mundial, Intel Corp.

AthlonIIAthlon II X2: el dual core nativo de 45 nm, codename: Regor.

En las últimas semanas AMD ha presentado tres nuevos diseños:

  • Un hexacore nativo con L3 de 6 MB: AMD Istambul
  • Un dual core nativo con dos L2 de 1 MB: AMD Regor o Athlon II X2
  • Un quad core nativo con cuatro L2 de 512 MB y sin L3: Athlon II X4

En un artículo anterior esbozaba las nuevas estrategias de futuro y la visión más técnica y práctica del nuevo CEO de AMD, Dirk Meyer, todo un profesional del diseño de procesadores.

PhenomII_NO_L3 Athlon II X4: Quad core nativo sin caché L3 y con un solo bus HT bidireccional, codename Propus.

Hablando de un futuro próximo, en breve tendremos en el mercado los nuevos Athlon II X4, de los que os presento arriba fotografía del die y donde observamos que carece de caché L3 y solo cuenta con un link HT. Además las cachés L2 son de 512KB como en Shanghai.

Y en presente… AMD, ya de lleno en el nodo de 45 nm, nos presenta hoy su nueva gama de procesadores dual core para el segmento medio del mercado, compuesta por dos series.

AMD core Regor - Athlon II X2 serie 200

Con este procesador AMD quiere sustituir todos los procesadores basados en los antiguos núcleos Athlon64 X2 Brisbane de 65 nm todavía en el mercado migrando toda la gama X2 a 45 nm y núcleos de arquitectura K10.5.

Sus prestaciones son claramente superiores a los anteriores núcleos K8 y K10 (los primeros Phenom Barcelona de 65 nm) y cuentan con una arquitectura de procesamiento actualizada e idéntica a los Phenom II X4 de 45 nm basados en el núcleo Shanghai.

Analizando el díe observamos algunas características notables:

  • Es un diseño dual core nativo, compacto y muy optimizado en superficie.
  • Se ha reducido notablemente el tamaño del Uncore respecto a Shanghai al no necesitar toda la lógica de gestión de la caché L3.
  • Cuenta con dos L2 discretas e independientes aumentadas a 1 MB y con 16 vías de asociatividad como en los Phenom, Phenom II y en los antiguos Athlon64.
  • Hay dos controladoras de DDR2/DDR3, como en Shanghai (Phenom II).
  • No hay caché L3 para optimizar su tamaño.
  • El número de enlaces HyperTransport se reduce a uno a una frecuencia de 2 GHz.
  • La superficie estimada ronda los 117 mm2 para 234M de transistores, un resultado muy satisfactorio.
  • Las frecuencias iniciales rondan los 3 GHz.

AthlonII_croquis Esquema del procesador Athlon II.

Su disipación térmica se reduce a un TDP máximo de 65W, siendo (ahora sí) una excelente opción para sistemas destinados a reproducción BluRay o DVD de salón.

En pruebas reales ha dado sobre unos 30 – 35 W en carga máxima (consumo aislado del procesador) y en reposo memos de 10W. Realmente podemos decir que es un procesador fácil de refrigerar.

AMD core Callisto - Phenom II X2 serie 500

El procesador Phenom II X2 no es un dual core nativo y por ello su disipación térmica es más elevada que en el caso del nuevo Athlon II, aunque no por ello es excesiva. En medidas reales ronda los 50 W en carga 100 % de los dos núcleos.

Shanghai Die de Shanghai quadcore de 45 nm y 6 MB de caché L3.

El Phenom II X2, igual que el Phenom II X3, comparten die con el “completo” Phenom II X4 quadcore. De hecho todos ellos son el mismo procesador, lo que ocurre es que AMD desactiva respectivamente dos o uno de los núcleos.

Esta inactivación de cores puede responder a dos razones:

  • Alguno de los núcleos no es funcional.
  • Por razones económicas o de stock (exceso de quads o falta de X2s) necesita producir mayor número de CPUs dual core.

El lado positivo es que el AMD Phenom II X2 goza de una caché L3 completa de 6 MB para tan solo dos núcleos (3 MB de L3 por procesador) lo que aumenta sus prestaciones de media sobre un 5 a 8 % sobre el Athlon II X2 clock for clock. En pico llega a ser hasta un 18 % más rápido.

Por contra, al ser un chip de 751M de transistores, su consumo y disipación térmica no pueden ser tan contenidos como en el caso del Athlon II X2 y se acerca incluso a sus parientes quadcore con un TDP de 80W. Siendo para AMD el TDP la potencia máxima teórica consumida por el procesador en carga máxima y en condiciones críticas de temperatura y alimentación eléctrica.

El tesoro oculto en Phenom II X2

Al ser un quadcore nativo con dos núcleos deshabilitados es posible, en ocasiones, volver a activar estos dos procesadores. Para ello necesitamos una placa base que tenga en BIOS la opción del ACC (Advanced Clock Calibration).

Al activar esta opción nos podemos encontrar con dos situaciones:

  • Tenemos un flamante quadcore con 6 MB de L3 perfectamente funcional a precio de dual core.
  • Alguno de los núcleos activados es defectuoso y obtendremos errores, cuelgues o incluso fallos en el arranque.

Ciertamente no hay otro modo de averiguarlo que probar… Sin duda que ahora que salen al mercado hay más probabilidades de que sean quad cores funcionales y conforme avance el proceso de fabricación iremos encontrando más CPUs con núcleos defectuosos.

Phenom II X4 @ 3.6 GHz. Análisis microarquitectural en RMMA – LowLevelHardware

En este artículo analizo en profundidad el subsistema de memoria de un AMD Phenom II X4 940 fuera de especificación con el reconocido software RMMA, RightMark Memory Analyzer.

Image1

Configuración del sistema:

  • Uncore (literalmente “lo que no son los núcleos”) a 2.4 GHz
  • Placa Base ASUS AM2+/AM3 M4A79-Deluxe AMD 790FX – AMD 750
  • 4 GB en dos módulos Kingston HyperX DDR2 1066 5-5-5-15 2T 2.2V

Debo destacar que en este procesador he llevado a cabo un incremento de frecuencia diferenciado en los núcleos de ejecución y en el uncore:

  • De 3 a 3.6 GHz para los cuatro núcleos (un +20%)
  • De 1.8 a 2.4 GHz para el uncore que incluye la caché L3 de 6 MB y las controladoras de memoria DDR2 (un +33%)

Con lo que las prestaciones computacionales puras mejorarán de un 20 % a un 33 % sobre el rendimiento nominal en función del tipo de cálculo. Recordad que todos los análisis son en modo single-threaded, es decir, solo actúa uno de los cuatro núcleos. Para análisis multi-threaded ver el artículo anterior realizado con RMMT.

RMMA es un software diseñado para investigar cualquier pequeña peculiaridad del subsistema de memoria y las unidades de ejecución de cualquier procesador. Pueden incluso descubrirse detalles “no públicos”.

Latencia de D-cache y memoria:

rmma_20090227_143034_0281

Phenom II X4 @ 3.6 GHz / 2.4 GHz. Latencia D-Caché en RMMA

Podemos ver delimitadas con claridad cuatro zonas:

Primera zona: desde los 4 KB a los 64 KB la zona de caché L1D con 3 ciclos de latencia.

Segunda zona: desde los 64 KB hasta los 640 KB (64 + 512 KB) la zona de caché L2.

  1. Con una latencia mínima de unos 9.2 ciclos en acceso forward o backward (actuando eficientemente el hardware prefetch).
  2. En acceso pseudo-random obtenemos unos 12.2 ciclos, caso real en software bien programado.
  3. Y por último, en acceso púramente aleatorio (Random access) llegamos hasta los 15 ciclos.

Tercera zona: de los 640 KB a los 6720 KB (64 + 512 + 6144 KB) la zona de la caché L3 de 6 MB.

  1. El hardware prefetch se muestra altamente efectivo para accesos secuenciales forward o backward dando una latencia de solo 21 ciclos.
  2. En acceso pseudo aleatorio obtenemos unos 34.8 ciclos, caso real en software bien programado (programas científicos, algunos juegos…)
  3. Para el acceso aleatorio obtenemos unos 52 ciclos hasta que llegamos a los 2048 KB y desbordamos el D-TLB y aumenta progresivamente pasando por los 70 ciclos para accesos con bloques de 4 MB hasta los 78 ciclos para 6 MB.

Cuarta zona: de los 6720 KB en adelante la zona de memoria principal.

  1. El hardware prefetch se muestra extremadamente efectivo para accesos secuenciales forward o backward dando una latencia de solo 41 ciclos.
  2. En acceso pseudo-random (pseudo aleatorio) obtenemos unos 93 ciclos.
  3. Para el acceso puramente aleatorio, siendo un caso absolutamente extremo (worst case scenario) obtenemos unos 205 ciclos para un acceso respectivo de 8 MB, 230 para 16 MB y unos 236 para 32 MB.

Ya visualmente, para el familiarizado con estos términos, vemos que en el Phenom II X4 se ha implantado un muy eficiente mecanismo de hardware prefetch. Además, actúa no solo en memoria principal sino en las L2 privadas de 512 KB y lo más importante de cara a ocultar su latencia en la caché L3 compartida de 6 MB.

En el terreno de la caché L3, en estos procesadores se trata de un diseño compartido y su reloj asíncrono a los núcleos (en este caso con una relación núcleo : L3 de 3 : 2 para unas frecuencias respectivas de 3.6 y 2.4 GHz) lo que le otorga unas características peculiares.

Empíricamente, y por los tests realizados en éste y el anterior artículo, podemos aventurar la organización de sus buses L2 - L3. Muy probablemente son buses a cada core de 64 bit a frecuencia del uncore (2.4 GHz en este sistema), y con penalización en latencia por resincronización, y por ello limitan el ancho de banda de memoria por núcleo a un valor inferior al dual channel DDR3 1066.

Bus de datos caché L1 – caché L2

rmma_20090227_145303_0171

Bus L1 – L2 de 128 bits en AMD Phenom II X4.

El intercambio efectivo de datos entre la L1 y la L2 alcanza los 7.98 – 7.99 bytes / ciclo en lectura y los 4.68 – 4.73 bytes / ciclo en escritura.

Recordemos que la L1, la L2 y su bus de comunicaciones funcionan todos ellos a la frecuencia de los cores, en este caso 3.6 GHz.

Bus de datos caché L2 – caché L3 unificada

rmma_20090227_145643_0234

Bus L2 – L3 de 64 bits @ frecuencia del uncore (2.4 GHz) en AMD Phenom II X4.

La caché L2, al estar dentro de cada núcleo de ejecución, opera a la frecuencia de éste, a 3.6 GHz. Por el contrario la masiva caché L3 de 6 MB unificada se encuentra en el uncore y por ello es asíncrona a los núcleos y en este caso su frecuencia es de 2.4 GHz.

Como vemos en la gráfica, el bus L2 – L3, logra transmitir de 3.24 a 3.44 bytes / ciclo o unos 25.92 – 27.52 bits / ciclo contados a 3.6 GHz por un bus de 64 bit a cada uno de los cores.

En cambio si referimos estos datos al reloj del uncore, se convierten en 4.87 - 5.18 bytes / ciclo o 38.96 – 41.44 bits / ciclo.

Estos datos son claramente inferiores a los obtenidos en los procesadores Intel Core i7 que cuentan con un bus L2 – L3 más eficiente y con un ancho doblado a 128 bits.

Extraído de Core i7 vs Phenom en dual channel. Ancho de banda de cachés y memoria. 19/11/2008

“ La caché L3 de Phenom es claramente el punto débil de la arquitectura K10. AMD ha dotado de un bus de solo 64 bit a su L3 y esto limita gravemente sus prestaciones, siendo su transferencia del bus L2-L3 menos de la mitad que la de su nuevo rival, Core i7.

phenom_rmma_20080512_214024_0171

Como vemos en Phenom la caché L3 apenas mejora las prestaciones de la memoria principal y esto es además agravado por su pequeño tamaño (2 MB) mostrándose únicamente efectiva en escritura. Digamos que en el AMD Phenom la L3 sirve para reducir el acceso a memoria o la carga de trabajo sobre las controladoras de memoria.

Corei7_rmma_20081120_110524_0921_400

Como vemos la L3 de core i7 es extremadamente útil para mejorar la velocidad respecto al acceso a memoria principal y además cuenta con un tamaño considerable, 8 MB.

Aún así tengo ciertas esperanzas depositadas en los nuevos Phenom II basados en el nuevo Core Shanghai de 45 nm con 6 MB de L3 del que he hablado extensamente y que tendremos oportunidad de probar en Enero de 2009.”

Panorámica Caché L2 – Caché L3 – memoria principal:

rmma_20090227_145808_0078

Panorámica L2 – L3 – RAM en Phenom II X4 @ 3.6 / uncore 2.4 GHz.

Asociatividad caché L3

rmma_20090227_143417_0937

La teoría: caché L3 de 48 vías y 6 MB.

La asociatividad “total” debería ser de 2 + 16 + 48 = 66 vías, debido al diseño exclusivo de la arquitectura de cachés en los procesadores AMD.

De todos modos, al ser un procesador con la L3 no síncrona con los núcleos y por la peculiar forma de trabajar de la L3 (según AMD no es estrictamente exclusiva) que en ciertos casos puede duplicar datos de niveles inferiores es difícil realizar un análisis efectivo.

Latencia real efectiva caché L2

rmma_20090227_144308_0218

Latencia efectiva L2 en Phenom II X4.

En el punto de cruce de las cuatro gráficas obtenemos los 12 ciclos de acceso, la verdadera latencia L2.

Latencia real efectiva caché L3

rmma_20090227_144930_0750

Latencia efectiva L3 en Phenom II X4 3.6 GHz con uncore a 2.4 GHz.

El punto de cruce se encuentra en los 53 – 54 ciclos para esta configuración (núcleos a 3.6 GHz y L3 a 2.4 GHz).

Ancho de banda de memoria efectivo

Con un dual channel DDR2 1066 5-5-5-18 2T obtenemos un máximo teórico de 17 GB/s, veamos el ancho de banda efectivo en acceso de un solo núcleo (single threaded).

rmma_20090227_145340_0343

Ancho de banda single threaded Phenom II X4.

Limitado por un bus de solo 64 bit y además una frecuencia de ese bus (o al menos parte de él) a 2.4 GHz el ancho de banda efectivo es de unos 8.5 GB/s. Más o menos la mitad del dato teórico.

Simplemente AMD no ha creído necesario dotar a cada core de mayor ancho de banda y yo soy de la misma opinión en la actualidad.

En cualquier caso, si habéis echado un vistazo al artículo anterior en el que analizo el subsistema de memoria de este mismo equipo en modo multithreaded, es decir, en acceso concurrente de los cuatro núcleos, podemos observar valores mucho más cercanos al pico teórico de 17 GB/s (concretamente 15 GB/s efectivos):

32768x4_131072KB

Tamaño 131072 KB. Lectura de 15024 MB/s en memoria multithreaded x4.

Aquí doy por finalizado el análisis de este sistema, han sido con este ya cuatro artículos, creo que me doy por satisfecho...

AMD Magny Cours 12 cores. AMD vuelve a la pelea. Actualizado - LowLevelHardware

Advanced Micro Devices (AMD) se encuentra en una difícil situación: competir en solitario contra un rival de un tamaño muy superior y con unos recursos financieros, humanos y tecnológicos excepcionales: Intel.

48cores48 cores en acción. Cuatro chips Magny Cours de 12 núcleos. Fuente: AMD.unprocessed

AMD ya ha demostrado públicamente los procesadores Magny Cours en servidores de cuatro sockets para un total de 48 núcleos de procesamiento, estarán disponibles en el mercado a principios de 2010 como vemos en el siguiente roadmap:

MagnyCours_RoadmapAMD Server Roadmap 2009 – 2010. Magny Cours en Q1 2010

magny_cours_bgAMD Magny Cours 12 cores. El nuevo Opteron serie 6000.

Dirk Meyer al mando de AMD está llevando a cabo una estrategia muy eficiente dados los recursos con los que cuenta. Está claro que AMD no puede de la noche a la mañana dar a luz un núcleo de ejecución tan elaborado y potente como los integrados en la arquitectura Nehalem de Intel.

Lo que sí puede hacer es aprovechar una de sus ventajas competitivas: su pequeño tamaño por core.

La ventaja de AMD: su pequeño core

Los núcleos de ejecución de AMD en los Phenom o Phenom II tienen una superficie netamente inferior y un número de transistores menor que los de su rival. AMD puede entonces jugar una carta:

Integrar más procesadores que su rival en sus nuevos procesadores para competir en mayor igualdad. Los núcleos de Shanghai rondan los 15 mm2 frente a los 24 mm2 de los cores de Nehalem con SMT (HyperThreading).

magny_cours_die AMD Magny Cours 12 cores. Un MCM compuesto de dos dies Istambul.

Magny Cours será un chip MCM compuesto por dos procesadores Istambul de seis núcleos (cada uno en un die separado), derivados de los actuales Shanghai de cuatro núcleos.

Dado que cada uno de los dos dies superará probablemente los 300 mm2 irá montado sobre el enorme socket G34, del que ya hable en un artículo anterior.

[g34[3].png]El socket G34 de AMD.

magny-cours_chipAMD Magny Cours, nótese el encapsulado alargado para encajar en el socket G34.

Cada die Istambul Integrará cuatro enlaces HyperTransport utilizando uno de ellos para comunicación entre los dies (entre los dos procesadores Istambul).

En el terreno de las controladoras de memoria nos encontramos con un quad channel DDR3 1600MHz para un ancho de banda sin precedentes hasta la fecha de 51.2 GB/s. Cada procesador Istambul dispondrá de dos controladoras DDR3.

Comparación dies Shanghai – Istambul

Istambul añade dos núcleos al ya conocido diseño quad core de 45 nm de Shanghai del que he hablado y analizado en profundidad.

Istambul_Shanghai

AMD Istambul (izquierda) frente a Shanghai (derecha) a escala.

Los ingenieros de AMD han tenido un duro trabajo para optimizar el diseño de Shanghai para introducir dos núcleos extra. Han reposicionado la caché L3 de 6 MB más a lo ancho del die, compactando ligeramente su área, dejando mayor espacio en la vertical para los dos cores de más (los superiores).

Los cuatro núcleos centrales se mantienen invariados, así como la disposición de las dos controladoras de memoria (en la parte superior) aunque algo más compactas.

Se observa también que ha crecido en anchura el tamaño del uncore para poder así reducir su dimensión vertical.

Como vemos su superficie total se incrementa moderadamente, sobre los 300 mm2, aunque superará a la de Intel Nehalem quad core (unos 265 mm2).

Actualizado, imágenes de alta resolución del die de Istambul:

Fotografías cortesía de AMD.unprocessed en Flickr.

3464778308_9956d2736b_o[1]Pulsa aquí para ampliar.

3463961733_3078324a98_o[1] Pulsa aquí para ampliar.

En resumen, un as en la manga de un AMD que está siguiendo la mejor estrategia de la mano de Dirk Meyer, un dirigente eminentemente técnico con grandes conocimientos del diseño de procesadores, que fue jefe de diseño del exitoso procesador Athlon, al frente de la segunda compañía del mundo x86, AMD.

Phenom II 3.6 GHz / 2.4 GHz uncore. Análisis en RMMA. Ampliado - LowLevelHardware

Ya en dos artículos, uno de ProfessionalSAT y el anterior de LowLevelHardware he analizado varios aspectos de este sistema. Aquí me centraré en las prestaciones del subsistema de memoria dando las cifras efectivos del ancho de banda para varios tamaños de acceso, haciendo un mapa detallado de la arquitectura de caché y memoria del AMD Phenom II.

Image1

RMMT RightMark Memory Analyzer

RMMT es uno de los componentes del avanzado paquete de análisis de microarquitectura RMMA de RightMark.org. Mide el ancho de banda de memoria para diferentes tamaños de acceso en lectura o escritura y es un software totalmente multithread.

Además soporta modos de acceso en lectura con hardware Prefetch y Non Temporal Store para escrituras saltando todos los niveles de caché.

Los valores dados por RMMA pueden considerarse valores reales, es decir, los que verá nuestro software, no como los de otros paquetes de software diseñados para dar un pico máximo que nunca se alcanza con software real (SiSoft Sandra …).

Análisis Phenom II fuera de especificación en RMMA

Configuración del sistema:

  • Procesador AMD Phenom II X4 940 Black Edition a 3.6 / 2.4 GHz
  • Placa Base ASUS M4A79-DeLuxe AMD 790FX – AMD 750
  • 4 GB en dos módulos Kingston HyperX DDR2 1066 5-5-5-15 2T 2.2V

En este artículo se detalla la configuración de BIOS del sistema con los núcleos a 3.6 GHz (3 GHz nominal) y el uncore (caché L3 y controladoras de memoria) a 2.4 GHz (1.8 GHz nominal).

Tabla_AnchoBanda

Ancho de banda del AMD Phenom II para diferentes tamaños de acceso:

  • Zona L1:                              0    -   256 KB
  • Zona L1 + L2:                      256  –  2304 KB (256 + 2048)
  • Zona L1 + L2 + L3:              2304 – 8448 KB (256 + 2048 + 6144)
  • Zona memoria principal:     8448 KB hasta el límite de la memoria física.

image

Phenom 3600 MHz / 2400 MHz uncore / 2 * 2 GB DDR2 1066 5-5-5-18 2T

Como vemos se delimitan perfectamente los diferentes niveles de caché. Todos los datos son en acceso concurrente de los cuatro núcleos, multithreaded x4.

Accesos en lectura dentro de cachés L1:

La caché L1 de los cuatro núcleos que componen un Phenom II es de 64 KB para datos y 64 KB para instrucciones. En este caso solo se testea la L1d y el tamaño total es de 64 x 4 = 256 KB.

16x4

Tamaño 64 KB. Lectura de 408274 MB/s en L1 multithreaded x4.

408274 MB/s equivalen a 399 GB/s. Cada L1 da unos 102000 MB/s (unos 100 GB/s) que una frecuencia de 3.6 GHz son unos 238 bits/ciclo efectivos o casi 30 bytes por ciclo efectivos (!!). Un valor impresionante.

Los procesadores Phenom y Phenom II son capaces de leer de L1 32 bytes por ciclo por núcleo, el valor más alto en la actualidad, duplicando a Core2 o Core i7, lo que queda demostrado por el dato anterior. Están dotados de dos puertos de lectura de 128 bits.

Al superar los 256 KB totales (64 KB x 4) entraremos en el terreno de la L2.

Accesos en lectura dentro de cachés L2:

La caché L2 de un Phenom II se compone de cuatro L2 unificadas discretas por núcleo (para datos e instrucciones) de 512 KB cada una para un total por chip de 2048 KB.

Los procesadores AMD tiene una arquitectura de cachés exclusiva, es decir, no duplican los contenidos de un nivel en el siguiente. Lo que hace que el tamaño efectivo total de caché sea igual al de la suma de los tamaños cada uno de los niveles.

128x4

Tamaño 512 KB. Lectura de 112676 MB/s en L2 multithreaded x4.

256x4

Tamaño 1024 KB. Lectura de 112807 MB/s en L2 multithreaded x4.

512x4

Tamaño 2048 KB. Lectura de 113061 MB/s en L2 multithreaded x4.

576x4_2304KB

Tamaño 2304 KB. Lectura de 111475 MB/s en L2 multithreaded x4.

111478 MB/s equivalen a 109 GB/s. Cada L2 transfiere unos 28000 MB/s (unos 28 GB/s) que una frecuencia de 3.6 GHz son unos 65 bits/ciclo efectivos o algo más de 8 bytes por ciclo efectivos, un valor no muy brillante, Core2 y Core i7 le superan ampliamente en velocidad de L2.

En los 2304 KB (576 KB x 4 núcleos) se sitúa el límite efectivo del tamaño de la L1 + L2 (64 + 512 KB) y por encima de este valor entramos en la zona de la caché L3.

Estrictamente hablando el papel de las L2 privadas de 512 KB consiste en reducir los accesos a la L3 compartida evitando la saturación de sus buses y proporcionar menor latencia y altas tasas de acierto al núcleo de ejecución.

Accesos en lectura dentro de caché L3:

Nota: Debido a que este sistema está fuera de especificación utiliza multiplicadores relativos de cores y L3 no standard y con ello los valores aquí detallados no son representativos del producto comercial en el tramo de L3 (576 – 8448 KB).

La caché L3 de Phenom II consta de 6144 KB unificados y comunes para los cuatro núcleos con buses de 64 bits, solo hay una L3 para servir a los cuatro procesadores. El tamaño efectivo (debido al diseño de cachés exclusivas) de la zona de L3 es de 6144 + (512 x 4) + (64 x 4) o algo más de 8 MB, 8448 KB.

Al superar este tamaño de bloque en acceso entraremos ya en memoria principal.

768x4_3072KB

Tamaño 3072 KB. Lectura de 43609 MB/s en L3 multithreaded x4.

1024x4_4096KB

Tamaño 4096 KB. Lectura de 44055 MB/s en L3 multithreaded x4.

2048x4_8192KB

Tamaño 7168 KB. Lectura de 44264 MB/s en L3 multithreaded x4.

44264 MB/s equivalen a 43 GB/s. La L3 unificada de 6 MB transfiere unos 44264 MB/s a los núcleos (unos 43 GB/s) o unos 11075 MB/s por núcleo.

Globalmente para todos los cores, a una frecuencia de 2.4 GHz (frecuencia del uncore) 44264 MB/s son unos 19.34 bytes/ciclo efectivos o casi 155 bits por ciclo efectivos. Siendo unos 4.83 bytes/ciclo o casi 39 bits/ciclo por cada núcleo referido a la frecuencia del uncore, en este caso en overclock a 2400 MHz.

En los 8448 KB, como he comentado anteriormente se encuentra el límite efectivo de la L3 para accesos multithreaded x4.

Accesos en lectura en memoria principal:

4096x4_16384KB

Tamaño 16384 KB. Lectura de 15041 MB/s en memoria multithreaded x4.

32768x4_131072KB

Tamaño 131072 KB. Lectura de 15024 MB/s en memoria multithreaded x4.

15024 MB/s (14.67 GB/s) se acerca mucho al límite teórico (17 GB/s) del dual channel DDR2 1066 que he instalado en el sistema, concretamente a un 86%. Un resultado excelente teniendo en cuenta que son medidas en condiciones reales.

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

Carlos Yus Valero – informaticapremium