| Carl Friedrich Gauß Faculty | Department of Computer Science

Integrated Tool Support for Energy-Aware Programming

SupervisorProf. Dr. Rüdiger Kapitza
ProfessorProf. Dr. Rüdiger Kapitza
IBR GroupDS (Prof. Kapitza)
TypeMaster Thesis

The overall context of this maste thesis is given by the growing trend of energy-aware computing. Driven by the increasing presence of small devices running on batteries with limited capacity and rising energy costs in data centers, research focuses on conserving energy in hardware as well as software. Within the field of energy-aware computing, one approach to reducing energy consumption in software is energy-aware programming, which aims to achieve this goal by supporting software developers with tools to write energy-efficient programs. An implementation of such tool is the Symbolic Execution and Energy Profiles (SEEP) framework. SEEP was designed to assist development of programs by analyzing source code and deriving precise, platform-dependent energy profiles on a per-function level using pre-existing knowledge about energy consumption of underlying instructions. To achieve a high degree of code coverage and thus high precision, source code has to be compiled to an intermediate representation and provided as input to a call to the SEEP program. Results subsequently need to be matched to code artifacts in the source code and the process repeated in case of updates to the code base.

Integrated development environments (IDE) are commonly used tools for software development which further streamline the process of writing, compiling, testing, and debugging source code. Eclipse is a widely used free and open source IDE written in Java that is available for many operating systems. Leveraging its underlying Open Services Gateway initiative (OSGI) platform, Eclipse offers a modular architecture that is open for extension by third-party developers. There is a lack, however, of extensions aimed at facilitating energy-aware programming within Eclipse. With an extension specifically designed to reduce the initial and ongoing efforts required by the individual developer, the adoption of energy-aware programming among the Eclipse user base and in software development in general could be further increased. The goal is to fill this gap by integrating SEEP into the Eclipse IDE. Derived from this, the task of this master's thesis is to extend Eclipse with a plug-in to facilitate energy-aware programming using the SEEP framework.

last changed 2016-06-14, 16:02 by Prof. Dr. Rüdiger Kapitza