Measure and optimize the energy consumption of your AI applications!
373
stars
457
commits
Python
primary language
Sep 8, 2026
updated
Project News ⚡
Zeus is a library for (1) measuring the energy consumption of Deep Learning workloads and (2) optimizing their energy consumption.
Zeus is a project of The ML.ENERGY Initiative.
zeus/
├── zeus/ # ⚡ Zeus Python package
│ ├── monitor/ # - Energy and power measurement (programmatic & CLI)
│ ├── optimizer/ # - Collection of time and energy optimizers
│ ├── device/ # - Abstraction layer over CPU and GPU devices
│ ├── utils/ # - Utility functions and classes
│ ├── _legacy/ # - Legacy code to keep our research papers reproducible
│ ├── metric.py # - Prometheus metric export support
│ ├── show_env.py # - Installation & device detection verification script
│ └── callback.py # - Base class for callbacks during training
│
├── zeusd # 🌩️ Zeus daemon
│
├── docker/ # 🐳 Dockerfiles and Docker Compose files
│
└── examples/ # 🛠️ Zeus usage examples
Please refer to our Getting Started page. After that, you might look at
We provide a Docker image fully equipped with all dependencies and environments.
Refer to our Docker Hub repository and Dockerfile.
We provide working examples for integrating and running Zeus in the examples/ directory.
skills/measuring-energy/ is a portable Agent Skill that teaches AI coding agents to measure energy and power with Zeus.
Claude Code and Codex users can install it from the ML.ENERGY plugin marketplace; other tools can load the skills/ directory directly.
Zeus follows semantic versioning; pushing a zeus-v* tag releases the Python package to PyPI and a zeusd-v* tag releases the daemon to crates.io.
We cut a release when meaningful changes have landed, which has meant roughly every one to three months, and fixes that affect measurement correctness or security fixes ship as soon as they are ready.
Every release requires green CI on master, and breaking changes are called out in the release notes.
Zeus is rooted on multiple research papers. Even more research is ongoing, and Zeus will continue to expand and get better at what it's doing.
If you find Zeus relevant to your research, please consider citing:
@inproceedings{zeus-nsdi23,
title = {Zeus: Understanding and Optimizing {GPU} Energy Consumption of {DNN} Training},
author = {Jie You and Jae-Won Chung and Mosharaf Chowdhury},
booktitle = {USENIX NSDI},
year = {2023}
}
Subscribe to the ML.ENERGY newsletter for the latest news on Zeus and other projects by the ML.ENERGY Initiative.
Python
71.5%
Rust
25.4%
Shell
2.8%
Measure and optimize the energy consumption of your AI applications!
373
stars
457
commits
Python
primary language
Sep 8, 2026
updated
Project News ⚡
Zeus is a library for (1) measuring the energy consumption of Deep Learning workloads and (2) optimizing their energy consumption.
Zeus is a project of The ML.ENERGY Initiative.
zeus/
├── zeus/ # ⚡ Zeus Python package
│ ├── monitor/ # - Energy and power measurement (programmatic & CLI)
│ ├── optimizer/ # - Collection of time and energy optimizers
│ ├── device/ # - Abstraction layer over CPU and GPU devices
│ ├── utils/ # - Utility functions and classes
│ ├── _legacy/ # - Legacy code to keep our research papers reproducible
│ ├── metric.py # - Prometheus metric export support
│ ├── show_env.py # - Installation & device detection verification script
│ └── callback.py # - Base class for callbacks during training
│
├── zeusd # 🌩️ Zeus daemon
│
├── docker/ # 🐳 Dockerfiles and Docker Compose files
│
└── examples/ # 🛠️ Zeus usage examples
Please refer to our Getting Started page. After that, you might look at
We provide a Docker image fully equipped with all dependencies and environments.
Refer to our Docker Hub repository and Dockerfile.
We provide working examples for integrating and running Zeus in the examples/ directory.
skills/measuring-energy/ is a portable Agent Skill that teaches AI coding agents to measure energy and power with Zeus.
Claude Code and Codex users can install it from the ML.ENERGY plugin marketplace; other tools can load the skills/ directory directly.
Zeus follows semantic versioning; pushing a zeus-v* tag releases the Python package to PyPI and a zeusd-v* tag releases the daemon to crates.io.
We cut a release when meaningful changes have landed, which has meant roughly every one to three months, and fixes that affect measurement correctness or security fixes ship as soon as they are ready.
Every release requires green CI on master, and breaking changes are called out in the release notes.
Zeus is rooted on multiple research papers. Even more research is ongoing, and Zeus will continue to expand and get better at what it's doing.
If you find Zeus relevant to your research, please consider citing:
@inproceedings{zeus-nsdi23,
title = {Zeus: Understanding and Optimizing {GPU} Energy Consumption of {DNN} Training},
author = {Jie You and Jae-Won Chung and Mosharaf Chowdhury},
booktitle = {USENIX NSDI},
year = {2023}
}
Subscribe to the ML.ENERGY newsletter for the latest news on Zeus and other projects by the ML.ENERGY Initiative.
Python
71.5%
Rust
25.4%
Shell
2.8%