
Intel ha diseñado desde cero una nueva microarquitectura, que tiene similitudes remotas con la de CoreDuo, pero que incorpora grandes cambios. Los principales son:
Microarquitectura de 64 bits: esto no representa una ventaja directa de ningún tipo para el usuario, pero, en el futuro, permitirá utilizar más de 4 GB de RAM (como los actuales G5, que ya eran de 64 bits), y en el caso de la arquitectura x86, puede significar algunas mejoras puntuales del rendimiento, por el aumento del número de registros de propósito general.
Segmentaciones moderadas: con los nuevos procesos de fabricación, es muy complicado llegar a frecuencias muy altas. Por ello, ya no son necesarias tantas etapas de segmentación como en los PentiumD. Para que nos entendamos, esto significa que Core2 no irá a frecuencias mayores que los PentiumD, y sobre todo al comienzo de su vida útil irá a frecuencias menores.
Continuación:
Mayor superescalaridad: si no podemos ir a más megahercios, ¿qué otra cosa podemos hacer para ir más rápido? La otra posibilidad es la superescalaridad, que consiste en ejecutar varias instrucciones a la vez en cada ciclo de reloj. El PentiumD podía ejecutar hasta tres instrucciones por ciclo, aunque en la práctica era muy raro que lograra ejecutar tantas. CoreDuo también puede ejecutar hasta tres instrucciones por ciclo, y en la práctica conseguía ejecutar estadísticamente más instrucciones que los PentiumD. Core2 puede ejecutar hasta cuatro instrucciones por ciclo, e incorpora tecnologías que le permiten aproximarse a esta capacidad máxima teórica.
Cachés muy avanzadas: a medida que se popularizan los micros con doble núcleo, surge una duda a los arquitectos: ¿qué hacemos, utilizamos una memoria caché unificada, a la que puedan acceder los dos núcleos, o utilizamos dos memorias caché separadas, una para cada núcleo? Las dos opciones tienen sus ventajas y sus inconvenientes. Intel ha escogido la primera opción, pero ha incorporado tecnologías que permiten tener también muchas de las ventajas de la segunda opción. Al utilizar una caché unificada, si un núcleo está muy activo, y otro núcleo está “aburrido”, sin hacer nada, el primer núcleo puede utilizar toda la caché, sin desperdiciar memoria. Al mismo tiempo, con la nueva tecnología de Intel, si los dos núcleos están muy activos, se realiza un reparto de la memoria total, de forma que a cada núcleo le corresponde tanta cantidad de memoria como activo esté, para que ninguno se quede con toda de forma “egoísta”
Fusión de instrucciones: la nueva arquitectura es capaz de “fusionar” instrucciones, de forma que éstas ocupen menos espacio en las memorias internas del micro, y pueda haber más instrucciones a la vez, lo cual permite a su vez ejecutar más instrucciones cada ciclo.
Predicción de la desambiguación en la memoria: a veces, puede ser interesante adelantar instrucciones de lectura de memoria por delante de instrucciones de escritura, pero muchas veces no se sabe si esto se puede hacer o no. Core2 ejecuta estas instrucciones de forma especulativa, obteniendo mayor rendimiento a costa de que a veces haya que “repetir” todo el proceso, si no se ha acertado con la predicción.
Nuevo motor de ejecución de instrucciones vectoriales: esta característica nos interesa mucho a los mackeros, ya que muchos programas que utilizamos normalmente estaban muy optimizados para Altivec. Con este cambio, básicamente Core2 puede ejecutar instrucciones vectoriales el doble de rápido que CoreDuo.
Mayor ejecución fuera de orden y mejores predictores de salto: CoreDuo ya incorporaba recursos muy avanzados para la ejecución de instrucciones fuera de orden, y para la predicción de los saltos. Core2 los mejora todavía más, ampliando las memorias internas, e incorporando nuevos métodos de predicción de saltos.
Mayor capacidad de descodificación: Core2 incorpora un descodificador más que CoreDuo, que le permite “cargar” más instrucciones a la vez. Esto es necesario, si queremos ejecutar más instrucciones por ciclo.
Puede comprobarse que los cambios son múltiples, muy sustanciales, y que afectan a prácticamente todas las partes del chip.
Análisis de los tests
La mejor forma de hacerse una primera idea de los resultados es simplemente mirando el artículo de matbe, que incorpora un numeroso grupo de tests, muy diferentes entre sí.
Lo que voy a hacer yo es tratar de obtener, a partir de los resultados de ese artículo, medidas que nos permitan hacernos una idea “global” de cómo de rápido será Core2, en comparación con los actuales Mac. También, por “interés histórico”, haré comparaciones entre los Athlon64 FX (los micros de AMD que hasta ahora obtenían mejores resultados en prácticamente todos los tests), y con los PentiumD.
Vamos a realizar dos comparaciones:
-la primera será entre Core 2 Extreme a 2,93 GHz (la versión de escritorio de alto rendimiento, pensada para ordenadores que se vayan a dedicar a juegos o programas de mucha exigencia) y el Athlon 64 FX-62 (el mejor micro de AMD actualmente) y el Pentium Extreme Edition más rápido.
-la segunda, será entre el Core 2 Duo de 2,4 GHz, y el Core Duo de 2,16 GHz (porque el mejor Core 2 Duo para portátiles irá a 2,33 GHz, y esto nos debería dar una medida bastante razonable de la diferencia de rendimiento entre los MacBook Pro actuales, y los MacBook Pro con Core2).
En las tablas siguientes, incorporo las mejoras (en forma de porcentaje) que obtienen
Core 2 Extreme a 2,93 GHz frente a los Athlon64 FX-62 a 2,8 GHz y Pentium Extreme Edition a 3,77 GHz, y Core 2 Duo a 2,4 GHz frente a Core Duo a 2,16 GHz, respectivamente.

