Debido al crecimiento explosivo de la inteligencia artificial, se estima que los centros de datos consumirán hasta el 12 por ciento de la electricidad total de EE. UU. para 2028, según el Laboratorio Nacional Lawrence Berkeley. Mejorar la eficiencia energética de los centros de datos es una de las formas en que los científicos se esfuerzan por hacer que la IA sea más sostenible.
Con ese objetivo, investigadores del MIT y del MIT-IBM Watson AI Lab desarrollaron una herramienta de predicción rápida que les dice a los operadores de centros de datos cuánta energía se consumirá al ejecutar una carga de trabajo de IA particular en un determinado procesador o chip acelerador de IA.
Su método produce estimaciones de potencia fiables en unos pocos segundos, a diferencia de las técnicas de modelado tradicionales que pueden tardar horas o incluso días en producir resultados. Además, su herramienta de predicción se puede aplicar a una amplia gama de configuraciones de hardware, incluso a diseños emergentes que aún no se han implementado.
Los operadores de centros de datos podrían utilizar estas estimaciones para asignar eficazmente recursos limitados entre múltiples modelos y procesadores de IA, mejorando la eficiencia energética. Además, esta herramienta podría permitir a los desarrolladores de algoritmos y proveedores de modelos evaluar el consumo potencial de energía de un nuevo modelo antes de implementarlo.
“El desafío de la sostenibilidad de la IA es una pregunta apremiante que debemos responder. Debido a que nuestro método de estimación es rápido, conveniente y proporciona retroalimentación directa, esperamos que haga que los desarrolladores de algoritmos y los operadores de centros de datos sean más propensos a pensar en reducir el consumo de energía”, dice Kyungmi Lee, postdoctorado del MIT y autor principal de un artículo sobre esta técnica.
En el artículo la acompañan Zhiye Song, estudiante de posgrado en ingeniería eléctrica e informática (EECS); Eun Kyung Lee y Xin Zhang, directores de investigación de IBM Research y del MIT-IBM Watson AI Lab; Tamar Eilam, miembro de IBM, científica jefa de informática sostenible en IBM Research y miembro del MIT-IBM Watson AI Lab; y la autora principal Anantha P. Chandrakasan, rectora del MIT, profesora Vannevar Bush de Ingeniería Eléctrica e Informática y miembro del Laboratorio de IA Watson del MIT-IBM. La investigación se presentará esta semana en el Simposio internacional IEEE sobre análisis de rendimiento de sistemas y software.
Acelerar la estimación de energía
Dentro de un centro de datos, miles de potentes unidades de procesamiento de gráficos (GPU) realizan operaciones para entrenar e implementar modelos de IA. El consumo de energía de una GPU en particular variará según su configuración y la carga de trabajo que esté manejando.
Muchos métodos tradicionales utilizados para predecir el consumo de energía implican dividir una carga de trabajo en pasos individuales y emular cómo se utiliza cada módulo dentro de la GPU paso a paso. Pero las cargas de trabajo de IA, como el entrenamiento de modelos y el preprocesamiento de datos, son extremadamente grandes y pueden tardar horas o incluso días en simularse de esta manera.
“Como operador, si quiero comparar diferentes algoritmos o configuraciones para encontrar la forma de proceder más eficiente desde el punto de vista energético, si una sola emulación va a llevar días, eso resultará muy poco práctico”, afirma Lee.
Para acelerar el proceso de predicción, los investigadores del MIT intentaron utilizar información menos detallada que pudiera estimarse más rápidamente. Descubrieron que las cargas de trabajo de IA suelen tener muchos patrones repetibles. Podrían utilizar estos patrones para generar la información necesaria para una estimación de potencia confiable pero rápida.
En muchos casos, los desarrolladores de algoritmos escriben programas para que se ejecuten de la manera más eficiente posible en una GPU. Por ejemplo, utilizan optimizaciones bien estructuradas para distribuir el trabajo entre núcleos de procesamiento paralelos y mover fragmentos de datos de la manera más eficiente.
“Estas optimizaciones que utilizan los desarrolladores de software crean una estructura regular, y eso es lo que intentamos aprovechar”, explica Lee.
Los investigadores desarrollaron un modelo de estimación liviano, llamado EnergAIzer, que captura el patrón de uso de energía de una GPU a partir de esas optimizaciones.
Una evaluación precisa
Pero si bien su estimación fue rápida, los investigadores descubrieron que no tomaba en cuenta todos los costos de energía. Por ejemplo, cada vez que una GPU ejecuta un programa, se requiere un costo de energía fijo para instalar y configurar ese programa. Luego, cada vez que la GPU ejecuta una operación con una porción de datos, se debe pagar un costo de energía adicional.
Debido a fluctuaciones en el hardware o conflictos en el acceso o movimiento de datos, es posible que una GPU no pueda utilizar todo el ancho de banda disponible, lo que ralentiza las operaciones y consume más energía con el tiempo.
Para incluir estos costos y variaciones adicionales, los investigadores recopilaron mediciones reales de las GPU para generar términos de corrección que aplicaron a su modelo de estimación.
“De esta manera, podemos obtener una estimación rápida que también es muy precisa”, afirma.
Al final, un usuario puede proporcionar información de su carga de trabajo, como el modelo de IA que desea ejecutar y la cantidad y duración de las entradas del usuario a procesar, y EnergAIzer generará una estimación del consumo de energía en cuestión de segundos.
El usuario también puede cambiar la configuración de la GPU o ajustar la velocidad de funcionamiento para ver cómo dichas opciones de diseño impactan el consumo general de energía.
Cuando los investigadores probaron EnergAIzer utilizando información real de la carga de trabajo de IA de GPU reales, pudieron estimar el consumo de energía con solo un 8 por ciento de error, lo que es comparable a los métodos tradicionales que pueden tardar horas en producir resultados.
Su método también podría usarse para predecir el consumo de energía de futuras GPU y configuraciones de dispositivos emergentes, siempre y cuando el hardware no cambie drásticamente en un corto período de tiempo.
En el futuro, los investigadores quieren probar EnergAIzer en las configuraciones de GPU más nuevas y ampliar el modelo para que pueda aplicarse a muchas GPU que colaboran para ejecutar una carga de trabajo.
“Para realmente lograr un impacto en la sostenibilidad, necesitamos una herramienta que pueda proporcionar una solución rápida de estimación de energía en toda la pila, para diseñadores de hardware, operadores de centros de datos y desarrolladores de algoritmos, para que todos puedan ser más conscientes del consumo de energía. Con esta herramienta, hemos dado un paso hacia ese objetivo”, afirma Lee.
Esta investigación fue financiada, en parte, por el MIT-IBM Watson AI Lab.