A framework for deep learning energy measurement and optimization.
Project description
Project News ⚡
- [2024/02] Zeus was selected as a 2024 Mozilla Technology Fund awardee!
- [2023/12] We released Perseus, an energy optimizer for large model training: Preprint | Blog | Optimizer
- [2023/07] We used the
ZeusMonitor
to profile GPU time and energy consumption for the ML.ENERGY leaderboard & Colosseum.
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 Python package
│ ├── optimizer/ # - A collection of optimizers for time and energy
│ ├── monitor/ # - Programmatic power and energy measurement tools
│ ├── utils/ # - Utility functions and classes
│ ├── _legacy/ # - Legacy code mostly to keep our papers reproducible
│ ├── device.py # - Abstraction layer over compute devices
│ └── callback.py # - Base class for callbacks during training
│
├── docker/ # 🐳 Dockerfiles and Docker Compose files
│
├── examples/ # 🛠️ Zeus usage examples
│
├── capriccio/ # 🌊 A drifting sentiment analysis dataset
│
└── trace/ # 🗃️ Training and energy traces for various GPUs and DNNs
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.
Other Resources
Contact
Jae-Won Chung (jwnchung@umich.edu)
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.