Mejora de rendimiento de Core 2 Extreme (a 2,93 GHz) frente a Athlon64 FX a 2,8 GHz, y Pentium Extreme Edition a 3,73 GHz
(los resultados con * son frente a un Athlon64 a 2,6 GHz)

Mejora de rendimiento de Core 2 Duo (a 2,4 GHz) frente a CoreDuo a 2,16 GHz
Análisis de los resultados
Primero nos centramos en los resultados de Core 2 a 3 GHz frente al PentiumD. Sin necesidad de decir nada, queda bastante claro cuál es la situación. Intel ha logrado diseñar una microarquitectura que, utilizando esencialmente los mismos recursos (el área ocupado por un Core 2 Duo, y un PentiumD fabricado a 65 nm, es la misma), es más de un 50% más rápida en media, y en algún test es casi el doble de rápida. Y lo mejor de todo: un PentiumD puede consumir cerca de los 130W, mientras que un Core 2 Duo a 2,93 GHz se queda en los 80W.
En cuanto a la comparación entre un Core 2 y el Athlon 64 FX, queda claro que las tornas se han invertido, y que Intel se ha puesto muy por delante de AMD. La diferencia media es de un 33%, pero en tests puntuales bien optimizados para Intel es mucho mayor (por ejemplo, en los SPEC, que aquí no están mencionados, la diferencia es de un 67% en enteros a favor de Intel, y eso comparándo un Xeon a 3 GHz (esencialmente igual que Core 2 Duo), contra un Opteron a 3 GHz, y teniendo en cuenta que hoy en día no existe un Athlon64 a 3 GHz). A AMD le va a costar mucho igualar la diferencia actual.
Y finalmente, vamos a analizar la comparación entre Core 2 Duo, y Core Duo, que es la que más nos interesa a los mackeros. En media, un Core 2 Duo a 2,4 GHz es un 34% más rápido que un Core Duo a 2,16 GHz. Esto significa que los portátiles basados en Core 2 serán aproximadamente un 25-30% más rápidos, pero hay que tener en cuenta que los iMac perfectamente podrían llevar un Core 2 Duo a 2,6 GHz, en cuyo caso serían más bien alrededor de un 40% más rápidos que los actuales (que llevan CoreDuos a 2 GHz), y que los Powermac podrían llevar Xeones de hasta 3 GHz (basados en arquitectura Core), con lo que serían todavía más rápidos.
Esta diferencia es enorme. Puede parecer un simple número, pero para ponerlo en contexto, la diferencia es tan abismal como la que había entre G4s y G5s cuando éstos últimos aparecieron. Es posible que Apple trate de minimizar la diferencia entre Core Duo y Core 2 Duo, para no enfadar a los actuales usuarios de Core Duos, pero no hay que llevarse a engaño: es muy grande (la tabla anterior solamente muestra la diferencia entre Core Duos a 2,16 y Core 2 Duos a 2,4; hay que tener en cuenta que existirán Core 2 Duos de hasta 3 GHz).
Conclusiones
Core Duo no era una arquitectura revolucionaria, ni la que llevarían los chips del futuro de Intel. Por supuesto, la arquitectura de futuro de Intel tampoco era Netburst, ni los chips serían los Pentium D actuales, que consumen mucho, y corren poco. La arquitectura de futuro de Intel es Core, y los primeros chips basados en ella Core 2. Todos los chips que lanzará Intel hasta 2008 estarán basados en esta microarquitectura, que como vemos está obteniendo resultados extraordinarios.
Algunos llevamos muchos meses (de hecho, más de un año) esperando para ver lo que eran capaces de hacer los ingenieros de Intel, que durante estos últimos dos años han debido sufrir mucho al ver cómo AMD lograba obtener el liderazgo en el escritorio, tras haberlo perdido con el lanzamiento del Pentium4 hace ya casi seis años. La espera ha merecido la pena.
El resumen es sencillo: Intel se ha sacado de la manga una microarquitectura increíblemente rápida, y que consume muy poco, idónea tanto para servidores de alto rendimiento, como para portátiles que requieran un consumo muy pequeño, y que le viene de perlas a Apple, que utiliza siempre diseños agresivos como el del iMac. Los Mac basados en Core 2 serán mucho más rápidos que los basados en Core Duo, porque las tareas típicas de un usuario profesional del Mac se aproximan mucho más a las del “50%”, que a las del “20%”.
Fuente: Macuarium


Coemtarios Recientes