Mostrando entradas con la etiqueta K10. Mostrar todas las entradas
Mostrando entradas con la etiqueta K10. 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.

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.

domingo, 1 de marzo de 2009

Phenom II X4 940 3.6 GHz: BIOS en detalle. Actualizado - LowLevelHardware

En ProfessionalSAT he tratado este sistema de un modo más superficial, aquí describiré los detalles más interesantes de la configuración BIOS de un AMD Phenom II X4 940 en overclock.

PIC02060

Los parámetros (frecuencias, multiplicadores, voltajes, …) han sido elegidos para un uso continuado sin fallos con cargas del 100 % en cores con total estabilidad y exactitud en los cálculos. Es un sistema pensado para cálculo continuo e ininterrumpido en entorno profesional.

Componentes utilizados:

  • Placa Base ASUS M4A79-DeLuxe AM3. Chipset AMD 790FX – AMD 750
    • Soporta procesadores AM3, AM2+ y AM2 con memoria DDR2 hasta 1066.

PIC02054

  • 4 GB en dos módulos Kingston HyperX DDR2 1066 5-5-5-15 2T 2.2V
  • Procesador AMD Phenom II X4 940 Black Edition

    • Cores con multiplicador 18X para una frecuencia de  3.6 GHz @ 1.425V (+20 %)
    • Uncore a 2.4 GHz (+33%) (incluye la L3 de 6 MB y las dos controladoras de memoria DDR2)
    • Los buses de comunicaciones HyperTransport a 3.6 GHz (sin cambios)

Shanghai_ANÁLISIS

Procesador Phenom II X4 940.

El overclock de los núcleos aumentará las prestaciones linealmente con la frecuencia (sobre el 20%), pero lo más interesante será la influencia del más importante incremento del 33% en la L3 y las IMC.

PIC02050

Sobre el bus HT, en placas monoprocesador se utiliza para comunicación con el PCIEx y el SouthBridge. No se aprecia incremento de prestaciones variando su frecuencia.

PIC01987

Los más de 11 GB/s son producto del incremento de frecuencia IMC/L3 a 2.4 GHz.

Configuración de BIOS:

PIC02046

Vcore 1.425 V, CPU/NB AUTO  y DDR2 2.20V.

Con la L3 y controladoras de memoria a 2.4 MHz aseguramos un ancho de banda más acorde con el dual channel 1066. Recordemos que el AMD Phenom dispone de un exiguo bus de 64 bit entre los núcleos y el uncore.

Con una frecuencia de 2.4 GHz obtenemos un ancho de banda máximo de 19.2 GB/s, suficiente para un dual channel DDR2 1066 (17 GB/s). En la segunda parte de este artículo veremos si esto es suficiente …

PIC02047

Spread Spectrum disabled.

Voltajes CPU VDDA, HT, NB, NB 1.8V y SB siempre en valores mínimos absolutos para mantener la menor disipación térmica y consumo.

PIC02049

Timings de memoria.

Ajustados a 5-5-5-18 2T a 2.20 V. Desafortunadamente, es imposible hacer estable la memoria 1066 MHz a 1T independientemente del voltaje aplicado …

PIC02051

Phenom II X4 940 3600 MHz / 2400 MHz NB clock.

Manteniendo Cool’n’Quiet activado pese al overclock permitimos que el procesador regule automáticamente la frecuencia y el voltaje entre los siguientes estados:

  • Carga máxima: Núcleos 3600 MHz – Uncore 2400 MHz – memoria 1066 MHz – 1.425 V
  • Carga mínima:  Núcleos  800 MHz – Uncore 2400 MHz – memoria 1066 MHz – 1.000 V

De este modo, cuando el sistema está en reposo o con cargas de trabajo bajas, las temperaturas rondan los 25 - 28 ºC en los núcleos y en carga máxima se acerca a los 60 ºC.

En el siguiente artículo un análisis exhaustivo del subsistema de memoria incluyendo las cachés en RMMA y RMMT.

Etiquetas de Technorati: ,,,,

