Cómo hacer que los ordenadores consuman menos energía

Cómo hacer que los ordenadores consuman menos energía
Este contenido ha sido traducido automáticamente con IA.

A medida que los transistores se hacen más pequeños, también se vuelven menos fiables. Aumentar su voltaje de funcionamiento puede ayudar, pero eso implica un aumento correspondiente del consumo de energía.

Como la tecnología de la información consume una proporción cada vez mayor de los recursos energéticos del mundo, algunos investigadores y fabricantes de hardware están explorando la posibilidad de permitir que los chips cometan errores en algunos cálculos ocasionales. En muchas aplicaciones populares —como el renderizado de vídeo—, es probable que los usuarios no notaran la diferencia, y esto podría mejorar considerablemente la eficiencia energética.

En la conferencia Object-Oriented Programming, Systems, Languages and Applications (OOPSLA) de este año, investigadores del Laboratorio de Ciencias de la Computación e Inteligencia Artificial del MIT presentaron un nuevo sistema que permite a los programadores identificar secciones de su código que pueden tolerar cierto margen de error. A continuación, el sistema determina qué instrucciones del programa asignar a componentes de hardware poco fiables para maximizar el ahorro de energía y, al mismo tiempo, cumplir los requisitos de precisión de los programadores.

El sistema, llamado Chisel, también incluye una herramienta que ayuda a los programadores a evaluar con precisión cuánto error pueden tolerar sus programas. Si el 1 % de los píxeles de una imagen se renderiza incorrectamente, ¿lo notará el usuario? ¿Y si es el 2 % o el 5 %? Chisel simula la ejecución del algoritmo de renderizado de imágenes en hardware poco fiable tantas veces como lo solicite el programador y con tantas tasas de error diferentes como este indique. Así se elimina la necesidad de hacer conjeturas para determinar los requisitos de precisión.

Los investigadores probaron su sistema con varios algoritmos comunes de procesamiento de imágenes y análisis financiero, utilizando diversos modelos de hardware poco fiable tomados de la literatura de investigación. En las simulaciones, el ahorro de energía resultante osciló entre el 9 % y el 19 %.

Resultados acumulados

El nuevo trabajo se basa en un artículo presentado en la OOSPLA del año pasado, que describía un lenguaje de programación llamado Rely. Cada artículo recibió uno de los premios al mejor artículo de la conferencia.

Rely ofrece el mecanismo para especificar los requisitos de precisión e incluye un operador —un punto— que indica que una instrucción determinada puede ejecutarse en hardware poco fiable. En el trabajo presentado el año pasado, los programadores tenían que insertar los puntos manualmente. Chisel los inserta automáticamente y garantiza que la asignación maximice el ahorro de energía.

«Una de las observaciones que surgieron de toda nuestra investigación anterior fue que, por lo general, los cálculos que analizábamos dedicaban la mayor parte del tiempo a una o varias funciones que exigían mucha capacidad de cómputo», dice Sasa Misailovic, estudiante de posgrado de ingeniería eléctrica y ciencias de la computación y autor principal del nuevo artículo. «Llamamos “núcleos” a esos cálculos y nos centramos en ellos».

En el artículo también participan el asesor de Misailovic, Martin Rinard, profesor del Departamento de Ingeniería Eléctrica y Ciencias de la Computación (EECS); Sara Achour y Zichao Qi, también estudiantes del grupo de Rinard; y Michael Carbin, quien obtuvo su doctorado bajo la dirección de Rinard y se incorporará al profesorado del EECS el próximo año.

En la práctica, dice Misailovic, los programas suelen tener solo unos pocos núcleos. En principio, Chisel podría haberse diseñado para encontrarlos automáticamente. Sin embargo, probablemente la mayoría de los desarrolladores que trabajan con código de alto rendimiento quieran mantener cierto grado de control sobre lo que hacen sus programas, dice Rinard. Además, por lo general ya utilizan herramientas que facilitan la identificación de núcleos.

Explosión combinatoria

Sin embargo, un solo núcleo puede constar de 100 instrucciones o más, y cualquier combinación de ellas podría asignarse a hardware poco fiable. Examinar manualmente todas las combinaciones posibles y evaluar sus efectos tanto en la precisión de los cálculos como en el ahorro de energía seguiría siendo una tarea que exigiría demasiado tiempo.

Los investigadores desarrollaron tres expresiones matemáticas independientes que describen la precisión de los cálculos, la fiabilidad de la ejecución de las instrucciones y el ahorro de energía en función de cada instrucción. Estas expresiones acotan la búsqueda que debe realizar el sistema para determinar qué instrucciones asignar a hardware poco fiable. Ese problema más sencillo —aunque aún complejo— puede resolverse con software disponible en el mercado.

«Creo que es un trabajo brillante», afirma Luis Ceze, profesor asociado de ciencias de la computación e ingeniería en la Universidad de Washington. «Todas las tendencias apuntan a que el hardware del futuro será poco fiable, porque esa es una forma de hacerlo más eficiente desde el punto de vista energético y más rápido».

Sin embargo, Ceze señala que el modelo de hardware utilizado por los investigadores del MIT requiere especificar la fiabilidad con la que se ejecuta cada operación. «Eso limita el ahorro que se puede obtener mediante la aproximación», dice Ceze. «Creo en una aproximación de granularidad mucho más gruesa. Se ejecuta de una vez un conjunto grande de operaciones, de manera aproximada. Eso puede llevarte de decenas de puntos porcentuales a decenas de [múltiplos] de mejora en rendimiento y eficiencia energética».

Sobre si el trabajo de los investigadores del MIT puede adaptarse para incorporar un modelo así, Ceze dice: «Se podría hacer. De hecho, mi grupo ha realizado un trabajo similar en otro contexto. Así que sin duda es viable».

Esta publicación apareció primero en MIT News

Autor: Larry Hardesty es colaborador invitado de MIT News.

Imagen: Un hombre escribe en el teclado de un ordenador en Varsovia, en esta imagen del 28 de febrero de 2013.  REUTERS/Kacper Pempel/Files

Comparte esto:

Licencia y republicación
Los artículos del Foro Económico Mundial pueden volver a publicarse de acuerdo con la Licencia Pública Internacional Creative Commons Reconocimiento-NoComercial-SinObraDerivada 4.0, y de acuerdo con nuestras condiciones de uso. Las opiniones expresadas en este artículo son las del autor y no del Foro Económico Mundial.