With the relentless growth of the digital economy and society’s increasing use of data, energy consumption and mitigating serious environmental impact has become one of the key challenges of modern computing, whether for wireless embedded client devices or high performance (HPC) centres.
Plugging the gap
The three-year EXCESS project, which will finish at the end of August 2016, took on this challenge and address what the project partners saw as a lack of holistic, integrated approaches to cover all system layers, from hardware to user-level software, and the limitations this caused to the exploitation of existing solutions and their energy efficiency. At the outset of the project, the team analysed where energy-performance is wasted, and armed with this knowledge, they developed a framework that should allow for rapid development of energy efficient software production.
‘When we started this research programme, there was a clear lack of tools and mathematical models to help the software engineers to program in an energy efficient way, and also to reason abstractly about the power and energy behaviour of their software,’ commented Philippas Tsigas, Professor in Computer Engineering at Chalmers University of Technology, and EXCESS project coordinator. ‘The holistic approach of the project involves both hardware and software components together, enabling the programmer to make power-aware architectural decisions early. This allows for larger energy savings than previous approaches, where software power optimisation was often applied as a secondary step, after the initial application was written.’
The project has taken major steps towards providing a set of tools and models to software developers and system designers to allow them to program in an energy efficient way. The tool box spans from fundamentally new energy-saving hardware components, such as the Movidius Myriad platform, to sophisticated efficient libraries and algorithms.
Tests run on large data streaming aggregations, a common operation used in real-time data analytics, has shown impressive results. When using the EXCESS framework, the programmer can provide a 54 times more energy efficient solution compared to a standard implementation on a high-end PC processor. The holistic EXCESS approach first presents the hardware benefits, using an embedded processor, and then continues to show the best way to split the computations inside the processor, to enhance even further the performance.
Energy efficient embedding for HPC
Movidius, an EXCESS project partner, and developers of the
Myriad platform of vision processors, has integrated both technology and methodology developed in the project into their standard development kit hardware and software offering. In the embedded processor business, there has been a gradual migration of HPC class features getting deployed on embedded platforms.
The rapid development in autonomous vehicles such as cars and drones, driving assist systems, and also the general development of home assist robotics (for example vacuum cleaners and lawnmowers) has led to the porting of various computer vision algorithms to embedded platforms. Traditionally these algorithms were developed on high performance desktop computers and HPC systems, making them difficult to re-deploy to embedded systems.
Another problem was that the algorithms were not developed with energy efficiency in mind. However, the EXCESS project has enabled and directed the development of tools and software development methods to aid the porting of HPC applications to the embedded environment in an energy efficient way.
For more information please see:
project website