Ahora que los Macs con Intel han llegado por fin, podemos tratar de responder con más datos a la pregunta que nos hemos venido haciendo en los últimos meses: ¿son los Intel realmente más rápidos?

En artículos pasados, me he centrado más en asuntos estrictamente arquitectónicos, e incluso de políticas de empresa. En este artículo, me voy a centrar en el rendimiento que están dando los nuevos Macs con CoreDuo en pruebas tanto “artificiales” como del mundo real, y también trataré de analizar el porqué de los resultados obtenidos.

Primera parte: los tests genéricos

Lo primero que vamos a hacer es comprobar los resultados que obtienen tanto los G5 como los CoreDuo en unos tests que en general la industria utiliza como estándares (aunque eso no signifique que representen estrictamente el rendimiento general), los tests SPEC.

A continuación, comparamos los resultados obtenidos en los tests de un sólo hilo (con lo que el CoreDuo pierde la ventaja de los dos núcleos). Además, para tratar de ser justos, he preferido utilizar los datos disponibles para la versión del G5MP, que tiene más caché, y por tanto, obtiene un rendimiento ligeramente mejor al que se obtendría con los modelos de iMac anteriores.

SPEC_Int.png

Este test mide la velocidad en el cálculo en enteros de los procesadores, aislando en lo posible el resto del sistema, y centrándose en el rendimiento bruto del procesador. Podemos ver cómo el CoreDuo es mucho más rápido que el G5, sin lugar a dudas. Sólo el G5 a 2500 MHz consigue superar por muy poca distancia al CoreDuo de gama más baja.

Hay que recordar que un G5 a 2500 MHz sería inviable en un ordenador portátil. Por tanto, el rendimiento más relevante es el del G5 a 2000 MHz (que Apple, también hay que decirlo, fue incapaz de utilizar en los Powerbook, por ser el consumo excesivamente alto).

Los resultados del CoreDuo a 1830 MHz y del G5 a 2000 MHz son aproximados, ya que están calculados escalando linealmente los resultados de microprocesadores de velocidades superiores, debido a que sus resultados no son públicos actualmente.

Vamos ahora al test en coma flotante.

SPEC_fp.png

Vemos que los resultados aquí son muy distintos. El G5 aprovecha su grandísimo pico de cálculo en coma flotante para obtener resultados realmente muy buenos, mejores sin duda que los de CoreDuo.

Sin embargo, hay que precisar nuevamente una cosa: un G5 a 2500 MHz sería imposible de utilizar en un portátil. Por tanto, el dato más relevante es el del G5 a 2000, que gana, aunque por poquito, al CoreDuo más rápido.

No voy a comparar los resultados de los tests multihilo “rate”, parte de los SPEC que utilizó Apple, porque no los considero apropiados en este caso. Este test está pensado para buscar el pico de rendimiento de un sistema con varios núcleos, o procesadores. Por tanto, el CoreDuo tendría una ventaja considerable sobre los G5fx que utilizaban los iMac anteriores. La comparativa más justa sería con un G5mp (los dual-core que utilizan los Powermac actualmente), pero los datos de estos chips no están disponibles.

De estos dos tests podemos concluir dos cosas:

  • El CoreDuo es sensiblemente más rápido en código intensivo en cálculo con enteros que el G5, por núcleo. Esta ventaja todavía aumentaría más, si en vez de considerar velocidad “pura”, consideráramos velocidad por watio.
  • En coma flotante, la cosa está mucho menos clara. El G5 tiene la capacidad de ser mucho más rápido que el CoreDuo en las versiones más rápidas, pero estas versiones consumen demasiado como para ser utilizadas en las gamas móviles de Apple.

Veremos que estas dos conclusiones son consistentes con los resultados obtenidos en el resto de tests.

Segunda Parte: tests del mundo real

Test de renderizado 3d: Cinebench

Cinebench utiliza el motor de renderizado del programa de diseño 3d Cinema4d. El test es  una simple renderización de un modelo, y está paralelizado, de forma que la velocidad de cálculo crece a medida que disponemos de más procesadores, o núcleos. Este test se considera intensivo en cálculo en coma flotante de doble precisión.

Cinebench.png

Podemos ver cómo el G5 saca resultados muy buenos en este test. El Quad, con sus cuatro núcleos a 2500 MHz, obtiene un rendimiento realmente muy alto. Además, en rendimiento en un sólo hilo también obtiene un resultado muy positivo.

El CoreDuo también obtiene buenos resultados. El rendimiento, ciclo a ciclo, de ambos procesadores, de hecho, parece ser idéntico. El G5 alcanza frecuencias más altas, pero el consumo se dispara, y de nuevo volvemos a lo mismo: no sería posible utilizar G5s a 2500 MHz en un portátil.

El G4, el chip que ha venido utilizando Apple en sus ordenadores, obtiene resultados terribles en este test. El CoreDuo duplica su rendimiento en un sólo hilo, y además dispone de dos núcleos, así que la diferencia es realmente muy seria.

