Computación
Tecnología de Subprocesamiento Simultáneo y Heterogéneo para Hacer que la Computación sea Más Rápida

Aunque todos los nuevos dispositivos de los gigantes tecnológicos como Apple y Google cuentan con mejoras incrementales —un aumento de un dígito en la vida útil de la batería, un nanómetro menos para el procesador, que aún no produce un rendimiento óptimo para los fabricantes, o unos pocos megapíxeles extra— surge la pregunta: ¿Son tales mejoras modestas verdaderamente suficientes? ¿Es agregar más hardware la solución?
No según el profesor asociado Hung-Wei Tseng del Departamento de Ingeniería Eléctrica y Computación de la Universidad de California, Riverside (UCR). Él dice:
“You don’t need to add new processors because you already have them.”
El profesor Tseng, junto con un equipo de investigadores, desarrolló un nuevo marco de software para el procesamiento paralelo llamado Subprocesamiento Simultáneo y Heterogéneo (SHMT). Según los resultados iniciales, SHMT está en condiciones de mejorar significativamente la velocidad de procesamiento y reducir el consumo de energía al aprovechar las capacidades latentes de los procesadores actuales en computadoras personales, teléfonos celulares y otros dispositivos.
Considerado como “revolucionario” por la comunidad tecnológica, SHMT tiene como objetivo eliminar los cuellos de botella del flujo de datos y facilitar la colaboración sin problemas de muchas unidades de procesamiento. Este avance puede afectar no solo la electrónica personal, sino también los centros de datos y otros tipos de computación paralela masiva.
Descomponiendo el Cuello de Botella

