A consortium of European researchers and technology companies recently completed the EU-funded SAVE project, aimed at simplifying the execution data-intensive applications on complex hardware architectures.
Funded by the European Commission’s Seventh Framework Programme (FP7), the project was launched in 2013, under the project name ‘Self-Adaptive Virtualization-Aware High-Performance/Low-Energy Heterogeneous System Architectures’ (SAVE). The project, which was completed at the start of this month, has led to innovations in hardware, software and operating system (OS) components.
When integrated together, they can reduce application deployment costs and maximise usage of heterogeneous system computing units, resulting in improvements in energy efficiency of up to 20 per cent.
Computing units can be on chip, such as CPUs, ranging from small and low-power to high-end and efficient, graphics processing units (GPUs), and dedicated accelerators. Alternatively, the units can be off-chip, such as racks of dedicated accelerators or field-programmable gate arrays (FPGAs). This means that a large range of electronic systems stand to benefit from this project, including computer data centres, consumer electronics, automotive products and complex industrial electronics.
The prototype technologies will enable performance and energy-efficiency gains in high-performance computing (HPC) and embedded heterogeneous systems.
The project was completed by a consortium of researchers from the European academic institutions and commercial technology companies: Politecnico di Milano, The Technological Educational Institute of Crete, The University of Paderborn, STMicroelectronics, Maxeler Technologies and Virtual Open Systems, a French high-tech start-up company active in embedded software development, and ARM.
The three-year project, which started in September 2013, has achieved three main objectives. The first focuses on platform behaviour monitoring and task dispatching hardware and software. This has taken the form of two toolsets, the first, closely tracks the performance and use rate of the various computing units available in the heterogeneous systems. The second toolset decides which computing units are best suited for the job.
The SAVE project also created ‘just-in-time compilation technology’ which uses SAVE technologies at runtime to optimize a single application code to the various hardware targets of the platform (CPUs, GPUs, accelerators, FPGAs).
Finally, the SAVE researchers also developed hardware and software virtualisation technologies that efficiently expose the dedicated processing engines to the many virtual machines (VM) running on these systems. The teams successfully prototyped virtualised GPUs, virtualised FPGA-based data-flow engines (DFEs), and virtualised application-specific accelerators.
These innovations are the culmination of three years of collaborative research by a team of three academic and four industrial partners. These developments lay the foundations for industrial partners to further optimise more complex systems, including HPC systems for finance applications and automotive embedded systems.