sábado, 10 de enero de 2009

El retorno de AMD: Phenom II. Actualizado - LowLevelHardware

AMD por fín comercializa los nuevos Phenom II, unos procesadores basados en el núcleo Shanghai de 45 nm, siendo el primer diseño de AMD en este nodo al que llega un año por detrás de Intel. Con él AMD retorna a la competición en prestaciones con su eterno rival Intel emparejándose a los Penryn quadcore Q9400 - Q9450 - Q9550.

AMD ha logrado reducir la superficie de Shanghai a 258 mm2 desde los 285 mm2 de Barcelona haciéndolo un procesador más barato de fabricar siendo similar a Core i7 (Nehalem) con sus 263 mm2.

Shanghai

Wafer de dies AMD Shanghai de 45nm.

Ya hace un tiempo indiqué las prestaciones esperadas y las nuevas características que hacían de Phenom II un procesador clave para AMD:

" Un AMD Phenom II 940BE a 3 GHz tendrá prestaciones similares a un Phenom actual a unos 3.5 - 3.6 GHz. En Fritz Chess Benchmark espero índices sobre los  8500 - 9000 puntos. Es decir, sobre la velocidad de un C2Q 9450 o 9550, lo cual para AMD es todo un salto en prestaciones (un Phenom 9950BE obtiene unos 6100 puntos). "

Con Phenom II, AMD ha dejado atrás el fatídico nodo de 65 nm. Todos los diseños de AMD en este nodo han sido un fracaso relativo ... Recordemos el core Brisbane A64 X2 o el propio Barcelona quadcore ...

Shanghai2

Perspectiva del die Shanghai.

Ahora que se conocen con más detalles los refinamientos de Shanghai sobre Barcelona los comentaré más en mayor profundidad:

  • La caché L3 compartida aumenta hasta los 6 MB desde los exiguos 2MB de Barcelona.
  • Aumento de la asociatividad a 48 vías (desde 32 en Barcelona).
  • Proceso de fabricación de 45 nm con  litografía de inmersión lo que proporciona mayor potencial de reloj, menos disipación térmica y menor consumo respecto al anterior proceso de 65 nm de Barcelona.
  • Según AMD la L3 de Shanghai es 2 ciclos más rápida en acceso que la de Barcelona (Phenom).
  • Cuando un núcleo entra en estado de ahorro energético los contenidos de las cachés L1 y L2 se mueven a la L3 compartida permitiendo una detención total del reloj (clock gating).
  • Por fín AMD implanta predicción de saltos indirecta.
  • Se dobla el ancho de banda de probe (chequeo datos/instrucciones en cachés L1 - L2).
  • Mayores buffers load y store en las controladoras de memoria.
  • Mayores buffers de coma flotante.
  • Reducción del tiempo MAB (missed buffer).
  • Mejora del pipelining de prefijos de instrucciones LOCK.
  • Optimización del movimiento entre registros de coma flotante.

44701A_Wafer_2

Un primer plano de Shanghai en el que destaca su L3 de 6 MB.

La caché L3 de Shanghai

Tamaño:

El aumento de la L3 a 6 MB es el rasgo fundamental de la transición Barcelona 65 nm a Shanghai 45 nm. Barcelona era un procesador claramente falto de caché L3, 2 MB para 4 núcleos es claramente insuficiente y realizando profiling podemos comprobar que los 6 MB de Shanghai mejoran mucho las cosas pero todavía queda terreno a la mejora.

Un tamaño doble en una caché reduce los fallos de caché (caché miss) en un factor 1.4 (raiz cuadrada de 2), eliminando así costosos accesos al nivel siguiente de caché o si es el LLC (last level cache), en este caso L3, lentísimos accesos a memoria (del orden del 150 - 200+ ciclos).

Asociatividad:

La asociatividad de 48 vías es sorprendente. Intel utiliza una L3 de 8 MB y asociatividad 16 en Core i7. A mayor valor mejor tasa de aciertos debido al soporte de cargas de trabajo con menor localidad espacial en memoria.