Antes de explorar la gloria completa de lo que se puede lograr con el subprocesamiento simultáneo y heterogéneo, debemos entender primero las limitaciones de los sistemas de computación actuales.
En la mayoría de los dispositivos, varios componentes, como la unidad central de procesamiento (CPU), la unidad de procesamiento gráfico (GPU) y la unidad de procesamiento de tensor (TPU), manejan la información por separado. Los datos se transfieren de una unidad de procesamiento a otra, lo que a menudo resulta en “cuellos de botella” que obstaculizan el rendimiento general del sistema.
Esto se ve agravado por los modelos de programación tradicionales, que típicamente delegan tareas a un solo tipo de procesador, dejando otros recursos inactivos y subutilizados. Haciendo eco de estas observaciones, el artículo de investigación ‘Subprocesamiento Simultáneo y Heterogéneo’ de Kuan-Chieh Hsu y Hung-Wei Tseng establece:
“Los modelos de programación arraigados se centran en utilizar solo las unidades de procesamiento más eficientes para cada región de código, subutilizando el poder de procesamiento dentro de las computadoras heterogéneas.”
SHMT se desvía de este enfoque al explotar la diversidad de múltiples componentes dentro de un sistema de computación. Este concepto se conoce como heterogeneidad. Al descomponer las funciones computacionales y distribuirlas entre las unidades de procesamiento disponibles, SHMT facilita un procesamiento paralelo real.
Este enfoque de descomponer las funciones computacionales y distribuirlas entre varias unidades de procesamiento maximiza la utilización de los recursos disponibles para mejorar el rendimiento y ahorrar energía. El artículo de investigación analiza aún más las limitaciones de los modelos de programación tradicionales al establecer que “solo pueden delegar una región de código de manera exclusiva a un tipo de procesador, dejando otros recursos de computación inactivos sin contribuir a la función actual.”
SHMT, por otro lado, tiene como objetivo liberarse de estas limitaciones al aprovechar las habilidades distintas de cada unidad de procesamiento y su trabajo colaborativo en una región de código compartida. Los autores también señalan que la tecnología de computación contemporánea es indudablemente heterogénea, ya que todas las plataformas de computación integran múltiples tipos de unidades de procesamiento y aceleradores de hardware. Esto requiere un modelo de programación que pueda aprovechar eficazmente el poder de estos componentes diversos (que es exactamente lo que SHMT pretende lograr).
Por lo tanto, SHMT allana el camino para una computación más rápida y eficiente al abordar los cuellos de botella en la computación tradicional.
¿Cómo Funciona la Tecnología de Subprocesamiento Simultáneo y Heterogéneo?
Como es evidente, gestionar y distribuir las actividades de computación de manera eficiente entre los diferentes componentes de hardware es el principio básico detrás de SHMT.
El marco incluye una colección de operaciones virtuales (VOPs) para facilitar la descarga de tareas desde una aplicación de CPU a un dispositivo de hardware virtual. Según el estudio, “Un conjunto de operaciones virtuales (VOPs) permite a un programa de CPU ‘descargar’ una función a un dispositivo de hardware virtual.” Estas VOPs median la comunicación y la delegación de tareas al crear una barrera entre el programa y el hardware.
Un sistema de tiempo de ejecución optimiza el rendimiento al evaluar las capacidades de cada recurso de hardware y tomar decisiones de programación inteligentes mientras se ejecuta la aplicación. Según el estudio, “Durante la ejecución del programa, un sistema de tiempo de ejecución impulsa el subprocesamiento simultáneo y heterogéneo de hardware virtual, evaluando la capacidad del recurso de hardware para tomar decisiones de programación.” Para maximizar la eficiencia de los recursos y adaptarse a las necesidades específicas del trabajo, SHMT evalúa dinámicamente las capacidades del hardware.
El sistema de tiempo de ejecución divide las VOPs en operaciones de alto nivel (HLOPs) para distribuirlas a varias colas de tareas de hardware. Según el estudio, “El sistema de tiempo de ejecución divide las VOPs en una o más operaciones de alto nivel (HLOPs) para utilizar simultáneamente varios recursos de hardware.” Descomponer las VOPs en HLOPs logra un control granular sobre la asignación de tareas y la máxima utilización de cada unidad de procesamiento.
La política de programación de SHMT utiliza un enfoque de robo de trabajo con conciencia de calidad (QAWS), que garantiza una utilización eficiente de los recursos y una variedad de cargas de trabajo. Según el estudio, “SHMT utiliza una política de programación de robo de trabajo con conciencia de calidad (QAWS) que no acapara recursos, sino que ayuda a mantener el control de calidad y el equilibrio de la carga de trabajo.” Además de distribuir el trabajo de manera efectiva en todo el sistema, este enfoque evita que cualquier unidad de procesamiento acapare recursos.
Si SHMT quiere maximizar el rendimiento sin sacrificar la calidad, necesita la política de programación QAWS. El estudio establece que “SHMT debe garantizar el resultado sin incurrir en un sobrecoste significativo.” Para garantizar que la salida de las unidades de procesamiento heterogéneas sea precisa y coherente, SHMT integra técnicas de control de calidad en la programación.
La capacidad de SHMT para aprovechar las capacidades específicas de cada pieza de hardware es una gran ventaja. Como señala el estudio, “SHMT puede descomponer el cálculo de la misma función en varios tipos de recursos de computación y explotar al mismo tiempo la heterogeneidad de paralelismo.” SHMT mejora significativamente el rendimiento porque aprovecha el paralelismo en sistemas heterogéneos para ejecutar tareas simultáneamente en varias unidades de procesamiento.
Otro aspecto de SHMT que se supone que es flexible y adaptable es el sistema de tiempo de ejecución. Y según el estudio, “Como las HLOPs son independientes del hardware, el sistema de tiempo de ejecución puede ajustar la asignación de tareas según sea necesario.” Debido a su adaptabilidad, SHMT puede reaccionar en tiempo real a los cambios en la disponibilidad del hardware o las demandas de la carga de trabajo, manteniendo el sistema en funcionamiento a su máxima eficiencia y rendimiento.
En general, el estudio describe todos los pasos necesarios para comprender cómo funciona SHMT, destacando las partes y procesos críticos que permiten lograr una eficiencia y eficacia notables en entornos de computación heterogénea. Gracias a SHMT, que utiliza VOPs, HLOPs y la estrategia de programación QAWS para revolucionar el procesamiento paralelo, una nueva era de computación eficiente y poderosa está a punto de amanecer.
Hallazgos Positivos de las Pruebas Iniciales del Prototipo
Para demostrar que SHMT funciona, los investigadores de UCR realizaron rigurosas pruebas en un sistema prototipo que imitaba las capacidades de los centros de datos utilizando componentes estándar en los teléfonos celulares contemporáneos. El prototipo incluía un TPU de Google Edge incorporado a través de la ranura M.2 Key E del sistema, un módulo NVIDIA Jetson Nano con un procesador ARM Cortex-A57 de cuatro núcleos y 128 núcleos de GPU de arquitectura Maxwell.
Para evaluar el rendimiento del marco de SHMT bajo diferentes circunstancias de carga de trabajo, los investigadores hicieron que el prototipo pasara por una batería de programas de referencia. El resultado fue impresionante: la estrategia QAWS de mejor rendimiento no solo redujo el consumo de energía en un 51%, sino que también mejoró el rendimiento de procesamiento en 1,95 veces en comparación con la técnica de referencia.

