Using System Calls to Predict Changes in Application Energy Consumption Profiles
Date
Author
Institution
Degree Level
Degree
Department
Supervisor / Co-Supervisor and Their Department(s)
Examining Committee Member(s) and Their Department(s)
Citation for Previous Publication
Link to Related Item
Abstract
Battery is a limiting resource that affects the smartphone availability. Hence, it is the responsibility of developers to develop and maintain energy efficient applications to enhance end user satisfaction. As the impact of software code change on energy consumption is not known, developers need special instrumentation to assess the impact of change on their application’s energy consumption profile. Unfortunately, this instrumentation is costly and generally not available. In order to address this issue, we use system calls to predict the impact of code changes on the energy consumption profile. We find that significant changes to system call profiles often induce significant changes in energy consumption. Using this simple observation, we introduce GreenAdvisor, a first of its kind tool that systematically records and analyzes an application’s system-calls in order to predict whether the energy-consumption profile of an application has changed. The GreenAdvisor tool was evaluated using a user study whereby numerous software teams, whose members used GreenAdvisor while developing Android applications to examine the energy-consumption impact of selected commits from the teams’ projects. The evaluation confirms the usefulness of our tool in assisting developers analyze and understand the energy-consumption profile changes of a new version. This work is useful for the developers who are grappling with paucity of tools or knowledge to find out impact of changes on their application’s energy consumption.