Test de exportación con Pages

El test anterior era muy favorable al G5, y en teoría, desfavorable al CoreDuo (dado su menor velocidad de cálculo en coma flotante). Veremos ahora un test favorable a CoreDuo, dado que prueba más bien la velocidad en cálculos con muchos saltos, en los que el G5 se ve penalizado: la exportación de un documento a PDF con Pages, parte de iWork 2006.

Pages.png

Aquí el CoreDuo gana sin ninguna duda, y además por un margen bastante grande. No hay ninguna duda, a estas alturas, de cuál es el punto fuerte de la arquitectura de CoreDuo, y el punto débil del G5.

Es preciso señalar que este test no es multihilo, por lo que la ventaja que obtiene CoreDuo, la obtiene únicamente con un sólo núcleo.

Test de exportación de vídeo con Keynote

Este test simplemente trata de exportar una presentación de Keynote a una película Quicktime. Como este test es multihilo, se han añadido tanto los resultados del test con los dos núcleos de CoreDuo activados, como los obtenidos con sólo uno.

Keynote.png

En este test multihilo, el G5, con un sólo núcleo, es capaz de terminar el trabajo más rápidamente que CoreDuo, ¡¡teniendo éste dos núcleos!! ¿Cómo es posible?

En general, los cálculos de conversión a vídeo son susceptibles de paralelización (como se ve en el ejemplo), y también pueden realizarse utilizando las unidades vectoriales de las que disponen los micros modernos.

Y he aquí el punto débil de CoreDuo, y el punto fuerte del G5. El G5 dispone de una unidad vectorial realmente muy potente, llamada por Apple Velocity Engine, y por Motorola Altivec. Con esta unidad, el G5 puede alcanzar picos de cálculo en coma flotante incluso superiores a los que puede alcanzar con las unidades de coma flotante escalares. Por ello, si se usa, el G5 se convierte en un monstruo tritura-números que es capaz de exportar vídeo a una velocidad de vértigo.

El CoreDuo incorpora un módulo de cómputo vectorial que ejecuta un conjunto de instrucciones vectoriales específico llamado SSE, pero la circuitería que utiliza está “compartida” entre la unidad de coma flotante normal, y el módulo vectorial. Además, el diseño es peor, y Altivec puede hacer cosas que SSE, hoy por hoy, y en sus tres versiones, no puede.

Por todo ello, el G5 es muy superior en cálculo vectorial. Dos núcleos de CoreDuo no pueden ganar a un sólo núcleo de G5, en un código paralelizado, y esto nos permite ver perfectamente el talón de Aquiles de la actual encarnación de CoreDuo, y el punto en que la arquitectura debería mejorar mucho en el futuro.

Tests con juegos: el Doom3

Doom.png

Los juegos no solamente están limitados por el procesador, también están limitados por la tarjeta gráfica. Por tanto, aunque los resultados del nuevo iMac con CoreDuo parecen realmente muchísimo mejores que los de la generación anterior de iMacs, es muy difícil saber hasta qué punto esta mejora es el resultado de un procesador mejor, o de una tarjeta gráfica mejor. Como ambos componentes han cambiado (y, en particular, la tarjeta gráfica ha cambiado de forma muy importante, a un modelo mucho mejor), es difícil llegar a conclusiones definitivas.

Lo cierto es que el iMac sigue sin ser una máquina tan rápida como algunos PCs de gama media para jugar a juegos, pero también es muy cierto que la distancia entre los PCs y los Mac ahora no es de ninguna forma tan grande, y que la velocidad empieza a ser realmente aceptable, a tenor de lo que puede verse en este test, y otros con juegos distintos.

Conclusiones finales

Y llegamos a las conclusiones finales del artículo. Es fácil darse cuenta de que los tests escogidos para este artículo son, por decirlo de alguna forma, algo “extremos”. Las dos arquitecturas comparadas son realmente muy distintas, y por ello cada una tiene sus puntos fuertes y débiles. He tratado que los tests escogidos mostraran esto.

El CoreDuo es muy superior en computación en enteros y en cálculos con muchos saltos. Por ello, es capaz de ganar con diferencias importantes en tests como la exportación a PDF, por ejemplo.

Sin embargo, el G5 es capaz de alcanzar picos de cálculo en coma flotante y vectorial muy superiores a CoreDuo, y eso se nota en tests como la codificación de vídeo o audio. Esta desventaja inicial puede ser compensada por el segundo núcleo de CoreDuo, que ayuda mucho en estos programas, pero la debilidad de la arquitectura en este tipo de códigos queda a la vista de los tests muy clara.

En renderizado 3d, el CoreDuo saca resultados muy buenos, al igual que el G5, y ademas, el segundo núcleo de CoreDuo es una ventaja muy seria.

