Febrero 2012 - Update al final del post
Resumen para vagos:
– Porque tiene más posibilidades de saturar o exprimir los “núcleos”.
– Tiene una velocidad de clock alta y da más rendimiento por thread.
– Tiene la mayor relación de cache nivel 3 por núcleo
Ahora la versión larga
Estuve leyendo múltiples notas en páginas especializadas, como aquí , aquí y aquí entre otras y llegue a la conclusión de que de todos los modelos de Bulldozer que presentó AMD uno solo es más o menos interesante.

Para ver como llego a opinar lo que opino primero hay que entender algunas cosas y la principal es:
¿Por qué lo micros Bulldozer resultaron ser una poronga?
Vamos a ver que presentó AMD el 12 de octubre y como se compara con los micros que ya se conseguían

Bulldozer es un micro con una cantidad impresionante de transistores* pero ojo muchos se van en la memoria cache. 8 megas de cache nivel 3 y 8 más de nivel 2 y una cantidad poco clara (¿384k?) de nivel 1. En la grilla de más arriba verán que se enumeran los “treads” (hilos de ejecución) por hardware que manejan y no lo núcleos y esto tiene un porqué.
Desde el 2003 mas o menos Intel usa en parte de sus micros algo llamado Hyperthreding (a mí me gusta llamarlo multithreading o dual threading), esto es que un núcleo es visto por el sistema operativo como si fueran dos. Esto se logra duplicando estratégicamente algunas partecitas del núcleo de forma que cuando un thread tiene un hueco en su ejecución pasa momentáneamente a ejecutar sobre el segundo thread. Al volver útiles estos huecos en la ejecución los micros con Hyperthreading ganan en performance algo entre el 10% y el 30%, dependiendo del tipo de programas que se estén ejecutando.
Hasta el 11 de octubre todos, absolutamente todos los micros de AMD tenían una relación núcleos/threads de 1 a 1. Ahora con el lanzamiento de Bulldozer supuestamente esto sigue siendo así, pero yo no me animo a decir firmemente que esto se cumple. Bulldozer usa módulos, cada módulo dentro del micro tiene 2 núcleos, asi que el FX 8150 de 8 núcleos tiene 4 módulos. Lo que ocurre dentro de estos módulos se puede leer de dos formas, o son dos núcleos que comparten algunos recursos o es un núcleo capaz de hacer dual threading con mucha mas circuitería duplicada que el simple truco de Intel.
¿Pero son dos núcleos un módulo o no?

Y.. AMD dice que sí, yo no lo sé y ustedes verán. Supuestamente en un módulo AMD cuando tenés un thread corriendo al 100% de utilización y agregas un segundo thread deberías tener un 70% mas velocidad (en la vida real aprox. 50%), mucho mas que lo que te da Intel con el Hyperthreading pero habría que ver si eso solo alcanza para definirlo como un dual core. Veamos esto:

En cada núcleo los Phenom y los Core, son capaces de emitir 3 y 4 instrucciones por clock respectivamente y es en buena medida por esto que los Intel son mas rápidos. Sin embargo en los Intel cuando esta activo Hyperthreading el núcleo no se vuelve capaz de emitir el doble de instrucciones, sigue emitiendo las mismas 4 que con un solo thread, solo que con menos huecos en la ejecución. Hyperthreading maximiza la eficiencia del núcleo y lo mantiene emitiendo todo lo que se puede.
Los módulos de bulldozer lamentablemente hacen algo parecido, 1 núcleo emite hasta 4 instrucciones por clock y 2 “núcleos” dentro del mismo módulo emiten las mismas 4 instrucciones por clock, una vez mas, con menos huecos. Y parece que la arquitectura de los bulldozer genera muchos huecos en su cola de ejecución porque aunque pueda emitir 4 instrucciones por clock es mas lento que los Phenom que solo pueden despachar 3.

Dos threads son capaces de ser servidos con mas de 4 instrucciones por clock sólo si están en diferentes módulos, si están en el mismo cagaron. Esto es lo que supuestamente va a tener en cuenta Windows 8 a la hora de asignar threads a los núcleos.
Asi que veamos como funcionaria si dijéramos que cada módulo de Bulldozer tiene 2 núcleos y como si tiene 1.
Cada módulo AMD son dos núcleos
2 núcleos de Phenom = 6 IPC (instrucciones por clock)
2 núcleos de Sandy Bridge = 8 IPC
2 nucleos de FX = 4 IPC
2 núcleos de Atom = 4 IPC
Cada módulo AMD es un núcleo
1 núcleo Phenom = 3 IPC
1 núcleo Sandy Bridge = 4 IPC
1 núcleo AMD FX = 4 IPC
Ahora siiii
Asi los FX están a la altura de los Core, peeeeero bajo la perspectiva de que los micros de AMD tienen la mitad de los núcleos que publicitan. De esta forma el FX 8150 que tanto se ha testeado en tantas páginas seria en realidad un micro quadcore con multithreading, mas o menos parecido en concepto y performance a los Nehalem/Sandy Bridge, solo que rinde parecido solo cuando están completamente saturados TODOS los threads… y mamita, hay que saturar 8 threads, eh?
¿Y para cuando el 4170 que le da título al post?
Ya va, veamos lo que lanzó AMD hace unos días