48 vías significa que una posición de memoria se puede cachear en 48 posiciones diferentes de caché. Pero esto implica que cada vez que hay que buscar una posición de memoria en caché L3 hay que buscar en 48 líneas de caché, lo que obviamente hace el acceso L3 más lento.

Una asociatividad doble reduce la tasa de fallos de caché igual que lo haría un tamaño de caché doble, es decir en un factor 1.4. Aunque para asociatividades elevadas (más de 8) la mejora es cada vez menos importante.

Los integrantes iniciales de la gama Phenom II:

  • Phenom II 920: 2.8 GHz, 1.8 GHz L3/IMC, 3.6 GHz HT. Unos 270 €.
  • Phenom II 940: 3.0 GHz, 1.8 GHz L3/IMC, 3.6 GHz HT. Unos 230 €.

Lamentablemente, y debido a razones de consumo y disipación, AMD ha tenido que dejar a la L3 y las IMC (Controladoras de memoria integradas) a una frecuencia de solo 1.8GHz.

Por ejemplo, el actual Phenom 9850 y el 9950 utilizan una frecuencia L3/IMC de 2.0GHz. Esta reducción en Shanghai aumentará la latencia relativa de la L3 y la memoria principal, aunque gracias a las mejoras microarquitecturales introducidas será en la práctica más rápida que la de Phenom Barcelona.

Hay que tener en cuenta que Shanghai es el primer procesador de AMD fabricado en 45 nm y que sin duda mejorará con el tiempo. De hecho, las nuevas versiones AM3 de Phenom II previstas para Febrero implantan una L3/IMC a 2.0 GHz para soportar DDR3 1333, aunque supondrá un cuello de botella en la arquitectura (un dual channel DDR3 1333 requeriría un reloj de IMC/L3 de 2.66 GHz para asumir el ancho de banda proveniente de los módulos con la actual implementación de bus L3 de solo 64 bit bidireccional). Explicado aquí.

A modo de apunte, los Opteron basados en el core Shanghai, tienen la L3/IMC a 2.2 GHz lo que les aporta un plus prestacional y compiten muy favorablemente con toda la gama Xeon Quadcore de Intel.

Prestaciones

Phenom II mejora a Phenom de un 5 a un 30% a igualdad de reloj según la aplicación debido a sus numerosas mejoras microarquitecturales y sobretodo a su L3 de 6 MB y 48 vías.

En el terreno de los juegos la mejora llega en algunos títulos a un 50% del Phenom II 940 (3.0 GHz) respecto al Phenom 9950 (2.6 GHz).

Yo esperaba prestaciones en el entorno de un C2Q 9450 o un C2Q 9550, pero debido al bajo reloj L3/IMC de 1.8 GHz (yo esperaba 2.2 GHz), más bien estarán en el entorno del C2Q 9400 o C2Q 9450.

Consumo y disipación térmica

El TDP de Phenom II está situado en 125W, un valor respetable. Este alto consumo es debido a la juventud del proceso de 45 nm de AMD - IBM lo que obliga a utilizar voltajes elevados (1.35 V en al 940) que aumentan considerablemente la producción de calor.

cpuz_PhenomII_940

CPUZ nos muestra los 1.35 V nominales del Phenom II 940.

  • La disipación térmica crece linealmente con la frecuencia: Doble frecuencia, doble consumo, doble disipación.
  • En cambio, al aumentar el voltaje, el consumo y la disipación crecen con la tercera potencia (el cubo) del voltaje: doble voltaje, ocho veces mayor consumo y disipación térmica.

Overclock

Dependiendo de cada procesador en particular (siempre hay variaciones) podemos esperar un overclock estable con refrigeración por aire en unos 3.4 GHz y con un excelente cooler podemos llegar a los 3.5 - 3.6 o incluso 3.8 GHz donde entramos ya en la refrigeración líquida que puede extenderse hasta los 4.0 - 4.4 GHz (como máximo).

El futuro

AMD no disipa las dudas sobre la microarquitectura que seguirá a Shanghai, los detalles son escasos y no entraré a comentarlos.

