Final TANGO Toolbox is released as Open Source

Here below the set of tools available for the final version of Tango toolbox. Final version is here! Each tool is accompanied by a Readme file with the description of the component, installation guidelines for developers and users and the relationship with other TANGO components, license and link to the downloadable software are provided. This time, also a video tutorial for each tool is available. Final version integrates TANGO components to make it possible to explore trade-off on additional non-functional behavior such as security, robustness and maintainability. This version is focused on enhancing programmer productivity in order to offer a compact solution having a feedback on tool training in last two versions of the project (Alpha and Beta) and having also the objective in productivity issues that programmers could face in daily tasks. In order to provide some examples of use of our tools several scenarios and the related workflows are described. All components can be used independently or in integration with other components to approach different situations, as are shown in these examples.
Monday, October 15, 2018

Programing model and runtime

The TANGO Programming Model and Runtime Abstraction Layer is a combination of the BSC's COMPSs and OmpSs task-based programming models, which simplifies the development of parallel application for distributed heterogeneous platforms.


Placer is a design-time tool that thoroughly optimizes the placement and scheduling of complex software onto heterogeneous multi processing hardware platforms. Licensed under LGPL v3


DS-Explorer accelerates the evaluation and characterisation, at design time, of application tasks that are considered for FPGA offloading. Licensed under BDS-3 Clause

Code Profiler

The code profiler is a tool for analysing Java code for its energy efficiency. Licensed under EPL v2

Self-adaptation manager

The Self-Adaptation Manager is responsible for the adaptive behaviour of heterogeneous architectures by providing low power and energy usage while maintaining quality of service aspects of applications. Licensed under Apache v2

Monitoring Infrastructure

The Monitoring Infrastructure monitors the heterogeneous resources to provide metrics (power consumption, temperature, utilization) about the status of the different devices and also historical statistics of these metrics. Licensed under GPL v3

Energy Modeller

The Energy Modeller forecasts future application and host power consumption, as well as reporting current and historic energy usage. Licensed under Apache v2

Application Lifecycle Deployment Engine (ALDE)

ALDE is responsible for the workload scheduling and the management of the application life-cycle while it is executed. Licensed under AGPLv3

Device Supervisor for SLURM

Device Supervisor in TANGO is an extension of Slurm which is an open-source cluster resource management and job scheduling system. Besides standard features provided by Slurm, the main extension done in TANGO has been the JobPack which aims to allocate a job on the heterogeneous devices of a single cluster. Licensed under GPL v2

Device Emulator

The Device Emulator finds an efficient mapping of the application tasks onto the nodes/cores in low time, i.e., which application task should run on each node/core. Licensed under Apache v2

Security Solution (crypTANGO)

CrypTANGO is the security solution for TANGO. Using the CrypTANGO libraries, one can develop TANGO applications which securely compute over sensitive data. Licensed under Apache v2