Informática

Nuevos algoritmos podrían duplicar la velocidad de los ordenadores actuales

El sistema evita los “cuellos de botella” que se producen cuando los datos se mezclan entre diferentes unidades

El sistema podría optimizar la velocidad de procesamiento de ordenadores, teléfonos y relojes inteligentes.

El sistema podría optimizar la velocidad de procesamiento de ordenadores, teléfonos y relojes inteligentes. / Crédito: Lalmch en Pixabay.

Pablo Javier Piacente

Una serie de algoritmos de software podrían lograr que los ordenadores que se emplean en la actualidad dupliquen su velocidad de funcionamiento, aumenten su eficiencia y reduzcan significativamente el uso de energía. Todos estos avances se lograrían sin modificaciones en el hardware: solo sería necesaria la aplicación de algoritmos de software más inteligentes.

Investigadores de la Universidad de California, Riverside (UCR), de Estados Unidos, presentaron recientemente en el 56º Simposio Internacional Anual IEEE/ACM sobre Microarquitectura en Toronto, Canadá, una innovadora solución tecnológica que promete duplicar la velocidad de procesamiento de ordenadores, teléfonos y relojes inteligentes, entre otros dispositivos, mejorando al mismo tiempo su eficiencia de funcionamiento y reduciendo el consumo de energía.

Pero lo más importante es que el avance se lograría sin necesidad de realizar modificaciones en el hardware o cambios en los modelos: cualquier equipo relativamente actualizado en cuanto a prestaciones técnicas se vería beneficiado con una mejora considerable en su operatoria. Tan solo se necesita la aplicación de un nuevo esquema de algoritmos de software, que al ser más “inteligentes” aprovechan mejor los recursos disponibles.

Algoritmos más inteligentes

Según un artículo publicado en Science Alert, los científicos responsables del proyecto afirmaron que el nuevo sistema, denominado SHMT (subprocesos múltiples simultáneos y heterogéneos) se sustenta en que los teléfonos móviles, ordenadores y otros dispositivos modernos generalmente dependen de más de un procesador para desarrollar sus tareas.

Los procesadores son los “cerebros” que manejan el hardware de los dispositivos modernos, habitualmente a través de una combinación de varios de ellos trabajando en conjunto, pero especializados en distintas tareas: la unidad de procesamiento central (CPU), otro procesador para entornos visuales llamado unidad de procesamiento gráfico (GPU), e incluso un tercero para aprendizaje automático denominado unidad de procesamiento tensorial (TPU).

El uso de procesadores especializados tiene amplias ventajas, porque pueden diseñarse para tareas específicas. Por ejemplo, la ejecución del código para poner en marcha un programa de hoja de cálculo no se realiza de la misma manera que en el caso de un robot de texto con IA generativa. Debido a estas diferencias, los ordenadores actuales utilizan un sistema de múltiples procesadores y no un único procesador.

Eliminando los “cuellos de botella”

Sin embargo, la desventaja principal es que pueden crearse “cuellos de botella” cuando los datos se mezclan entre diferentes unidades, afectando la velocidad y eficiencia que alcanza el equipo al desarrollar sus tareas. Es aquí donde precisamente se centra el nuevo sistema: al ejecutar más subtareas simultáneamente y en paralelo en múltiples procesadores, los investigadores esperan optimizar el tiempo y la energía, evitando los “atolladeros” de información.

En el nuevo estudio, los especialistas explican que 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 o desperdiciando la potencia de procesamiento dentro de ordenadores heterogéneos. Con el nuevo sistema de algoritmos de software, esta capacidad podría aprovecharse al máximo.

Aunque el desarrollo aún se encuentra en fase de pruebas, la configuración experimental presentada por los investigadores muestra un gran potencial. Aplicando el nuevo esquema sobre una CPU ARM Cortex-A57, una GPU Nvidia y una TPU Google Edge, la ejecución del código de muestra fue 1,95 veces más rápida que sin emplear el sistema SHMT, en tanto que el uso de energía se redujo en un 51 por ciento.

Referencia

Simultaneous and Heterogenous Multithreading. Kuan-Chieh Hsu and Hung-Wei Tseng. MICRO '23: Proceedings of the 56th Annual IEEE/ACM International Symposium on Microarchitecture (2023). DOI:https://doi.org/10.1145/3613424.3614285