Consolas y smartphones. Dicen que unas en la cuerda floja del entretenimiento, luchando por cambiar y adaptarse a estos nuevos tiempos para seducir a los usuarios. Los otros, dispositivos que han experimentado un fortísimo crecimiento en los años más crecientes. En ambos casos, plataformas pensadas para el ocio aunque en diferentes formatos. Y en el ocio tecnológico hay algo muy importante: la potencia de cada dispositivo, que nos ofrecerá una experiencia más o menos cercana a la realidad, más o menos satisfactoria.
En el mundo de la tecnología estamos acostumbrados a mencionar referencias: cuántas veces es más potente ésta o aquella generación, o un teléfono y su nuevo modelo. Hoy hablaremos de smartphones y consolas de escritorio, de cómo podemos comparar sus rendimientos. Ante todo, vamos a buscar -- y encontrar -- la respuesta a un debate que seguro habéis pensado más de una vez: ¿cuándo un teléfono será tan potente como una Xbox 360?
Los FLOPS
Los equipos electrónicos han de ser tomados como un conjunto de múltiples componentes que trabajan conjuntamente para ejecutar ciertas tareas. Por componentes nos referimos no sólo a componentes físicos (CPU, GPU, memoria, interfaces) si no también a componentes lógicos, el llamado software (sistema operativo y sus procesos o aplicaciones ejecutadas sobre él). Realizar una comparativa entre dos sistemas de diferente índole es a priori tan sencillo como ejecutar el mismo software en uno y otro, medir los rendimientos ofrecidos por ambos y comparar esos resultados.
Esta posibilidad que parece trivial es en realidad muy difícil de realizar. Entran en juego otros parámetros, como pueden ser la existencia de diferentes arquitecturas o los diferentes sistemas operativos. Un programa que ha sido desarrollado, por ejemplo, para Xbox 360, no puede ser ejecutado en otra plataforma como Android. Son diferentes arquitecturas tanto hardware (PowerPC/ARM) como software (propietario de Microsoft/Google Android).
Esta problemática tiene varios flancos por los que podemos atacar. Por un lado podemos realizar una aproximación al software, desarrollando una aplicación que no sea igual pero sí muy parecida. Los resultados no serán concretos y tendrán un cierto margen de error, pero podrían valer. Lamentablemente, en el caso que aquí nos ocupa, desarrollar software para Xbox requiere licencias específicas que no están al alcance de todos.
Por otro lado, podemos adentrarnos un poco más allá para ver lo que nos ofrece el hardware. Existe un parámetro denominado operaciones en coma flotante, del inglés floating point operations per second abreviado como FLOPS, que permite cuantificar la capacidad de proceso de un componente en la ejecución de ese tipo de datos.
En algunas ocasiones son los propios fabricantes los que ofrecen públicamente los FLOPS de sus componentes en el momento del lanzamiento, lo cual facilita enormemente la tarea. En otras, es necesaria una estimación que puede realizarse de forma teórica o práctica, siendo la segunda mucho más cercana al valor real: se diseña un benchmark que ejecute unos cuantos millones de operaciones de coma flotante y se mide el tiempo que tarda en realizarlas todas; ahí obtendremos el valor.
Los FLOPS son, además, una buena medida de la capacidad gráfica que tiene un dispositivo. Las operaciones en coma flotante son parte esencial en la generación de gráficos y su calidad, pues son precisamente éstas las que se ejecutan cuando queremos, por ejemplo, realizar un modelo 3D o ejecutar un videojuego. De hecho, muchos de los tipos de datos actuales se pasan a coma floante, ya que el hardware está optimizado para estos últimos.
Sin embargo, es importante mencionar que los FLOPS no son un parámetro completamente real con el que determinar al 100% de seguridad que un cierto dispositivo es mejor que otro. Un teléfono que ofrezca 54 FLOPS no es 'siempre' mejor que otro que ofrezca 52, aunque sí nos da una idea aproximada de lo que podemos esperar. 54 y 52 FLOPS son prácticamente lo mismo -- y por tanto la calidad gráfica que podemos esperar será similar --. Por contra, 302 y 54 FLOPS son cifras muy diferentes, siendo una casi seis veces mayor que la otra y, con ello, un dispositivo capaz de ejecutar operaciones en coma flotante seis veces más rápido.
Así es la Xbox 360
Creo que todos la conocemos. La segunda generación de consola de Microsoft es la Xbox 360, presentada en 2005 y que aunque aún sigue vendiéndose, tras el lanzamiento de la Xbox One tiene los días contados.
El hardware de la Xbox 360 se centra en un procesador denominado Xenon, diseñado por Microsoft en colaboración por IBM. Por esto, se basa en la arquitectura PowerPC con un chip de tres núcleos en el que el sistema emula un total de seis hilos, a razón de dos por núcleo. A medida que han ido pasando los años y Microsoft ha ido lanzando nuevas versiones de la 360 (recordad el cambio de diseño que tuvo), el hardware también ha ido evolucionando: la CPU empezó fabricándose en 90 nanómetros, luego pasó a a 65 y más recientemente ha terminado en los 45 nanómetros, siempre manteniendo una lista de especificaciones prácticamente sin cambios, salvo en detalles como el consumo energético o las temperaturas de funcionamiento (ambos datos cada vez menores).
En lo que respecta al apartado gráfico, Xbox 360 incluye una GPU denominada Xenos y que, al igual que con el procesador central, Microsoft diseñó en colaboración con otra compañía experta en el campo: en este caso fue ATi la que cogió su X1800 de la época y la remodeló para adaptarla a los requisitos de la consola. Igualmente, con los años también han ido evolucionando su proceso de fabricación, pasando por 90, 65 y 45 nanómetros.
Todos conocemos la calidad gráfica que es capaz de ofrecer la Xbox 360, y cuantificando el rendimiento ofrecido por la consola nos encontraremos con que es capaz de ejecutar unos 240 GFLOPS.
Y así son los smartphones más potentes
El mercado de los smartphones es enorme, y ofrece un hardware de lo más dispar. La mayoría basados en ARM, los smartphones más potentes de fabricantes como Samsung, Sony, HTC o LG juegan con características muy parejas entre si, casi todas idénticas salvo por su aspecto externo y algunos detalles como la pantalla.
Muchas de las plataformas actuales tienen modelos que podemos situar en las primeras posiciones de nuestro ranking de rendimiento. Qualcomm tiene a los Snapdragon 800 (800, 801, 808, 810), Samsung a los Exynos 5, NVidia a Tegra K1 y Apple a su más reciente A7. Todas estas están por encima de otras opciones del mercado (MediaTek, Allwinner), y de las cuatro mencionadas vamos a centrarnos en las dos primeras: Snapdragon y Exynos, ambas basadas en ARM y con SoC de cuatro o más núcleos, así como GPU último-modelo que será en la que hoy nos centraremos.
Es digna de mención la evolución del hardware de los smartphones sucedida en los pasados años. Los terminales móviles han dado un salto de rendimiento muy importante en las dos últimas generaciones multiplicando por varios enteros las capacidades de cómputo de cada uno de los SoC. Como veréis más adelante, de 6/10 GFLOPS en las generaciones de 2011 hemos dado el salto a 51/130 en 2013, y lo previsto para este 2014 es que esta tendencia se mantenga tal. Más adelante encontraréis toda la información detallada de la potencia de cómputo y las características de cada generación.
Al contrario que la Xbox 360, que en prácticamente todos los casos ejecuta juegos en una resolución 720p, los diferentes teléfonos tienen características muy dispares que afectan al rendimiento final del dispositivo. Diferentes pantallas y resoluciones, cantidades de RAM o sistemas operativos que, aunque puedan estar basados en el mismo kernel, ejecutan diferentes servicios y aplicaciones. En el mundo de los smartphones, a pesar de la existencia de varias plataformas procedentes de distintos fabricantes todas ellas muestran un rendimiento bastante parejo en sus gamas altas. Esto es: un Qualcomm Snapdragon 800 ofrece una capacidad de proceso cercana a la de su homólogo en Samsung, que sería un Exynos 5; un Snapdragon S4 está a la altura del Exynos 5 de su año.
Una diferencia a mencionar, y que seguro llamará la atención de muchos, son las fechas de lanzamiento de cada smartphone, aunque varios modelos estén contenidos en una misma generación. Algunos fabricantes inauguran plataforma (véase los casos de las familias Galaxy, Xperia, One o G, que ponen en el mercado los primeros smartphones con una determinada plataforma) mientras que otros aguantan unos cuantos meses para implementar el mismo hardware (lo que sucede con los Nexus, que siempre suelen salir un tiempo más tarde). A pesar de ello estamos ante una misma generación de teléfonos, pese a esos meses de diferencia en hacerse efectivo el lanzamiento de cada terminal.
Mirando hacia el pasado para estimar el futuro
Ya hemos mencionado que los FLOPS nos indican cuál es el ritmo con el que se ejecutan ciertas operaciones en un procesador. Toda GPU, sea del tipo que sea, en cualquier época en la que haya sido diseñada y fabricada, tiene un cierto valor de FLOPS universal y que nos permitirá comparar las capacidades de ejecución en este tipo de datos cuya ejecución, como ya hemos comentado en los primeros párrafos de este artículo, es muy común en la actualidad.
Para este artículo hemos recopilado las principales características técnicas de las familias Google Nexus y Samsung Galaxy S relacionadas con el SoC que utilizan. Tanto una como otra son de las más longevas del mercado, ambas nacidas en 2010 y con nuevas versiones a un ritmo anual. En este sentido Samsung ya tiene su modelo de 2014, el Galaxy S5, mientras que Google aún no ha presentado su modelo para el presente año y, por ello, debemos quedarnos en la pasada generación: el Nexus 5 de noviembre de 2013.
Junto a cada una de las dos tablas con la información técnica también adjuntamos el par de gráficas con el crecimiento de los FLOPS en cada generación y familia, donde se puede conocer de forma visual el momento en el que el rendimiento se incrementó de forma mucho más notable.
En estas gráficas también se adjunta otra información. Por un lado tenemos los FLOPS de la Xbox 360: son una constante, 240 FLOPS como ya comentamos antes, y que nos servirán para comprobar dónde se encuentra el punto de intersección con la recta de estimación del crecimiento en el rendimiento, que merece una explicación detallada.
El incremento en el rendimiento de cada generación tiene asociado un segmento que, dado que estamos hablando de crecimientos, siempre va a tener una pendiente positiva, >0
. En caso de que esta pendiente fuese negativa entonces estaríamos hablando de que una cierta generación del año A
sería inferior -- desde el punto de los FLOPS -- a la generación anterior, la del año A-1
. Esto es inviable en el mercado, ya que a efectos prácticos supondría un paso hacia atrás en cuanto al rendimiento se refiere y eso implicaría una pésima imagen para el fabricante.
Cada uno de los segmentos tiene asociada una pendiente que será mayor cuanto mayor sea la diferencia de 'la nueva' respecto de la inmediatamente anterior. Por supuesto cada generación de smartphones se comporta de forma distinta cada año, con lo que las pendientes de cada segmento también son distintas. Además, se puede observar que el crecimiento experimentado por estas gamas altas en los años 2012 y 2013 es muy superior al de años anteriores, coincidiendo no sólo con la llegada de nuevos núcleos a Qualcomm y Samsung si no también con nuevas arquitecturas, como en este caso concreto es la big.LITTLE a los Exynos 5 Octa.
En color azul se ha plasmado la recta cuya pendiente es la media a las pendientes de los segmentos interanuales, y con ella vamos a realizar la estimación de lo que esperamos vaya a suceder en los próximos años teniendo en cuenta cuál ha sido el comportamiento del hardware en estas últimas generaciones. La clave será conocer el punto donde la recta estimadora interseca con la recta de la Xbox 360 y sus 240 FLOPS, ya que será en este periodo temporal cuando se ofrezca el mismo rendimiento.
Nota: algunos de los FLOPS de las diferentes plataformas han sido recogidos de la información plasmada en esta web, donde se recopila una amplia lista de componentes y dispositivos así como sus FLOPS estimados. Hemos contrastado esta información con otras fuentes (en algunos casos documentos oficiales de fabricantes; en otros información procedente de otros canales) y no hemos hallado ningún indicio de posibles errores
Estimación con los Google Nexus
Nexus One | Nexus S | Galaxy Nexus | Nexus 4 | Nexus 5 | |
---|---|---|---|---|---|
Fabricante | HTC | Samsung | Samsung | LG | LG |
Lanzamiento | Enero 2010 | Diciembre 2010 | Octubre 2011 | Noviembre 2012 | Noviembre 2013 |
CPU | Qualcomm Snapdragon QSD8250 | Samsung Exynos 3110 | Ti OMAP 4460 | Qualcomm Snapdragon S4 APQ8064 | Qualcomm Snapdragon 800 MSM8974 |
Núcleos | 1 (Scorpion ARMv7) | 1 (Cortex-A8 ARMv7) | 2 (Cortex-A9 ARMv7) | 4 (Krait 200 ARMv7) | 4 (Krait 400 ARMv7) |
Frec. CPU | 1,0 GHz. | 1,0 GHz. | 1,2 GHz. | 1,5 GHz. | 2,3 GHz. |
GPU | Adreno 200 | PowerVR SGX540 | PowerVR SGX540 | Adreno 320 | Adreno 330 |
Frec. GPU | 133 MHz. | 200 MHz. | 384 MHz. | 400 MHz. | 450 MHz. |
GFLOPS S/P | 2,1 GFLOPS | 3,2 GFLOPS | 6,1 GFLOPS | 57 GFLOPS | 130 GFLOPS |
Estimación con los Samsung Galaxy S
Galaxy S i9000 | Galaxy S II i9100 | Galaxy S3 i9300 | Galaxy S4 i9505 | Galaxy S5 G900F | |
---|---|---|---|---|---|
Lanzamiento | Marzo 2010 | Abril 2011 | Mayo 2012 | Abril 2013 | Abril 2014 |
CPU | Samsung Exynos 3110 | Samsung Exynos 4210 | Samsung Exynos 4412 | Qualcomm Snapdragon 600 APQ8064T | Qualcomm Snapdragon 801 MSM8974AC |
Núcleos | 1 (Cortex-A8 ARMv7) | 2 (Cortex-A9 ARMv7) | 4 (Cortex-A9 ARMv7) | 4 (Krait 300 ARMv7) | 4 (Krait 400 ARMv7) |
Frec. CPU | 1,0 GHz. | 1,2 GHz. | 1,4 GHz. | 1,9 GHz. | 2,5 GHz. |
GPU | PowerVR SGX540 | Mali-400 | Mali-400MP4 | Adreno 320 | Adreno 330 |
Frec. GPU | 200 MHz. | 266 MHz. | 440 MHz. | 400 MHz. | 550 MHz. |
GFLOPS S/P | 3,20 GFLOPS | 9,60 GFLOPS | 15,84 GFLOPS | 86,40 GFLOPS | 158,40 GFLOPS |
Las predicciones
A la vista de la información de las gráficas y los estimadores que hemos utilizado podemos sacar algunas conclusiones.
-
Estimamos que la familia Nexus llegará al rendimiento gráfico de la Xbox 360 a mediados de 2017.
-
Galaxy S tardará algo menos y, con la información aportada, será en los últimos meses de 2017 cuando sobrepase el rendimiento de una Xbox 360.
Debemos mencionar que nosotros hemos utilizado un estimador: una recta cuya pendiente es la media de los segmentos que han creado las diferentes evoluciones a lo largo de los últimos años. Es un estimador y su fiabilidad no es 100%, pero nos sirve para realizar una aproximación.
En este sentido también debemos tener en cuenta otros factores. Tanto en Nexus como en Galaxy se observan notables incrementos del rendimiento en las dos últimas generaciones, llegando incluso a duplicar las cifras. de 57 a casi 130 en la de Google, y de 86 a 158 GFLOPS en la de Samsung. Ya mencionamos anteriormente que estas diferencias tan bruscas son debidas a los importantes cambios a nivel de arquitectura en ambas familias (principalmente nuevos núcleos Krait en los Snapdragon), algo puntual y poco frecuente que se ha mantenido en las últimas dos generaciones, pero que no está previsto se prolongue en el tiempo.
De cara al futuro, los principales crecimientos estarán motivados por los primeros chips en 64 bits -- previstos a finales de este año/principios del que viene -- y los respectivos sistemas operativos compatibles. La combinación de hardware y software en 64 bits no supondrá una gran mejora desde el primer momento, pero sí irá ganando rendimiento con el tiempo a medida que los desarrolladores de las dos partes vayan puliendo sus respectivos productos. Esto podría ocurrir a finales de 2015 o durante 2016, cuando previsiblemente volveremos a ver otro gran incremento como el sucedido con los Nexus 4 y Galaxy S4, que adelantaría nuestra estimación unos pocos meses.
Ver 110 comentarios