Desde aquí, ¿adónde va la informática móvil? Computación heterogénea, parte I

Escrito por , 2 de noviembre de 2013 a las 18:30
Desde aquí, ¿adónde va la informática móvil? Computación heterogénea, parte I
Tecnología

Desde aquí, ¿adónde va la informática móvil? Computación heterogénea, parte I

Escrito por , 2 de noviembre de 2013 a las 18:30

Proporcionar experiencias móviles emergentes y, al mismo tiempo, seguir apostando por dispositivos elegantes y ultraligeros que no se recalienten y con una batería de larga duración es el desafío de Qualcomm. La respuesta, la computación heterogénea.

Los usuarios cada vez queremos más. Y en el caso de dispositivos móviles, buscamos  mejor experiencia de usuario, mayor rendimiento y precios asequibles. Pero, ¿hay un límite en esta carrera?

Hoy nos llegan muchas experiencias y aplicaciones nuevas como, por ejemplo, fotografía computacional, realidad aumentada, física realista en animación computerizada  o reconocimiento del entorno. Estas experiencias no sólo requieren una capacidad muy elevada, sino que suponen mover  nuevos tipos de cargas de trabajo con requisitos diversos.

Por ejemplo, en la realidad aumentada el dispositivo móvil debe analizar continuamente las imágenes procedentes de la cámara, reconocer y rastrear objetos, localizarlos en un espacio tridimensional y superponer imágenes con perspectiva corregida —la parte «aumentada». Estas cargas de trabajo diferentes exigen una gran potencia de procesamiento. Además, las distintas cargas de trabajo se calculan con algoritmos evolutivos, lo que significa que los procesadores deben tener un cierto nivel de programabilidad. Aunque la programabilidad brinda la flexibilidad para procesar diversos algoritmos, esto implica un mayor gasto de energía.

Por lo tanto, el desafío consiste en proporcionar dichas experiencias móviles emergentes y, al mismo tiempo, seguir apostando por dispositivos elegantes y ultraligeros que no se recalienten y con una batería de larga duración.

Y en este caso, la CPU  es sólo una parte de la respuesta. Como decía, la enorme flexibilidad y programabilidad de la CPU impacta en su consumo de energía. De hecho, los planteamientos de escalado de la CPU que se han venido utilizando para responder a esta demanda creciente de procesamiento, dentro de las limitaciones de energía y térmicas de los dispositivos móviles, han derivado en una disminución del rendimiento. Echemos un vistazo a un par de estos métodos:

  1. Escalado de CPU de núcleo único: mejora el rendimiento, al aumentar la frecuencia de reloj de la CPU y las instrucciones por ciclo de reloj (IPC) mediante mejoras en la arquitectura. Las frecuencias de reloj de la CPU están ralentizando su crecimiento. ¿Recuerdan la carrera de los Ghz de las CPU en el mercado de PC? Bueno, esa competencia ha disminuido hace muchos años y la frecuencia máxima está ahora saturada. También las instrucciones por ciclo de reloj (IPC) se han desacelerado debido a la creciente complejidad de la microarquitectura para extraer más rendimiento, que no sólo es un reto por sí misma, sino también por su alto consumo.
  2. Escalado de CPU de núcleos múltiples ha sido el siguiente paso. Al duplicar núcleos en la CPU, se aprovechan los transistores extra para aumentar  el rendimiento máximo teórico en general. Sin embargo, el resultado depende de la capacidad de ejecutar múltiples programas o hilos en paralelo. Basta con echar un vistazo a la Ley de Amdahl para observar con qué rapidez se obtienen rendimientos decrecientes cuando los programas tienen códigos secuenciales. En el mercado de PC, la cantidad de núcleos de CPU se ha fijado principalmente en cuatro núcleos. Además,  la CPU no es necesariamente el procesador más eficiente y tener en funcionamiento muchas unidades CPU a una frecuencia de reloj máxima durante un periodo prolongado es un verdadero reto en dispositivos móviles compactos con limitaciones térmicas.

Entonces, ¿cómo hacer para continuar escalando la capacidad de proceso? Es necesario un enfoque diferente. En Qualcomm apostamos por un nuevo paradigma: la computación heterogénea móvil que aboga por utilizar otros procesadores de forma inteligente para mejorar el rendimiento de aplicaciones, la duración de la batería, y la eficiencia térmica, para posibilitar la evolución de nuevas experiencias móviles. En el siguiente post os explicaremos este concepto con mayor detenimiento.

Imagen: expectlabs via Compfight cc

anterior artículo

Printing houses in 3D to alleviate habitability issues

Printing houses in 3D to alleviate habitability issues
siguiente artículo

¿Qué es la computación heterogénea? Parte II

¿Qué es la computación heterogénea? Parte II

Recomendados