Lo que sí haré es una lista de "deseos" en la que plasmo lo que creo que AMD podría implantar de cara a aumentar el IPC (instructions per clock) en su nuevo núcleo:

  • Aumento de la asociatividad de la L1i (caché de instrucciones de nivel 1). Las actuales cachés de 64 KB y 2 vías tienen una alta tasa de fallos debido a su bajísima asociatividad (Intel utiliza un diseño de 8 vías) pese a su gran tamaño. Realizando profiling se ve claramente la menor tasa de fallos de la L1i de Core2 (32KB, 8 vías) frente a la L1i de Phenom o Athlon64 (64KB, 2 vías) pese a su menor tamaño.
  • Aumento del ancho de ejecución a quad issue.
  • Mejora del mediocre mecanismo de branch prediction (en comparación con Core2 o Core i7).
  • Implantación de desambiguación en escrituras y lecturas combinadas en memoria.
  • Aumento del ancho del bus IMC/L3 - cores a 128 bits bidireccional.
  • Reducción de la latencia L2 de los actuales 15 ciclos aunque ello signifique una reducción de su tamaño a 256 KB hasta niveles similares a Core i7.
  • Reducción de la latencia L3 mediante mejora en los timings de sincronización y aumento de su frecuencia base (actualmente 1.8 - 2.0 - 2.2 GHz).
  • Aunque a AMD le desagrade, inclusión de los nuevos juegos de instrucciones Intel SSE4 y futuros.
  • Aumento del tamaño L3 sin aumentar desmesuradamente la asociatividad.
  • Introducción de SMT de dos vías al estilo Intel HyperThreading.

Espero ver plasmadas alguna de estas ideas en los futuros diseños (que ya estarán seguramente ultimados, al menos en la mesa de diseño) del fabricante alemán.

Etiquetas de Technorati: ,,,,,

lunes, 15 de diciembre de 2008

Phenom X2: AMD Athlon X2 serie 7000 - LowLevelHardware

El fabricante alemán de microprocesadores nos sorprende con una nueva gama de CPUs dualcore derivadas de los conocidos núcleos Barcelona de 65 nm con sólo dos núcleos activos, se trata de la nueva gama Athlon X2 serie 7000.

Después de esta nueva incorporación, los procesadores derivados del núcleo Barcelona quadcore quedan distribuidos en tres series:

  • Phenom X4 Serie 9000: Quadcore.
  • Phenom X3 Serie 8000: Quadcore con tres núcleos activos.
  • Athlon X2 Serie 7000: Quadcore con dos núcleos activos.

43494A_QuadCore_Opt_Die_BLK

El procesador Kuma: los AMD Athlon X2 7750 y 7550 están basados en dies Barcelona de 65 nm.

El procesador AMD Barcelona quadcore, por todos conocido en las gamas Phenom y Opteron, posee cuatro núcleos de procesamiento y una caché L3 compartida de 2 MB. En las series 7x50 se mantiene la caché L3 de 2 MB con sólo dos cores activos, es decir, un Barcelona stepping B3 con dos cores deshabilitados (mediante fusibles integrados en el die). A este procesador, AMD le llama Kuma:

  • AMD Athlon X2 7750 BE: 2.7 GHz cores, 2 GHz Uncore. 2 x 512 KB L2, 2 MB L3. Multiplicadores desbloqueados (Black Edition).
  • AMD Athlon X2 7550: 2.5 GHz cores, 2 GHz Uncore. 2 x 512 KB L2, 2 MB L3

Las prestaciones de Kuma son un 15 % superiores a las de un Athlon 64 X2 basado en el núcleo Brisbane (stepping G2) clock-for-clock. En tareas que demuestran las ventajas de la L3 por su set de trabajo, la ventaja de Kuma llega al 25 - 30 % (compresión de vídeo y juegos). Con ello demuestra las numerosas mejoras introducidas por AMD en los K10 respecto al original diseño K8.

