/awesome-green-ai

A curated list of awesome Green AI resources and tools to reduce the environmental impacts of using and deploying AI.

Creative Commons Zero v1.0 UniversalCC0-1.0

Awesome Green AI πŸ€–πŸŒ±

A curated list of awesome Green AI resources and tools to reduce the environmental impacts of using and deploying AI.


Generated with Stable Diffusion v2


In 2020, Information and Communications Technology (ICT) sector carbon footprint was estimated to be between 2.1-3.9% of total global greenhouse gas emissions. The ICT sector continues to grow and now dominates other industries. It is estimated that the carbon footprint will double to 6-8% by 2025. For ICT sector to remain compliant with the Paris Agreement, the industry must reduce by 45% its GHG emissions from 2020 to 2030 and reach net zero by 2050 (Freitag et al., 2021).

AI is one of the fastest growing sectors, disrupting many other industries (AI Market Size Report, 2022). It therefore has an important role to play in reducing carbon footprint. The impacts of ICT, and therefore AI, are not limited to GHG emissions and electricity consumption. We need to take into account all major impacts (abiotic resource depletion, primary energy consumption, water usage, etc.) using Life Cycle Assessment (LCA) (Arushanyan et al., 2013).

AI sobriety not only means optimizing energy consumption and reducing impacts, but also includes studies on indirect impacts and rebound effects that can negate all efforts to reduce the environmental footprint (Willenbacher et al. 2021). It is therefore imperative to consider the use of AI before launching a project in order to avoid indirect impacts and rebound effects later on.

All contributions are welcome. Add links through pull requests or create an issue to start a discussion.

πŸ›  Tools

Code-Based Tools

Tools to measure and compute environmental impacts of AI.

  • CodeCarbon – Track emissions from Compute and recommend ways to reduce their impact on the environment.
    Linux Mac Win GPU CLI
  • carbontracker – Track and predict the energy consumption and carbon footprint of training deep learning models.
    Linux GPU
  • Eco2AI – A python library which accumulates statistics about power consumption and CO2 emission during running code.
    Linux GPU
  • Zeus – A framework for deep learning energy measurement and optimization.
    Linux GPU
  • Tracarbon – Tracks your device's energy consumption and calculates your carbon emissions using your location.
    Linux Mac GPU
  • EcoLogits – Estimates the energy consumption and environmental footprint of LLM inference through APIs.
    Linux Mac Win GPU
  • AIPowerMeter – Easily monitor energy usage of machine learning programs.
    Linux GPU
☠️ No longer maintained:
  • carbonai – Python package to monitor the power consumption of any algorithm.
    Linux Mac Win GPU
  • experiment-impact-tracker – A simple drop-in method to track energy usage, carbon emissions, and compute utilization of your system.
    Linux GPU
  • GATorch – An Energy-Aware PyTorch Extension.
    Linux GPU
  • GPU Meter – Power Consumption Meter for NVIDIA GPUs.
    Linux GPU
  • PyJoules – A Python library to capture the energy consumption of code snippets.
    Linux GPU

Monitoring Tools

Tools to monitor power consumption and environmental impacts.

  • Scaphandre – A metrology agent dedicated to electrical power consumption metrics.
    Linux Docker k8s
  • PowerJoular – Monitor power consumption of multiple platforms and processes.
    Linux Raspberry GPU CLI
  • Boagent – Local API and monitoring agent focussed on environmental impacts of the host.
    Linux
  • vJoule – A tool to estimate the energy consumption of your processes.
    Linux GPU CLI
  • jupyter-power-usage – Jupyter extension to display CPU and GPU power usage and carbon emissions.
    Linux GPU

Optimization Tools

Tools to optimize energy consumption or environmental impacts.

  • Zeus – A framework for deep learning energy measurement and optimization.
    Linux GPU
  • GEOPM – A framework to enable efficient power management and performance optimizations.
    GPU k8s

Calculation Tools

Tools to estimate environmental impacts of algorithms, models and compute resources.

  • Green Algorithms - A tool to easily estimate the carbon footprint of a project.
  • ML CO2 Impact - Compute model emissions and add the results to your paper with our generated latex template.
  • EcoLogits Calculator - Estimate energy consumption and environmental impacts of LLM inference.
  • AI Carbon - Estimate your AI model's carbon footprint.
  • MLCarbon - End-to-end carbon footprint modeling tool.
  • GenAI Carbon Footprint - A tool to estimate energy use (kWh) and carbon emissions (gCO2eq) from LLM usage.

Generic tools:

  • Boaviztapi - Multi-criteria impacts of compute resources taking into account manufacturing and usage.
  • Datavizta - Compute resources data explorer not limited to AI.
  • EcoDiag - Compute carbon footprint of IT resources taking into account manufactuing and usage (πŸ‡«πŸ‡· only).

Leaderboards

πŸ“„ Papers

Survey Papers