Tornado is a practical heterogeneous programming framework for Java, Tornado enables automatic Just-In-Time (JIT) compilation and acceleration of Java programs on any OpenCL compatible device, such as multi-core CPUs, GPUs and FPGAs.
OmpSs is an effort to integrate features from the StarSs programming model developed at BSC into a single programming model. In particular, our objective is to extend OpenMP with new directives to support asynchronous parallelism and heterogeneity (devices like GPUs). However, it can also be understood as new directives extending other accelerator based APIs like CUDA or OpenCL. Our OmpSs environment is built on top of our Mercurium compiler and Nanos++ runtime system.
The COMP Superscalar (COMPSs) framework is mainly compose of a programming model which aims to ease the development of applications for distributed infrastructures, such as Clusters, Grids and Clouds and a runtime system that exploits the inherent parallelism of applications at execution time. The framework is complemented by a set of tools for facilitating the development, execution monitoring and post-mortem performance analysis.
FPGA and GPU based accelerators have recently become first class citizens
in datacenters. Despite their high cost, however, accelerators remain
underutilized for large periods of time, as vendors prefer to dedicate them
to workloads for guaranteed QoS. At the same time, accelerator sharing is
difficult, due to vendor locked communication paths with software
applications. In this work, we modified the agents of Apache
Mesos with Vinetalk, an Apache 2.0 licensed open source accelerator middleware that abstracts the entire
The Self-Adaptation manager is responsible for co-ordinating the adaptive behaviour of the TANGO architecture. The main aim of this adaptation is provide low power and energy usage while maintaining quality of service aspects of applications. The primary mechanism by how this self-adaptation manager works is the generation of events, which in turn has actions associated with the events.
The Energy Modeller forecasts future application and host power consumption, as well as reporting current and historic energy usage.
A tool for analysing Java code for its energy efficiency.
Compiler to analyze source code OpenMP parallelism annotations, extracting the required information to allow for efficient and predictable mapping and scheduling of parallel computations
A small-footprint implementation of the tasking model of the latest OpenMP specification, which uses the information extracted by the compiler to map OpenMP tasks to operating systems threads
Embedded Many-Core Operating System – a small kernel implementation which efficiently handles parallel threads in manycore