Mining API Interactions to Analyze Software Revisions for the Evolution of Energy Consumption

  title={Mining API Interactions to Analyze Software Revisions for the Evolution of Energy Consumption},
  author={Andreas Schuler and Gabriele Anderst-Kotsis},
  journal={2021 IEEE/ACM 18th International Conference on Mining Software Repositories (MSR)},
With the widespread use and adoption of mobile platforms like Android a new software quality concern has emerged – energy consumption. However, developing energy-efficient software and applications requires knowledge and like-wise proper tooling to support mobile developers. To this aim, we present an approach to examine the energy evolution of software revisions based on their API interactions. The approach stems from the assumption that the utilization of an API has direct implications on the… 
1 Citations

Figures from this paper

MANAi - An IntelliJ Plugin for Software Energy Consumption Profiling
The MANAi plugin is presented, which helps to make energy consumption of unit test methods explicit by providing visual feedback as a plugin to the Integrated Development Environment (IDE) IntelliJ.


The power of system call traces: predicting the software energy consumption impact of changes
This work relates software change to energy consumption by tracing the changes in an application's pattern of system call invocations and finds that significant changes to system call profiles often induce significant changes in energy consumption.
Mining energy traces to aid in software development: an empirical case study
This work presents several approaches for describing power consumption and detecting anomalous energy patterns and potential energy defects for the Windows Phone platform and shows prediction models based on usage of individual modules that can estimate the overall energy consumption with high accuracy.
GreenMiner: a hardware based mining software repositories software energy consumption framework
The Green Miner physically measures the energy consumption of mobile devices and automates the testing of applications, and the reporting of measurements back to developers and researchers.
An exploratory study on assessing the energy impact of logging on Android applications
It is found that the rate of logging and the number of disk flushes are significant factors of energy consumption attributable to logging, and the relation between the generated OS level execution logs and mobile energy consumption is examined.
Green mining: A methodology of relating software change to power consumption
  • Abram Hindle
  • Computer Science
    2012 9th IEEE Working Conference on Mining Software Repositories (MSR)
  • 2012
It is demonstrated that software change can effect power consumption using the Firefox web-browser and the Azureus/Vuze BitTorrent client and there is evidence of a potential relationship between some software metrics and power consumption.
Characterizing Energy Consumption of Third-Party API Libraries using API Utilization Profiles
Background: Third-party software libraries often serve as fundamental building blocks for developing applications. However, depending on such libraries for development raises a new concern, energy
Recommending energy-efficient Java collections
This work proposes an approach for energy-aware development that combines the construction of application-independent energy profiles of Java collections and static analysis to produce an estimate of in which ways and how intensively a system employs these collections.
GreenScaler: training software energy models with automatic test generation
An accurate software energy model that is built on random tests with CPU-utilization as the test selection heuristic, GreenScaler, is proposed that not only accurately estimates energy consumption for randomly generated tests, but also for meaningful developer written tests.
What Do Programmers Know about Software Energy Consumption?
It is found that the programmers had limited knowledge of energy efficiency, lacked knowledge of the best practices to reduce software energy consumption, and were often unsure about how software consumes energy.
Software-based energy profiling of Android apps: Simple, efficient and reliable?
A software-based tool named PETRA is proposed that is compared with the hardware-based MONSOON toolkit on 54 Android apps and the results show that PETRA performs similarly to MONSOon despite not using any sophisticated hardware components.