Los resultados subrayan el potencial de SHMT para mejorar significativamente el rendimiento de procesamiento y la eficiencia energética en una amplia gama de dispositivos y aplicaciones de software. SHMT demostró que es posible obtener el máximo provecho de la configuración actual al aprovechar mejor todos los recursos sin tener que gastar una fortuna en nuevo hardware.
Con la creciente necesidad de computación más rápida y eficiente, avances como el subprocesamiento simultáneo y heterogéneo se volverán cada vez más cruciales para dar forma a la trayectoria futura de la tecnología. El trabajo del equipo de investigación de UCR deja claro que encontrar soluciones de computación de alto rendimiento a largo plazo capaces de adaptarse a las demandas dinámicas de nuestro mundo digital nunca ha sido más fácil que con el trabajo del equipo de investigación de UCR.
Implicaciones y Direcciones Futuras del Subprocesamiento Simultáneo y Heterogéneo
La creación y prueba de SHMT representan un cambio profundo en el futuro de la computación. Tiene el potencial de revolucionar el diseño y el uso de dispositivos de computación en varias aplicaciones al ofrecer aumentos significativos de rendimiento y ahorros de energía con hardware existente.
A medida que SHMT gana una adopción más amplia, los consumidores pueden evitar costosas actualizaciones de hardware y disfrutar de dispositivos móviles, tabletas, laptops y computadoras de escritorio más rápidos y responsivos. Debido a esto, más personas podrán comprar y tener acceso a computadoras de alto rendimiento, lo que ayudará a cerrar la brecha digital.
Los centros de datos y otros sistemas de computación a gran escala también pueden encontrar que SHMT es una herramienta indispensable para reducir costos y consumo de energía sin sacrificar el rendimiento. Además, las innovaciones que promueven la eficiencia energética y la sostenibilidad, como SHMT, ganarán importancia a medida que aumentan las preocupaciones sobre los efectos ambientales de la tecnología.
A pesar de sus mejores esfuerzos, el equipo de investigación de UCR reconoce que todavía hay obstáculos que superar y oportunidades para más investigación y avance en el futuro. Los ingenieros de software y los fabricantes de hardware deberán trabajar en estrecha colaboración para implementar SHMT a gran escala. Esto garantizará que la tecnología funcione bien en todos los dispositivos y plataformas. Sin embargo, se requiere más investigación para determinar qué aplicaciones y cargas de trabajo son más adecuadas para utilizar esta tecnología revolucionaria.
A pesar de estos obstáculos, académicos y empresas por igual han tomado nota de los resultados prometedores de SHMT. La posibilidad de que esta tecnología innovadora pueda transformar la industria de la computación se vuelve cada vez más atractiva a medida que progresan las investigaciones y se establecen colaboraciones.
Como muchas otras ideas brillantes, el subprocesamiento simultáneo y heterogéneo parece ser un producto del sentido común, pero el diablo está en los detalles. Mientras que la idea de una caché compartida entre CPUs y GPUs es intrigante, es probable que requiera una revisión completa de la arquitectura del hardware.
Esto requeriría alejarse de la arquitectura x86-64 actual, y dicho diseño necesitaría el desarrollo de una nueva arquitectura de procesador con una caché L3 o L4 compartida. Esto, a su vez, aumentaría la complejidad de la CPU y potencialmente anularía los beneficios obtenidos de la caché compartida.
Además, la memoria caché suele ser mucho más pequeña en comparación con la memoria RAM del sistema y no es adecuada para aplicaciones de GPU, que requieren grandes cantidades de memoria de alta banda. Sin embargo, desarrollos como la memoria universal pueden abordar estas preocupaciones. A medida que continúa la investigación sobre SHMT, será emocionante ver cómo evoluciona y afecta el futuro del procesamiento paralelo y la computación heterogénea.












