Benchmarking en móviles, poniéndole números a la potencia

Benchmarking en móviles, poniéndole números a la potencia
19 comentarios Facebook Twitter Flipboard E-mail

Nos encantan la velocidad y la potencia de los modernos smartphones. Son argumentos más que llamativos para los usuarios que piensan en hacerse con uno de los nuevos buques insignia de los fabricantes, que integran lo mejor de lo mejor en sus soluciones de alta gama.

Procesadores con mayor número de núcleos y mejores frecuencias de reloj, chips gráficos capaces de convertir al móvil en una sorprendente consola portátil o chips de memoria que aceleran la transferencia de datos. Todo ayuda a lograr un rendimiento fluido en todo tipo de situaciones, sobre todo ahora que los smartphones se han convertido en pequeños ordenadores portátiles. Y para evaluar la potencia que ofrecen todos esos componentes han aparecido aplicaciones de benchmarking que nos permiten comparar el rendimiento que ofrecen esos dispositivos en distintas áreas.

Los modernos procesadores móviles suelen ofrecer garantías más que suficientes para poder suplir toda la potencia necesaria a las aplicaciones, pero por mucho que los fabricantes lo aseguren, puede que los usuarios no se fíen de las afirmaciones de esos fabricantes, y quieran tener acceso a una forma objetiva de poder conocer la potencia de un procesador en un terminal determinado.

Es ahí donde entran en juego las utilidades de benchmarking, que permiten evaluar el comportamiento del procesador principal, procesador gráfico o memoria --y en ocasiones otros apartados-- y ofrecer un índice de rendimiento final. Ese índice de rendimiento se puede contrastar con los índices de rendimiento de otros procesadores y otros terminales que pueden llevar más tiempo en el mercado y que por tanto son una referencia válida, y eso permite a los usuarios hacerse una idea aproximada de la potencia que pueden obtener de los microprocesadores y los smartphones en los que están interesados.

Tipos de benchmarks

Benchmarking en móviles

En el mercado hay un gran número de soluciones de benchmarking, y todas ellas podrían clasificarse en dos grandes grupos:

  1. Benchmarks sintéticos: este tipo de aplicaciones ponen a prueba diversos componentes sometiendo dichos componentes a una carga de trabajo elevada y comprobando la velocidad y eficiencia con la que se completan esas cargas de trabajo. Estas aplicaciones no van más allá de su objetivo, el de producir un valor numérico que es comparable a otro tomado anteriormente. Su ventaja es clara: están orientados a componentes específicos, y son fácilmente replicables. Por ejemplo, un benchmark sintético obtendrá un valor idéntico o muy similar (si no hay servicios o aplicaciones en segundo plano que influyan en el rendimiento) en dos smartphones iguales, y por esa misma razón son una herramienta muy válida para establecer referencias de rendimiento.
  2. Benchmarks de aplicación: la diferencia fundamental está en que estas pruebas se ejecutan con aplicaciones reales que los usuarios utilizan en su día a día y que permiten comprobar el rendimiento de una plataforma con esa aplicación en concreto. La codificación de vídeo, la ejecución de código JavaScript de los navegadores web, el renderizado de imágenes en 3D o la ejecución de juegos son ejemplos de esos escenarios, y esa aplicación de pruebas "del mundo real" es tan interesante o más que la que proporcionan los benchmarks sintéticos. El problema es que los valores de salida de estas pruebas pueden verse afectados por numerosos parámetros al comprobarse el rendimiento de plataformas en conjunto y no de componentes particulares, como suele suceder con el primer grupo de utilidades de benchmarking.

¿Cómo funciona un benchmark?

Benchmarking en móviles

Tanto en las utilidades sintéticas como en los benchmarks de aplicación el concepto es el mismo: establecer una carga de trabajo normalmente elevada que permita evaluar el comportamiento de un componente o de una plataforma. La carga de trabajo está muy pensada para poner a prueba esos apartados específicos o la plataforma como un todo.

Por ejemplo, en pruebas sintéticas se ejecutan pequeños programas que evalúan funciones muy concretas de diversos componente, como funciones matemáticas para establecer el comportamiento las operaciones en coma flotante o con enteros en el procesador principal, o programas que se limitan a transferir datos en memoria para comprobar la velocidad de lectura o escritura de esos datos.

En el caso de las pruebas de aplicación, los programadores simplemente se limitan a crear scripts que simulan acciones que un usuario convencional podría realizar con la aplicación en cuestión. Por ejemplo, scripts que hagan el renderizado de un modelo 3D concreto, o los famosos scripts que en juegos de última generación hacen que el personaje protagonista se mueva o actúe de una manera concreta u siguiendo el mismo patrón en uno de los escenarios ofrecidos en el juego. Eso hace que la prueba sea reproducible en otras plataformas, desde luego, pero existen muchos factores que pueden influir en los números finales que se obtienen como resultado.

Algunos ejemplos prácticos

Benchmarking en móviles

En el mundo de los PCs y portátiles las aplicaciones de benchmarking han sido un referente clásico a la hora de analizar un equipo, y desde hace tiempo existen soluciones con mucha reputación como 3DMark, PCMark o los rigurosos tests del organismo SPEC como SPECviewperf, a los que se suman pruebas específicas para evaluar prácticamente cada componente de estos equipos. Sin embargo, en dispositivos móviles por ahora el mercado está comenzando a ofrecer este tipo de soluciones, aunque ya hay varias pruebas que se han convertido en el estándar de facto en este segmento.

