Mirando hacia adelante: Una nueva investigación detalla un proceso que permite que una CPU, una GPU y un acelerador de IA funcionen sin problemas en paralelo en tareas separadas. Este avance pionero podría proporcionar computación increíblemente rápida y energéticamente eficiente, prometiendo duplicar la velocidad de procesamiento general a menos de la mitad del costo de energía.
Investigadores de la Universidad de California Riverside desarrollaron una técnica llamada Multithreading simultáneo y heterogéneo (SHMT), que construye en contemporáneo subprocesos múltiples simultáneos. El subproceso múltiple simultáneo divide un núcleo de CPU en numerosos subprocesos, pero SHMT va más allá al incorporar procesadores gráficos y de inteligencia artificial.
El beneficio clave de SHMT es que estos componentes pueden trabajar simultáneamente en cargas de trabajo completamente diferentes, optimizadas para la fuerza de cada uno. El método difiere de la informática tradicional, donde la CPU, la GPU y el acelerador de IA funcionan de forma independiente. Esta separación requiere una transferencia de datos entre los componentes, lo que puede provocar cuellos de botella.
Mientras tanto, SHMT utiliza lo que los investigadores llaman un «programador inteligente de robo de trabajo consciente de la calidad (QAWS)» para gestionar dinámicamente la carga de trabajo heterogénea entre componentes. Esta parte del proceso tiene como objetivo equilibrar el rendimiento y la precisión asignando tareas que requieren alta precisión a la CPU en lugar del acelerador de IA más propenso a errores, entre otras cosas. Además, el programador puede reasignar trabajos a otros procesadores en tiempo real sin problemas si un componente se retrasa.
En las pruebas, SHMT aumentó el rendimiento en un 95 por ciento y redujo el uso de energía en un 51 por ciento en comparación con las técnicas existentes. El resultado es un impresionante aumento de eficiencia 4 veces mayor. Las primeras pruebas de concepto utilizaron la placa Jetson Nano de Nvidia que contenía una CPU Arm de cuatro núcleos de 64 bits, una GPU Maxwell de 128 núcleos, 4 GB de RAM y una ranura M.2 que alberga uno de los aceleradores Edge TPU AI de Google. Si bien no es precisamente un hardware de última generación, sí refleja las configuraciones estándar. Desafortunadamente, existen algunas limitaciones fundamentales.
«La limitación de SHMT no es el modelo en sí, sino más bien si el programador puede revisar el algoritmo para exhibir el tipo de paralelismo que hace que SHMT sea fácil de explotar», explica el artículo.
En otras palabras, no es una simple implementación de hardware universal que cualquier desarrollador pueda utilizar. Los programadores tienen que aprender cómo hacerlo o desarrollar herramientas para hacerlo por ellos.
Si el pasado sirve de indicación, esto no es tarea fácil. Recuerda el de Apple cambiar ¿De Intel al silicio basado en Arm en Mac? La empresa tuvo que invertir significativamente en su cadena de herramientas para desarrolladores para facilitarles la adaptación de sus aplicaciones a la nueva arquitectura. A menos que haya un esfuerzo concertado por parte de las grandes empresas tecnológicas y los desarrolladores, SHMT podría terminar siendo un sueño lejano.
Los beneficios también dependen en gran medida del tamaño del problema. Si bien el aumento máximo del 95 por ciento requirió tamaños máximos de problemas en las pruebas, las cargas más pequeñas obtuvieron rendimientos decrecientes. Las cargas pequeñas casi no ofrecían ninguna ganancia, ya que había menos oportunidades de distribuir tareas paralelas. No obstante, si esta tecnología puede escalar y popularizarse, las implicaciones podrían ser enormes: desde reducir los costos y las emisiones de los centros de datos hasta limitar el uso de agua dulce para refrigeración.
Quedan muchas preguntas sin respuesta sobre implementaciones en el mundo real, soporte de hardware, optimizaciones de código y aplicaciones de casos de uso ideales. Sin embargo, la investigación parece prometedora, dada la explosión en aplicaciones de IA generativa en los últimos años y la gran cantidad de poder de procesamiento se necesita para ejecutarlos.