Workshop on Energy-Aware Software Engineering

5 June 2015, 9:00 – 14:00, University of Twente

Workshop Topic

Software intensive IT systems play an increasingly important role in our daily life, ranging from the small scale such as embedded systems to the large scale such as data centers. With their increasing number and complexity, the share of these systems in the total energy consumption is ever growing. Thus, for reasons of sustainability but also because IT systems often work in resource-constrained environments, e.g., with limited available energy, the energy footprint becomes a highly relevant quality characteristic of IT systems.

For these reasons, the Software Engineering process needs to take the energy consumption into account as a first-class citizen. In this workshop, we investigate the role that is played by software in the energy consumption, as well as the techniques throughout the software engineering lifecycle for analyzing and improving the energy efficiency of software systems.

Registration

The workshop is free of charge, including coffee, tea and lunch. Participants must register by sending an email to Jeanette Rebel - de Boer (j.a.deboer@utwente.nl).

Location

Conferentiehotel Drienerburght, University of Twente
Drienerlolaan 5, 7522 NB
Enschede, The Netherlands

Schedule

09:00reception / welcome
09:30Kerstin Eder
10:15Waheed Ahmad
11:00break
11:15Vasily Moshnyaga
12:00Steven te Brinke
12:45closing
13:00lunch

Whole Systems Energy Transparency (or: More Power to Software Developers!)

Speaker: Dr Kerstin Eder, University of Bristol, United Kingdom

Abstract
Energy efficiency is now a major (if not the major) concern in electronic systems engineering. While hardware can be designed to save a modest amount of energy, the potential for savings are far greater at the higher levels of abstraction in the system stack. The greatest savings are expected from energy consumption-aware software. This presentation emphasizes the importance of energy transparency from hardware to software as a foundation for energy-aware system design. Energy transparency enables a deeper understanding of how algorithms and coding impact on the energy consumption of a computation when executed on hardware. It is a key prerequisite for informed design space exploration and helps system designers to find the optimal tradeoff between performance, accuracy and energy consumption of a computation. Promoting energy efficiency to a first class software design goal is an urgent research challenge. In this seminar I will outline our approach, techniques and recent results towards giving "more power" to software developers.

Short Bio
Dr Kerstin Eder is a Reader in Design Automation and Verification at the University of Bristol. She set up the Energy Aware COmputing (EACO) initiative at the University of Bristol and leads the Verification and Validation for Safety in Robots research theme at the Bristol Robotics Laboratory (BRL). Kerstin has gained extensive experience of verifying complex microelectronic designs while working with leading semiconductor design and Electronic Design Automation companies. She is a Principal Investigator of the EC FP7 FET MINECC (Minimizing Energy Consumption of Computing to the Limit) collaborative research project ENTRA (Whole Systems Energy Transparency) which aims to promote energy efficiency to a first class software design goal utilizing advanced energy modelling and static analysis techniques. At the BRL she is the Principal Investigator of two EPSRC projects: RIVERAS (Robust Integrated Verification of Autonomous Systems) and ROBOSAFE (Trustworthy Robotic Assistants).

Green Computing: Power Optimisation of VFI-based Multiprocessor Dataflow Applications

Speaker: Waheed Ahmad, University of Twente, The Netherlands

Abstract
Execution time is no longer the only performance metric for computation systems. In fact, a trend is emerging to trade raw performance for energy savings. Techniques like Dynamic Power Management (switching to low power state) (DPM) and Dynamic Voltage and Frequency Scaling (throttling processor frequency) (DVFS) helps modern systems to reduce their power consumption while adhering to the performance requirements. However, in case of DVFS, distributing a single global frequency to all processors leads to limited energy efficiency. Similarly, assigning a frequency per processor adds to the design complexity. To balance energy optimisation and design complexity, the concept of Voltage-Frequency Islands (VFIs) was recently introduced to achieve fine-grain system-level power management. All processors in the same VFI operate at a common frequency/voltage. This paper presents a novel approach to compute a power management strategy that combines DPM and DVFS, on a heterogeneous multiprocessor platform, partitioned in voltage-frequency islands. We demonstrate that combining DPM and DVFS together guarantees energy optimisation, as compared to considering DVFS only. As a second contribution, we show that by clustering processors in VFIs, we can combine DPM with any granularity of DVFS. Our approach uses model checking, by encoding the optimisation problem as a query over priced timed automata. The model-checker UPPAAL Cora extracts a cost minimal trace, representing a power minimal schedule. We illustrate our approach with several case studies on commercially available hardware.