Sin embargo, la clave para entender CoreDuo no sólo se encuentra en los tests de rendimiento, sino que hay que mirar también los tests de consumo. Y esto es, en mi opinión, el punto fundamental: actualmente, con los modelos de procesadores existentes ahora mismo, el CoreDuo a 1,83 GHz, con sus dos núcleos y sus 2 MB de caché nivel 2, consume mucho menos que un G5 de un sólo núcleo a 1,9 GHz, y con 512 KB de caché.

Es cierto que el CoreDuo está fabricado a 65 nm. Sin embargo, esto no es un argumento en contra de la transición para los usuarios de Mac: tradicionalmente, Intel siempre va por delante en procesos de fabricación (a veces, unos pocos meses, pero a veces medio año, o incluso más), y su estrategia está diseñada para aprovechar esta ventaja.

También es cierto que no todos los ordenadores necesitan consumos bajos, y aquí es donde se pueden discutir ciertas cosas.

Por ejemplo, yo discuto la decisión de utilizar CoreDuo en un iMac. Un iMac es un ordenador de sobremesa, pero con un diseño un tanto peculiar. Sin embargo, estoy seguro de que el chasis del iMac tolera consumos mucho más altos que los de CoreDuo (sin ir más lejos, el G5 que llevaba el iMac consumía mucho más que el CoreDuo actual).

Por ello, Apple podría haber utilizado un procesador distinto al CoreDuo en el iMac. Un PentiumD de los últimos tiene un pico en coma flotante más alto que el CoreDuo, y una capacidad de cálculo en enteros similar. Además, posee dos núcleos, como el CoreDuo. Quizás hubiera podido ser una decisión más acertada para el iMac. Quizás el error proviene de migrar primero el iMac, viendo cómo está actualmente la gama de procesadores de escritorio de Intel.

Lo diré de otro modo. El MacBook Pro es un ordenador muchísimo más potente que el Powerbook al que sustituye, de esto no hay duda. Sin embargo, no está claro que el iMac con CoreDuo sea mucho más potente que el iMac con G5. En algunas cosas lo es, ciertamente, pero en otras el G5 gana, y en algunas circunstancias concretas, la ventaja es realmente importante a favor del G5.

Y, en relación con esto, quiero hacer un comentario final: por mucho que diga Apple, CoreDuo no es la arquitectura de futuro de Intel, ni en realidad es revolucionaria. CoreDuo es un procesador que hereda muchos de sus componentes de la arquitectura P6, origen de muchos procesadores muy conocidos, como el PentiumPro, el PentiumII, el PentiumIII, o el Pentium-M. Es realmente sorprendente cómo una arquitectura que se originó en el 95 ha podido durar (por supuesto, con sucesivas modificaciones) hasta el 2006, y eso dice mucho de su solidez y buen diseño.

Sin embargo, estamos en 2006, y es hora de buscar nuevas ideas. El Pentium4 fue un fracaso para Intel, pero de los fracasos se aprende, y no todas las ideas que incorporaba el Pentium4 eran malas. De hecho, algunas son realmente muy buenas.

Por ello, Intel ha estado desarrollando una nueva arquitectura, que al parecer está diseñada desde cero, pero que incorpora ideas y elementos de todos los procesadores actuales de Intel (como por ejemplo el bus del Pentium4). Todavía no hay muchos detalles sobre esta nueva arquitectura, pero se sabe que consumirá menos que un Pentium4, que habrá versiones para portátiles, y que en general será más rápida que CoreDuo, y que los Pentium4/PentiumD.

Por todo ello, y viendo la situación en la que estamos, yo sigo esperando. La transición a Intel se ha iniciado, y se ha iniciado con muy buen pie, con productos sólidos como el MacBook Pro, mucho mejor que el modelo al que sustituye, o como el iMac CoreDuo, muy bien preparado para las aplicaciones multihilo del futuro, con una tarjeta gráfica muy buena, y con un precio muy razonable. Sin embargo, yo espero a la nueva arquitectura de Intel, que debería colocarle por fin de nuevo en el liderazgo del rendimiento en la mayoría de tests, liderazgo que perdió hace ya bastantes meses a manos de AMD.

Este marzo tendrá lugar el Intel Developer Forum. A medida que surjan noticias nuevas, seguiremos informando 🙂

Fuentes y enlaces interesantes

  • Arstechnica

De Arstechnica he obtenido algunos de los resultados de la gráfica de Cinebench.

  • Anandtech

En Anandtech han hecho un excelente reportaje sobre el iMac CoreDuo, del cual he extraído los tests de Pages y Keynote. Es muy recomendable si se desea profundizar en el rendimiento de los iMac.

  • Barefeats

De Barefeats he obtenido los resultados de la gráfica de Doom3. También es una página interesante si se desea saber más sobre el rendimiento de los iMac nuevos.

Por último, los datos de los tests SPEC han sido obtenidos tanto de la página web oficial como de una entrevista concedida a eweek que se puede leer aquí.

Y, como siempre, podéis comentar el artículo en los foros de Macuarium.

Antonio Moreno Pérez, 2006.