Entre las más destacadas están AnTuTu y Quadrant, aplicaciones de benchmark que analizan el comportamiento de la CPU, la GPU o la velocidad de transferencia de los sistemas de almacenamiento para ofrecer un índice general. Como en cualquier benchmark que se precie, al valor numérico en puntos que se concede según las pruebas debe acompañarle la explicación de si esa magnitud es mejor cuanto más alta o cuanto más baja.

En el caso de AnTuTu o de Quadrant, "más es mejor", o lo que es lo mismo: quien logra mayor puntuación es el que a priori tiene mayor potencia y prestaciones hardware para superar con éxito y rapidez las pruebas realizadas. En dos gráficas realizadas recientemente con el HTC One como protagonista se puede comprobar que este modelo de última generación con un procesador quad-core Snapdragon 600 a 1,7 GHz deja atrás a todos sus competidores actuales:

Benchmarking móviles - AnTuTu y Quadrant

En la imagen se puede comprobar como en ambos benchmarks el HTC One logra una puntuación claramente superior a sus rivales, y aquí podemos concluir también que modelos como el Sony Xperia Z, el HTC One X o el LG Optimus G están a la par en rendimiento según el resultado de la prueba Quadrant. Este dato nos permitiría descartar la potencia como argumento para decidirnos por uno u otro en el caso de esos 3 últimos modelos: todos son más o menos igual de potentes, así que tendríamos que decidirnos en base a otras prestaciones, como su cámara fotográfica, su diseño o la versión de Android que integran, por poner algún ejemplo.

Lo mismo ocurre con otro tipo de pruebas, en las que por ejemplo mediríamos los tiempos de transferencia de lectura y escrituras en chips de memorias (en este caso "menos es más", ya que quien logre mejores tiempos será más rápido), y que como en el caso de AnTuTu o Quadrant los permiten determinar cuál es el terminal más capaz. Es el caso de la aplicación BenchmarkPi, que trata de averiguar un número determinado de decimales del número Pi en el menor tiempo posible. Como se puede ver en una gráfica similar a la anterior, el HTC One volvió a demostrar su potencia de nuevo:

Benchmarking en móviles - BenchmarkPi

A esos test de rendimiento global les podemos añadir otras pruebas más específicas como GLBenchmark, que simplemente evalúa el rendimiento gráfico haciendo uso de la GPU de estos terminales y de la implementación de las librerías OpenGL 2.x integradas en Android para la ejecución sobre todo de videojuegos. Así pues, si estáis buscando un terminal que sea capaz de ejecutar juegos 3D sin problemas, deberéis prestar especial atención a esta prueba.

Lo mismo podríamos decir de las pruebas dirigidas a evaluar la autonomía de las baterías, que nos permiten saber (de nuevo, a priori) si podremos lograr un uso prolongado del smartphone sin tener que recargar la batería a cada momento. En este campo existen pruebas como BatteryBenchmark o Nova Battery Tester que pueden darnos argumentos interesantes. En cualquier caso, mucho nos tememos que el consumo de batería es un aspecto especialmente difícil de medir con garantías: cada usuario tiene un modelo distinto de uso, con distintos servicios y aplicaciones ejecutándose en cada momento y con mayor o menor ejecución de herramientas de cálculo intensivo como juegos o vídeos que aceleran de forma drástica la reducción de batería disponible.

La potencia no lo es todo

Sony Xperia Z

Como en todo, hecha la ley, hecha la trampa: en el mundo del benchmarking se ha introducido también la picaresca de fabricantes que tratan de quedar lo mejor posible modificando algunas áreas de sus productos a base normalmente de modificaciones en los controladores de dispositivo.

Son famosos y muy conocidos los casos de las tarjetas gráficas de NVIDIA o AMD en el segmento de los PCs y portátiles, y de hecho esta práctica se ha hecho tan común que ya se acepta como algo totalmente normal: al aparecer un nuevo juego que por alguna razón no se comporta del modo esperado con cierta tarjeta gráfica, el fabricante actualiza sus controladores de forma que se corrigen posibles conflictos y se favorece el rendimiento del juego con ese controlador y ese escenario concreto. Esa práctica es muy frecuente en juegos que se usan para benchmarks de aplicación (normalmente, los superventas de la industria del ocio), y por lo tanto es complicado tener referencias válidas con tantos factores en cuenta.

De hecho, a esas circunstancias se une el hecho de que tanto en pruebas sintéticas como de aplicación existen muchos factores que pueden intervenir. Aunque los componentes hardware no se modifiquen, el hecho de ejecutar las pruebas sobre un sistema operativo limpio puede resultar decisivo, pero además de ello hay fabricantes que deshabilitan puertos USB, servicios inútiles para este escenario o componentes que perjudican el rendimiento en pruebas --aunque sean imprescindibles en el día a día-- para salir mejor parados.

En móviles esto ocurre menos por el momento, pero de nuevo comparar dos smartphones o tablets idénticos puede ser complicado si dichos dispositivos no disponen exactamente de la misma configuración software. De hecho, en un escenario ideal el entorno de pruebas se debe aplicar sobre un dispositivo "recién estrenado" y al que no se le hayan aplicado mejoras como las clásicas operaciones de overclocking que obviamente mejoran el rendimiento pero tienen un impacto directo en el consumo de energía (y por tanto, de batería) de estos dispositivos.

Así pues, hay que tomar los resultados de los benchmarks con cierta perspectiva. Demasiados factores intervienen en el resultado final de un entorno de pruebas, y aunque desde luego estas herramientas suelen proporcionar una referencia válida para conocer el rendimiento comparativo de un smartphone o un tablet en ciertos apartados, esos resultados solo dan una pista del rendimiento final, que en gran medida dependerá del software que utilicemos en cada momento.

Comentarios cerrados
Inicio