Cada año que pasa, los fabricantes de smartphones lanzan un nuevo dispositivo al mercado. Y estos lanzamientos traen nuevas tecnologías, mejores prestaciones internas y, con menor frecuencia de la que nos gustaría, un nuevo diseño con el que pretendan que pasemos por caja a comprarlo.
Pero la sensación que personalmente tengo es que estamos alcanzando un límite tecnológico que hace que las mejoras cada año sean menos notables. Sí, tenemos nuevos modelos de procesadores cada año. Sí, tenemos más GB de RAM. Sí, Android cada vez consume menos recursos. Sin embargo… ¿dónde están las mejoras que sí podrían potenciar considerablemente el rendimiento de nuestros dispositivos?
Hoy vamos a jugar a ser todo-poderosos durante el resto de este artículo, y lo vamos a hacer planteando algunas mejoras que se nos han ocurrido en El Androide Libre al debatir este tema. En resumen, vamos a detallar los cambios que creemos que todavía se pueden aplicar para que nuestros móviles funcionen más rápido.
4 GB de RAM son suficientes, ¿por qué no reducir ahora la latencia?
Las memorias tienen algo que se llama latencia. Esta es la forma de cuantificar el tiempo que tarda en acceder a ella y marca la cantidad de información que se puede leer en un periodo de tiempo. A menor latencia, mayor cantidad de información podemos leer en un segundo porque menos tardamos en acceder y salir.
Menor latencia mejoraría la ejecución de programas más livianos.
Si redujésemos, mediante mejoras de hardware y software, el tiempo de acceso podríamos conseguir una velocidad de respuesta mayor.
La incorporación de las memorias RAM LPDDR4 es una mejora casi completa
Las memorias LPDDR4 han mejorado considerablemente el rendimiento de nuestros dispositivos, es indudable, pero esto no repercute en el día a día. Estas memorias pasan a tener dos buses de datos de 16 bits (sólo había uno en LPDDR3) para así tener 32 bits. Lo que se traduce en un ancho de banda de 17GB/s. Nada mal. Pero es mejorable aún más.
De hecho, la tecnología Micron puede hacer que se alcancen 2133MHz (veces que se accede a la memoria en un segundo) y manejar 4266 MT’s (paquetes de datos de memoria). Esto da un pico de transferencia de 32 GB/s con procesadores de 64 bits.
LPDDR4 mejora la gestión de grandes cantidades de memoria: 4K, cámara lenta, juegos potentes…
Lo que sucede, es que un aumento en el ancho de banda no repercute en una ejecución más rápida de las órdenes más básicas. Sino que mejora la grabación a 4K o cámara lenta y la ejecución de juegos con contenido pesado.
Sin embargo, una reducción de la latencia sí se reflejaría en una ejecución más rápida de aplicaciones pequeñas como el cliente de correo, Twitter, etc. Decir que se podría hacer un mejor uso de las memorias LPDDR4 si la asignación de páginas en memoria fuera en marcos grandes y por tanto, de una sola carga sacaras bastante información. Aunque esto no es factible, al menos bajo mi punto de vista, por la gestión de toda esta cantidad de información a la vez, los hilos que pueda tener una aplicación, etc.
¿Y aumentar la frecuencia de acceso a memoria?
Esto es lo que hemos conseguido al pasar a la tecnología LPDDR4 en los dispositivos Android. Una mejor gestión de paquetes grandes en memoria. Pero aumentar la frecuencia de reloj, de los 1600MHz de antes a los 2133MHz de ahora, se traduce en un aumento de la latencia. Algo en contra de lo que estábamos diciendo anteriormente. Una menor latencia favorece a los procesos cortos mientras que una mayor latencia permite manejar un mayor número de páginas.
Kernel de Android, ¿y si lo modificamos?
El software también es un factor muy importante a la hora de mejorar el rendimiento. Los algoritmos son un factor clave a la hora de optimizar el hardware y es por eso que un cambio en la gestión de la E/S de la memoria RAM, procesador o almacenamiento interno supondría un rendimiento mayor.
Un cambio del kernel de Android es inviable a día de hoy.
Sí, lo sé, no es tan fácil como parece crear un algoritmo ni es tan fácil hacer un cambio de kernel sin que todo lo ya existente se vaya al traste. Pero lo dijimos al comienzo, aquí vamos a jugar a ser Dios y fijar el horizonte dentro de muchos años.
Con un cambio de kernel, como ya dijimos, podríamos hacer más eficiente la entrada y salida de los datos en memoria. Esto supondría un menor retardo a la hora de gestionar programas livianos y por tanto, compensaría el aumento de la latencia al pasar a LPDDR4.
Además, si este kernel también ofreciera los datos de forma más eficiente al procesador, este podría hacer un mejor uso de su frecuencia de reloj o aumentarla incluso. Centrarse en el multiprocesamiento de peticiones gracias a la frecuencia de los actuales procesadores y sus núcleos.
Un cambio de kernel sería marcar un punto y aparte en el hardware
Pero un cambio de kernel supondría un verdadero quebradero de cabeza para los fabricantes de hardware. Actualmente los componentes de un dispositivo Android están diseñados para que funcionen de una manera óptima con el kernel actual. Un cambio de kernel supondría un borrón y cuenta nueva. Lo que reiniciaría el mercado de componentes.
Todos los fabricantes tendrían que ponerse manos a la obra para crear el mejor procesador y Qualcomm podría perder su liderazgo en el mercado. Además, dicho kernel no funcionaría correctamente en un procesador actual ya que no está diseñado de manera óptima para su ejecución.
Tecnologías que sí son una mejora notable: UFS en Samsung
Pero no todo es agua estancada en el sector de los dispositivos Android. Samsung ha apostado por cambiar el método de almacenamiento interno en su Samsung Galaxy Note 7. En este nuevo buque insignia de Samsung tenemos 64 GB con tecnología UFS 2.0 en su interior. Hablamos de una tecnología que mejora considerablemente la velocidad con la que se lee y escribe información en la memoria del dispositivo.
UFS mejora el rendimiento del dispositivo al aumentar la cantidad de datos que maneja al segundo.
Si echamos la vista a las prestaciones de las tarjetas UFS que se lanzarán al mercado, podemos ver como la tasa de lectura y escritura máxima es de 530/170 MB/s respectivamente. Una velocidad que no será la que tiene como componente interno del dispositivo. Como componente integrado, Samsung habrá trabajado en hacerlo un poco más rápido. Lo suficiente para estar por encima de los mecanismos de almacenamiento en memorias sólidas que existen ahora.
No sabemos lo que nos deparará el futuro de los dispositivos. Sólo sabemos que cada año que pasa tenemos una nueva tecnología que mejora el rendimiento del modelo anterior. Ya sea porque esa capaz de sacar más luz de una zona oscura al hacer una fotografía, un nuevo procesador a más frecuencia o algo que llame la atención del comprador.
Y vosotros, ¿qué creéis que a estas alturas puede mejorar la velocidad de un smartphone?