Skip to main content

A framework for deep learning energy measurement and optimization.

Project description

Zeus logo

Deep Learning Energy Measurement and Optimization

Slack workspace Docker Hub Homepage Apache-2.0 License


Project News

  • [2025/05] We shared our experience and design philosophy for the ML.ENERGY leaderboard in this paper.
  • [2025/05] Zeus now supports CPU, DRAM, AMD GPU, Apple Silicon, and NVIDIA Jetson platform energy measurement!
  • [2024/11] Perseus, an optimizer for large model training, appeared at SOSP'24! Paper | Blog | Optimizer
  • [2024/05] Zeus is now a PyTorch ecosystem project. Read the PyTorch blog post here!
  • [2024/02] Zeus was selected as a 2024 Mozilla Technology Fund awardee!

Zeus is a library for (1) measuring the energy consumption of Deep Learning workloads and (2) optimizing their energy consumption.

Zeus is part of The ML.ENERGY Initiative.

Repository Organization

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

Getting Started

Please refer to our Getting Started page. After that, you might look at

Docker image

We provide a Docker image fully equipped with all dependencies and environments. Refer to our Docker Hub repository and Dockerfile.

Examples

We provide working examples for integrating and running Zeus in the examples/ directory.

Research

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.

  1. Zeus (NSDI 23): Paper | Blog | Slides
  2. Chase (ICLR Workshop 23): Paper
  3. Perseus (SOSP 24): Paper | Blog | Slides
  4. The ML.ENERGY Benchmark (NeurIPS 25 D&B Spotlight): Paper | Repository

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}
}

Other Resources

  1. Energy-Efficient Deep Learning with PyTorch and Zeus (PyTorch conference 2023): Recording | Slides

Contact

Jae-Won Chung (jwnchung@umich.edu)

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

zeus-0.13.1.tar.gz (200.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

zeus-0.13.1-py3-none-any.whl (256.5 kB view details)

Uploaded Python 3

File details

Details for the file zeus-0.13.1.tar.gz.

File metadata

  • Download URL: zeus-0.13.1.tar.gz
  • Upload date:
  • Size: 200.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for zeus-0.13.1.tar.gz
Algorithm Hash digest
SHA256 c4431581dffc6e5428593d652d423fe48ee68ae3565e88b52370407c25e9ea88
MD5 e7c1d3474180621d9552b1b1d02bb189
BLAKE2b-256 94487dbe103ee0e3024e59052906ab65c136661906bd550f43da183a2e2a4e7f

See more details on using hashes here.

Provenance

The following attestation bundles were made for zeus-0.13.1.tar.gz:

Publisher: publish_pypi.yaml on ml-energy/zeus

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file zeus-0.13.1-py3-none-any.whl.

File metadata

  • Download URL: zeus-0.13.1-py3-none-any.whl
  • Upload date:
  • Size: 256.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for zeus-0.13.1-py3-none-any.whl
Algorithm Hash digest
SHA256 5464122fe6f625a9fe8b4a973cb3ffed512715f21c87e790ab3c56bbfcea51ef
MD5 c4c4a8a637bc8d92d7732afda46fdd1a
BLAKE2b-256 dce309dea265945566ec8ca20d4c859d3e0721e3967c6a96d78841f3b51e2f3e

See more details on using hashes here.

Provenance

The following attestation bundles were made for zeus-0.13.1-py3-none-any.whl:

Publisher: publish_pypi.yaml on ml-energy/zeus

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page