Dejemos de lado los detalles de marketing de AMD que solo le interesan a AMD y no a los usuarios finales y veamos al 4170 como lo que realmente parece funcionar, un micro dualcore-quadthread y así se van a poder apreciar sus aparentes bondades.
Es el micro que mas alta velocidad de clock tiene de todos los Bulldozer presentados, 4,2GHz de velocidad base y un pelito mas, 4,3GHz cuando solo un módulo está activo. Es indudablemente el modelo que mayor velocidad tiene cuando no se hace multitasking, posiblemente por encima del Phenom 980 (3,7GHz) y quizás a la altura de un Core a 2,7~2,9 GHz (p.ej. i5 2300)
Trabajando en multitasking el 4170 no tiene tantos threads para llenar, admitamoslo, no hay muchas aplicaciones optimizadas para 6 u 8 núcleos pero los quadcore han estado por años dando vuelta en el mercado y esos si son bastante aprovechados incluso por muchos juegos recientes, asi que hay buena chance de exigir a full a este micro incluso con un uso mas o menos convencional. Aquí yo supongo estará por encima de un Core i3 2130 (3,4GHz x 2 - U$138 en USA) o un Phenom X4 840 (3,2GHz x 4 – U$114) aunque seguramente lejos del Core i5 2300 (2,8GHz x 4 – U$ 177)
Otra a favor de todos los FX 4000 y pico es que conservan la totalidad de los 8MB de cache L3 de la línea 8000. Esto es así porque en realidad AMD produce un solo chip y nada mas que uno para toooodos los modelos de FX que lanzó y va a lanzar en lo inmediato, lo único que varia es cuantos núcleos tiene desactivados.
Como sea esto hace que haya 3 megas de cache L2+L3/thread contra solo 2 megas/thread de la línea 8000, cosa que podría aceitar ciertos procesos.
Conclusion: El 4170 tiene buena velocidad cuando funciona con 1 thread, quizas la mejor de cualquier micro AMD hasta ahora y con múltiples threads tambien supera a cualquier dual core AMD o Intel. Es un excelente dual-core ;-)
¿Entonces si hay un Bulldozer que vale la pena? ¿es este?

No sé. El 4170 no tiene precio todavía y sólo estoy especulando acerca de su velocidad. Especulando con ciertas bases pero especulando. A unos $130~135 dólares, si las estimaciones de su rendimiento son correctas, tendría sentido. Hasta $150~155 quizás puedan venderlos pero más que eso están fritos, que se los compre Gadorcha.
Eso es todo amigos
Quedaron algunos temas afuera como el consumo de energía, la compatibilidad con mothers AM3 no plus, las perspectivas de Bulldozer en servidores** y un supuesto anacronismo en el terreno desktop, pero sería muy largo y no tiene mucho que ver con la consigna del post
Como dije antes, lo escrito es mi interpretación basada en las múltiples reseñas sobre los micros AMD FX lanzados hace unos días y no la opinión de un experto en la materia. Si alguno de los que lee este post lo es, está invitado a opinar/corregir/ampliar lo expuesto ante el colectivo.
Y ahora el update
Bueno, pasan los meses desde que hice este post y siguen, cada tanto, cayendo comentarios, puntines y gente que sigue. Tambien el contador de visitas y la verdad esto me anima porque el presente post es el único que tengo de mi completa autoria. Los otros la mayoria son traducciones del ingles de cosas improbables de ver en castellano o alguna tontera como un videito de una nena bailando y cosas como esas. Gracias a todos.
El FX 4170 tiene, sin embargo, el honor de ser el primer micro con API x86 en tener una velocidad de clock base igual o mayor a los 4GHz. Un pequeño mérito y curiosidad histórica.
Quiero aclarar también una confusion respecto de los Bulldozer que veo se repite una y otra vez en varias páginas y foros. Es cierto que son muy evidentes los paralelismos que hay entre Phenom/FX y Pentium III/Pentium 4. Pipeline alargado, diseñado para escalar en clock, dual thredding, y muy muy calientes y gastadores. Pero ojo.
Cuando salio el primer Pentium 4, a 1.5 GHz no eran mas rápido que el Pentium III tualatin de 1.1 GHz que acababa también de ser lanzado. La pérdida de performance por clock en la nueva generacion respecto de la vieja era de un 30-40%. Y ni hablemos de los Celeron que tanto padecimos en la Argentina, que estaban "desacelerados" como un 20% de forma artificial para separar los segmentos del mercado.
Los FX son entre un 10 y un 15% mas lentos (por clock) que los Phenom II pero con velocidades de clock en algunos modelos mucho mayores. Es un retroceso mucho menos grave que el que tuvo Intel en su momento.
Adicionalmente Microsoft ya liberó un par de parches para Windows 7 que hace que el scheduler del SO asigne de forma mas estratégica los threads en los módulos del FX. Esto no es un rediseño del scheduler sino un tweak, Windows 8 manejaría a los micros AMD aun mejor. Y si se preguntan cuanto ayudan estos parches, les ahorro leer algunas reviews y les digo que en promedio aumenta la velocidad en un 1,85% con casos excepcionales de tareas que ganan cerca de un 10% de velocidad y casos excepcionales para el otro lado donde se pierde un par de puntos porcentuales.
Ahora resta que se le hagan prubas de velocidad y eficiencia reales al micro, apenas sepa algo lo agrego.
Arrivederci.
* La cantidad de transistores declarada inicialmente por AMD fue desmentida y corregida de los 2.000 millones iniciales a unos 1.280 millones aunque algunos analistas asumen que el numero estaria mas bien cerca de los 1.400 millones.
** En los servidores Bulldozer también resultó una decepción (D'oh!). Resulta que los micros AMD de 16 núcleos SON los que mas performance cruda tienen de todos los micros, tanto AMD como Intel y esto incluye al extraño Xeon derivado del Sandy Bridge de 10 núcleos/20 threads. El tema es que son demasiado caros e indirectamente mas caros aún porque consumen mucha electricidad. A la mierda la performance por watt.
UPDATE 2: Hoy 8 de marzo finalmente se conoce el precio oficial del micro: 135 dólares.

