El BSC contribuye a la versión beta de TANGO Toolbox con modelos de programación

03 Mayo 2018

El proyecto TANGO ha lanzado la versión beta de la TANGO Toolbox, que tiene como objetivo hacer más fácil la programación de arquitecturas de hardware heterogéneo.

El BSC ha contribuido en la integración de COMPSs y OmpSs en el modelo de programación de TANGO Toolbox

TANGO Toolbox representa el principal resultado del proyecto TANGO. Se trata de un conjunto de herramientas modulares, abiertas e interoperables para diseñar, modelar, desarrollar y ejecutar software en arquitecturas de hardware heterogéneas. TANGO Toolbox también permite la optimización de varias dimensiones de diseño de software y operaciones, como la eficiencia energética, el rendimiento o la fiabilidad en arquitecturas destino.

El Barcelona Supercomputing Center-Centro Nacional de Supercomputación (BSC) ha contribuido en el desarrollo de la versión beta de TANGO Toolbox desarrollando el modelo de programación de TANGO, que es una integración de los modelos de programación de la casa, COMPSs y OmpSs. “Las plataformas distribuidas se están convirtiendo de cada vez más heterogéneas. Los clústeres de computación y los proveedores de servicios cloud ofrecen nódulos de computación con diferentes aceleradores como GPUs y FPGA. Con el modelo de programación de TANGO, los desarrolladores pueden implementar fácilmente aplicaciones paralelas para este tipo de plataformas, donde COMPSs gestiona de forma transparente la ejecución en los diferentes nodos de computación heterogéneos de la plataforma y OmpSs controla la ejecución dentro de cada nodo, generando de manera transparente la computación en los dispositivos de computación disponibles (CPU, GPUs o FPGAs)” dice el investigador del BSC Jorge Ejarque del grupo Workflows and Distributed Computing del departamento de ciencias de la computación, que está involucrado en el proyecto TANGO.

Los componentes de TANGO Toolbox pueden ser usados de forma independiente o para dar soporte a escenarios complejos o casos prácticos, facilitando y mejorando su rendimiento. En el futuro, el número de componentes crecerá a medida que el número de casos prácticos soportados incrementen. Actualmente, se han identificado tres diferentes casos dónde TANGO desempeña un papel: aplicaciones eficientes que programen en HPC, programación eficiente de apps embedded y el diseño y programación de plataformas heterogéneas con hardware configurable.

En esta versión beta del proyecto, se ha puesto el foco en el rendimiento en el tiempo y en ahorrar energía. Esto puede ser visto en muchos niveles diferentes. A nivel de capa IDE, las herramientas te dicen si es mejor o no descargar tareas a un FPGA y permitir visualizar qué arquitecturas te proporcionan un mejor rendimiento por una tarea concreta. Des del punto de vista del tiempo de ejecución, la aplicación está monitorizada en cuando a energía y rendimiento, si es posible por la infraestructura base, y se auto-adapta para optimizar la aplicación en estos aspectos. La versión beta también da apoyo a nuevos hardwares heterogéneos, como Intel Xeon Phi. Finalmente, esta versión también se ha centrado en la mejora de la productividad des de la perspectiva del desarrollador, ofreciendo una respuesta robusta en herramientas estudiadas en esta versión y en la primera versión (versión alfa), para conseguir mejores resultados y corregir posibles errores durante el periodo de desarrollo.

Sobre TANGO
TANGO es un proyecto de la Unión Europea, coordinado por Atos, lanzado en enero de 2016 con el objetivo de allanar el terreno para el nuevo mundo que emerge de las nuevas posibilidades explotadas que el uso del nuevo potente hardware de computación ofrece con el hardware heterogéneo personalizado. El proyecto tiene como objetivo conseguir el máximo éxito a través de los beneficios de las actualizaciones para conseguir los objetivos de todo el consorcio, y presentar una solución para ser implementada fuera del contexto del proyecto. TANGO presenta TANGO toolbox como el modo para los desarrolladores para acercarse a la siguiente generación de aplicaciones, permitiéndoles trabajar mejor y más rápido en el internet de las cosas, sistemas ciberfísicos, portables, big data y computación de altas prestaciones.

TANGO es miembro fundador de la Heterogeneity Alliance que tiene como objetivo unificar esfuerzos de organizaciones interesadas en el desarrollo de futuras tecnologías y herramientas para avanzar, y aprovechar plenamente las aplicaciones y la computación que usa hardware heterogéneo.

Para más información: www.tango-project.eu