[Paper Review] Energy Usage Reports: Environmental awareness as part of algorithmic accountability
Introduces a Python package energyusage to compute and report the energy usage and CO2 emissions of a given function, contextualizing results with energy grid mixes and human benchmarks to support algorithmic accountability.
The carbon footprint of algorithms must be measured and transparently reported so computer scientists can take an honest and active role in environmental sustainability. In this paper, we take analyses usually applied at the industrial level and make them accessible for individual computer science researchers with an easy-to-use Python package. Localizing to the energy mixture of the electrical power grid, we make the conversion from energy usage to CO2 emissions, in addition to contextualizing these results with more human-understandable benchmarks such as automobile miles driven. We also include comparisons with energy mixtures employed in electrical grids around the world. We propose including these automatically-generated Energy Usage Reports as part of standard algorithmic accountability practices, and demonstrate the use of these reports as part of model-choice in a machine learning context.
Motivation & Objective
- Motivate measuring and reporting the carbon footprint of algorithms to promote environmental sustainability in CS research.
- Provide an accessible, automated method for converting energy usage of code into CO2 emissions using location-specific energy mix data.
- Contextualize emissions with human-understandable benchmarks (e.g., miles driven, TV minutes) to aid interpretation.
- Enable comparisons across different energy grids and promote energy-conscious model selection and design.
Proposed method
- Develop a Python package energyusage that computes energy use from a function’s execution via the RAPL interface and augments it with grid-energy mix data to estimate CO2 emissions.
- Convert energy usage to CO2 emissions by reverse-engineering fuel-source emission intensities from state-level eGRID data and applying these to international energy mixes.
- Provide location-detection via IP to select country/state energy mix data; offer default world averages when location is undetermined.
- Output an Energy Usage Report that includes readings, energy mix, CO2 emissions equivalents, and emission comparisons to everyday activities.
- Validate the approach by comparing package measurements against Kill-a-Watt device readings across function complexities (linear, quadratic, exponential).
- Demonstrate application to ML by analyzing energy versus accuracy across various models and configurations.
Experimental results
Research questions
- RQ1How can we accurately translate local electricity consumption of an algorithm into CO2 emissions considering grid fuel mix variability?
- RQ2Does reporting energy usage and emissions alter model selection or architectural decisions in machine learning tasks?
- RQ3Can an automated tool provide interpretable benchmarks to communicate environmental impact of computations to non-experts?
- RQ4What is the relationship between energy usage and model performance across different algorithms and configurations?
Key findings
- Energy usage measurements from the energyusage package align with Kill-a-Watt readings after adjusting for power loss (efficiency ~0.8).
- Energy usage is a distinct trade-off from traditional ML metrics; higher energy does not reliably increase accuracy across model types.
- Some algorithms (e.g., kNN) show low energy usage with varying accuracy, highlighting potential for low-energy model choices.
- ML experiments indicate architecture choices can affect energy consumption independently of accuracy, emphasizing energy-aware design considerations.
- The tool enables emissions comparisons across different energy grids, illustrating how grid mix impacts CO2 footprints for the same computation.
Better researchstarts right now
From reading papers to final review, dramatically reduce your research time.
No credit card · Free plan available
This review was created by AI and reviewed by human editors.