'Necesita un experto en hardware que entienda lo que hay debajo del capó para que pueda reestructurar sus algoritmos, ', dijo Ali Akoglu sobre las dificultades para hacer coincidir el código con el hardware. Los sistemas en chips permitirán a los informáticos centrarse en ser conductores, no mecánicos. "Sólo entonces se obtiene un rendimiento óptimo". Crédito:Dietmar Becker
Los informáticos desarrollan algoritmos que controlan todo, desde vehículos aéreos no tripulados hasta computadoras de escritorio y teléfonos celulares en nuestros bolsillos. Pero puede resultar complicado hacer coincidir el código que desarrollan con los sistemas de hardware que varían tanto.
"Cada una de estas arquitecturas de hardware viene con su propio entorno de programación, y necesita un experto en hardware que entienda lo que hay debajo del capó para que pueda reestructurar sus algoritmos para superponer la arquitectura de hardware de destino, "dijo Ali Akoglu, Profesor asociado de la UA en el Departamento de Ingeniería Eléctrica e Informática y en el Instituto BIO5, director del Laboratorio de Computación Reconfigurable y director de sitio de la UA del Centro NSF para Computación en la Nube y Autonómica. "Sólo entonces se obtiene un rendimiento óptimo".
Akoglu está colaborando con investigadores de la Universidad Estatal de Arizona, Universidad Carnegie Mellon y Universidad de Michigan, y de las empresas Arm, EpiSys y GDMS, para resolver este problema desarrollando sistemas en chips, o SoC, que permiten a los desarrolladores de software centrar sus esfuerzos en el diseño de algoritmos y aplicaciones, no en emparejarlos con estructuras de chips. Están utilizando una subvención de la Agencia de Proyectos de Investigación Avanzada de Defensa, o DARPA, cuya porción UA es de $ 820, 000 — para hacerlo.
Diseñando para DARPA
Estos nuevos sistemas basados en chips no solo asignarán automáticamente el software al hardware. DARPA quiere que los investigadores los diseñen para que sean "específicos de un dominio" a fin de lograr un equilibrio entre la eficiencia y la flexibilidad, es decir, todavía puede completar más de una tarea, pero no tan generalizados que sacrifiquen la velocidad o la calidad de las funciones por la cantidad.
También deben poder incorporar nuevas aplicaciones a medida que avanza la tecnología. Si un informático desarrolla código para una función completamente nueva, como enviar hologramas de un lado a otro a través de texto, el SoC debería poder mapear el software para esa tecnología en el hardware del chip.
La respuesta del equipo al desafío de DARPA es un "SoC heterogéneo reconfigurable por software avanzado enfocado en el dominio, "o DASH-SoC. Es un bocado, pero el tiempo dedicado a decirlo será más que compensado en los meses de trabajo que podría salvar a los informáticos.
"Cuando traes a un estudiante de posgrado para trabajar con una nueva arquitectura de hardware, les lleva de tres a seis meses aprender el entorno de programación, y otros seis meses para optimizarlo, ", Dijo Akoglu." Cuando se considera este problema de productividad, tener una interfaz de sistema que traduzca su código a una arquitectura de destino con solo presionar un botón es un objetivo muy ambicioso ".
Mientras que los ingenieros informáticos como Akoglu crean algoritmos que todos, desde los cirujanos cardíacos hasta los biólogos, utilizan para mejorar su capacidad de predecir los resultados, DARPA quiere específicamente sistemas para el dominio del software de radio, que incluye aplicaciones que van desde teléfonos celulares hasta seguridad nacional.
Cinco tareas y cinco nanosegundos
Hay un elemento más que hace que esta nueva tecnología se destaque:la subvención DARPA estipula que el SoC puede ejecutar cinco aplicaciones a la vez, lo que significa equilibrar las demandas de cinco prioridades diferentes de la manera más rápida y eficiente posible. Como un estudiante que toma cinco clases que implican completar una serie de tareas, el chip tiene que hacer una planificación cuidadosa y una asignación de recursos para realizar cada tarea para cada aplicación.
Esta es la parte del proyecto que Akoglu y su colaborador Umit Ogras de ASU están liderando:desarrollar un programador inteligente que mapea qué áreas físicas del chip completan qué tareas y cuándo. "Inteligente" aquí significa que el programador mejorará con el tiempo a través del aprendizaje automático, la forma en que un estudiante podría ser más capaz de crear un horario eficiente durante el último año que en el primer año.
"El programador inteligente aprenderá a programar las tareas para procesadores especializados y controlará la energía necesaria para procesarlas". Dijo Ogras. "Como resultado, entregaremos muy poderoso, SoC energéticamente eficientes y fáciles de usar que se pueden utilizar en una amplia gama de aplicaciones de comunicaciones y radar ".
El objetivo de DARPA es un programador inteligente que toma solo cinco nanosegundos para cada decisión. Los chips con una tecnología de programación tan inteligente no existen en la actualidad, por lo que crearlos es ambicioso:crear un sistema tan rápido agrega una dimensión completamente diferente, Dijo Akoglu.
"Ese negocio de cinco nanosegundos me está dando presión arterial alta, ", bromeó." Pero sin establecer estos objetivos agresivos, no podemos llevar la tecnología al siguiente nivel ".