Investigating the Energy Consumption of C++ and Java Solutions Mined from a Programming Contest Site
S\'ergio Queiroz de Medeiros, Marcelo Borges Nogueira, Gustavo Quezado

TL;DR
This study analyzes energy consumption of C++ and Java solutions from a programming contest site, confirming that faster programs generally consume less energy and developing models to predict and classify energy profiles.
Contribution
It provides empirical evidence linking execution speed to energy efficiency in contest solutions and introduces a linear model for energy prediction and abnormality detection.
Findings
Faster programs tend to consume less energy.
A linear model accurately relates execution time to energy consumption.
Energy profiles can help classify solutions by problem.
Abstract
The concern about global warming increased the interest in the energy efficiency of computer applications. Assuming power is constant, the general trend is that faster programs consume less energy, thus optimizing a program for speed would also improve its energy efficiency. We investigate this tendency in a set of C++ and Java solutions mined from Code Submission Evaluation System (CSES), a popular programming competition site, where each solution must give the correct answer under a given time limit. In such context, we can consider that all correct solutions for a problem were written with a speed concern, but not with energy efficiency in mind. We selected 15 problems from CSES and for each of them we mined at least 30 C++ and Java solutions, evaluating time and energy efficiency of each solution in at least two different machines. In our scenario, where there is a great…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsParallel Computing and Optimization Techniques · Green IT and Sustainability · Distributed and Parallel Computing Systems
