Energy Consumption of Automated Program Repair

11/22/2022
by   Matias Martinez, et al.
0

Automated program repair (APR) aims to automatize the process of repairing software bugs in order to reduce the cost of maintaining software programs. Moreover, the success (given by the accuracy metric) of APR approaches has been increasing in recent years. However, no previous work has considered the energy impact of repairing bugs automatically using APR. The field of green software research aims to measure the energy consumption required to develop, maintain and use software products. This paper combines, for the first time, the APR and Green software research fields. We have as main goal to define the foundation for measuring the energy consumption of the APR activity. For that, we present a set of metrics specially crafted to measure the energy consumption of APR tools and a generic methodology to calculate them. We instantiate the methodology in the context of Java program repair. We measure the energy consumption of 10 program repair tools trying to repair real bugs from Defects4J, a set of real buggy programs. The initial results from this experiment show the existing trade-off between energy consumption and the ability to correctly repair bugs: Some APR tools are capable of achieving higher accuracy by spending less energy than other tools.

READ FULL TEXT

page 9

page 10

research
07/16/2021

Towards a Benchmark Set for Program Repair Based on Partial Fixes

Software bugs significantly contribute to software cost and increase the...
research
05/28/2019

Empirical Review of Java Program Repair Tools: A Large-Scale Experiment on 2,141 Bugs and 23,551 Repair Attempts

In the past decade, research on test-suite-based automatic program repai...
research
10/30/2018

Multi-Location Program Repair: Roads Ahead

Automated program repair (APR) has great potential to reduce the effort ...
research
02/09/2018

Astor: Exploring the Design Space of Generate-and-Validate Program Repair beyond GenProg

During last years, researches have proposed novel repair approaches that...
research
08/12/2021

Can We Spot Energy Regressions using Developers Tests?

Software Energy Consumption(SEC) is gaining more and more attention. In ...
research
05/30/2022

Type Systems in Resource-Aware Programming: Opportunities and Challenges

Type systems provide software developers immediate feedback about a subs...
research
06/24/2022

How to train accurate BNNs for embedded systems?

A key enabler of deploying convolutional neural networks on resource-con...

Please sign up or login with your details

Forgot password? Click here to reset