Short Bio
Since January 2013, Waheed Ahmad is working under the supervision of Dr. Mariëlle Stoelinga and Prof. Dr. Jaco van de Pol on the EU FP7 project named SENSATION. This project aims at increasing the scale of self energy-supporting systems capable of balancing energy harvesting and consumption, up to the level of complete products. His research interests are Dataflow Applications, Concurrent Systems, Model-checking, Green Computing and Temporal Analysis.

Lifecycle Energy Assessment of Mobile Software Applications

Speaker: Prof. Vasily Moshnyaga, Fukuoka University, Japan

Abstract
Energy assessment is important to reduce environmental impact of modern IT. In this talk we analyze the total energy consumption associated with production, delivery and use of application software for mobile devices and assesses its contribution to green-house gas emissions. The results reveal that as the size of application software grows, the energy consumed at the production stage becomes a dominant factor of the total lifecycle energy. However, as the application becomes largely used, most of the lifecycle energy is consumed at the use stage due to updates. We discuss dependency of the lifecycle energy on the application size, the number of application copies in use as well as the size of updates and shows the trend. A lifecycle energy assessment of Mail K9 application is presented as a case study.

Short Bio
Vasily Moshnyaga received Ph.D. in computer engineering from Moscow Aviation Institute in 1986. Till 1992 he was with Technical University of Moldova. From 1992 to 1998 he was a Lecturer of Kyoto University, Japan. Since 1998 he has been with Fukuoka University, Japan, where he is currently a Full Professor. In 2005-2006 he was a Visiting Professor at the Computer Science Department, Univ.of California, Los-Angeles. Dr. Moshnyaga served as Vice-Chairman of the IEEE CAS Society, Fukuoka Chapter, and an Associate Editor of the IEICE Transactions on Fundamentals of Electronics, Communication and Computer Sciences. He is a member of IEEE CAS Technical Committee on VLSI and a member of Technical Program Committees of several conferences and symposia including ACM/IEEE Int. Symposium on Low-Power Electronics and Design, IEEE Int. Conf. on Systems, Man, and Cybernetics, IEEE Int. Symposium on Circuits and Systems, etc. His current research interests are in the areas of computer architecture, cyber-physical systems, video processing, VLSI design and design methodologies with a particular emphasis on energy-efficient design. He has authored or co-authored over 180 referred journal and conference publications and holds five patents. He is a senior member of IEEE, a member of the Institute of Electronics, Information, and Communication Engineers of Japan, and a member of the Information Processing Society of Japan.

Developing Energy-Aware Software

Speaker: Steven te Brinke, University of Twente, The Netherlands

Abstract
Today's software faces the problem of complexity, and modularization is considered as means to cope with the complexity of software. Therefore, we modularized energy optimizers from the rest of the software. This presentation introduces a modeling notation that supports energy behavior. Our notation is used to understand the energy behavior of the system and to analyze which control strategy reduces the energy consumption. We also present guidelines for designing models that contain energy behavior and present a method to automatically extract models, including energy behavior, from source code together with profiling of the application. These Resource-Utilization Models (RUMs) are over-abstractions of the application and can be analyzed formally, for example, with the model checker Uppaal.

Short Bio
Steven te Brinke carried out his Ph.D. research at the University of Twente, focusing on design and implementation of self-energy-adaptive systems in the context of project ENOFES (Energy Optimization Framework for Embedded Systems). His research won the Student Research Competition at the 29th Symposium on Applied Computing (SAC’14).