El TDP de estas CPUs será de 95 W, superior al de la gama K8 Brisbane aunque inferior al clásico Athlon 64 X2 6400+ de 90 nm a 3200 MHz con dos L2 de 1 MB (TDP 125W).

En prestaciones, el modelo 7750 (2.7 GHz) compite con los Intel Pentium Dual Core 5200 y 5300 (45 nm, 2 MB L2) a 2.6 y 2.5 GHz respectivamente, aunque en el terreno del consumo se queda atrás. Recordemos que está basado en una CPU quad de 450 M (!!) transistores con dos núcleos desactivados.

amd_01[1]

En todo caso, la verdadera novedad de AMD recae en los nuevos procesadores de 45 nm, los Phenom II quadcore están al caer y que con su L3 de 6 MB sí supondrán un claro salto prestacional.

lunes, 24 de noviembre de 2008

La verdadera latencia L3 de Core i7. Actualizado - LowLevelHardware

Intel ha conseguido un diseño brillante para la caché compartida de 8 MB de los procesadores Core i7. Ha superado a AMD con su núcleo Barcelona, cuya L3 apenas destaca en ancho de banda de lectura frente a la memoria principal y más bien sirve de buffer para evitar / disminuir la carga en la RAM del sistema.

PIC01478a

En este caso analizamos el Core i7 920, el benjamín de la familia. La latencia en el 940 será peor (mayor frecuencia de núcleos, misma del Uncore) y algo mejor en el 965 EE.

Relación de frecuencia entre cores:uncore en la gama Core i7:

  • Core i7 920. Cores:Uncore 20:16 (5:4)
  • Core i7 940. Cores:Uncore 22:16 (11:8)
  • Core i7 965 EE. Cores:Uncore 24:20 (6:5)

A valor más bajo mejor rendimiento y menor latencia.

Latencia con software convencional: CPUZ 1.23.

CPUZ_lat_3ch_NOTurbo

Según CPUZ, el core Nehalem disfruta de una ajustadísima latencia de 36 ciclos para su tercer nivel de caché. Una latencia verdaderamente brillante (solo añade 22 ciclos per se).

Análisis con software especializado: RMMA 3.8.

rmma_20081122_113011_0656

En la gráfica ya observamos una latencia inicial de 42 ciclos que va empeorando conforme se van dando más y más fallos del D-TLB.

Haciendo un análisis más pormenorizado, descubrimos el verdadero valor de la latencia L3 en Nehalem:

rmma_20081124_103334_0953

El punto de cruce de las cuatro gráficas corresponde con el valor real efectivo de la latencia L3 en condiciones reales: 49 ciclos.

Cierto es, que en caso de aciertos de D-TLB, curva verde (acceso pseudo-aleatorio) tenemos una latencia de 42 ciclos, este sería la latencia efectiva en el caso de software excelentemente programado.

Conclusiones:

De este análisis, resulta un valor cercano al de la L3 del AMD Phenom Barcelona de 65nm, unos 49 - 50 ciclos.

rmma_20080512_214303_0609

Lo que sí es cierto es que Nehalem supera amplísimamente a Barcelona en el ancho de banda de su L3 (de un artículo anterior):

" Al llegar al LLC (Last Level Cache) o último nivel de caché, en este caso la caché L3 la diferencia se torna abismal en favor de Core i7. En lectura de L3, Core i7 transfiere 8.40 Bytes/ciclo (8.08 B/ciclo al superar los 2 MB) mientras que Phenom se queda en unos anémicos e insuficientes 3.59 B/ciclo para atender un dual channel DDR2 1066. "

" 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 menos de la mitad (transferencia del bus L2-L3) que en su nuevo rival, Core i7. "

Según los diseñadores de Nehalem, con el próximo Tick en su cadencia Tick-Tock, esperan reducir la latencia de L3 y, sobretodo, aumentar considerablemente su tamaño.

Este nuevo procesador Westmere, la versión de 32 nm de Nehalem, es esperado para Q4 2009 - Q1 2010 e incluirá estas innovaciones entre otras.