zeus-ml


Namezeus-ml JSON
Version 0.10.1 PyPI version JSON
download
home_pageNone
SummaryA framework for deep learning energy measurement and optimization.
upload_time2024-09-10 21:45:35
maintainerNone
docs_urlNone
authorZeus Team
requires_python>=3.9
licenseApache 2.0
keywords deep-learning power energy carbon sustainability mlsys
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            <div align="center">
<picture>
  <source media="(prefers-color-scheme: dark)" srcset="https://raw.githubusercontent.com/ml-energy/zeus/master/docs/assets/img/logo_dark.svg">
  <source media="(prefers-color-scheme: light)" srcset="https://raw.githubusercontent.com/ml-energy/zeus/master/docs/assets/img/logo_light.svg">
  <img alt="Zeus logo" width="55%" src="https://raw.githubusercontent.com/ml-energy/zeus/master/docs/assets/img/logo_light.svg">
</picture>
<h1>Deep Learning Energy Measurement and Optimization</h1>

[![Slack workspace](https://badgen.net/badge/icon/Join%20workspace/b31b1b?icon=slack&label=Slack)](https://join.slack.com/t/zeus-ml/shared_invite/zt-2j5o12jqp-3LtNjgF_uBDTdNcaxWgpdw)
[![Docker Hub](https://badgen.net/docker/pulls/symbioticlab/zeus?icon=docker&label=Docker%20pulls)](https://hub.docker.com/r/symbioticlab/zeus)
[![Homepage](https://custom-icon-badges.demolab.com/badge/Homepage-ml.energy-23d175.svg?logo=home&logoColor=white&logoSource=feather)](https://ml.energy/zeus)
[![Apache-2.0 License](https://custom-icon-badges.herokuapp.com/github/license/ml-energy/zeus?logo=law)](/LICENSE)
</div>

---
**Project News** ⚡ 

- \[2024/08\] Perseus, an optimizer for large model training, was accepted to SOSP'24! [Preprint](https://arxiv.org/abs/2312.06902) | [Blog](https://ml.energy/zeus/research_overview/perseus) | [Optimizer](https://ml.energy/zeus/optimize/pipeline_frequency_optimizer)
- \[2024/07\] Added AMD GPU, CPU, and DRAM energy measurement support, and preliminary JAX support!
- \[2024/05\] Zeus is now a PyTorch ecosystem project. Read the PyTorch blog post [here](https://pytorch.org/blog/zeus/)!
- \[2024/02\] Zeus was selected as a [2024 Mozilla Technology Fund awardee](https://foundation.mozilla.org/en/blog/open-source-AI-for-environmental-justice/)!
- \[2023/07\] We used the [`ZeusMonitor`](https://ml.energy/zeus/reference/monitor/energy/#zeus.monitor.energy.ZeusMonitor) to profile GPU time and energy consumption for the [ML.ENERGY leaderboard & Colosseum](https://ml.energy/leaderboard).
---

Zeus is a library for (1) [**measuring**](https://ml.energy/zeus/measure) the energy consumption of Deep Learning workloads and (2) [**optimizing**](https://ml.energy/zeus/optimize) their energy consumption.

Zeus is part of [The ML.ENERGY Initiative](https://ml.energy).

## 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
│  └── callback.py    #    - Base class for callbacks during training
│
├── zeusd             # 🌩️ Zeus daemon
│
├── 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](https://ml.energy/zeus/getting_started) page.
After that, you might look at

- [Measuring Energy](https://ml.energy/zeus/measure)
- [Optimizing Energy](https://ml.energy/zeus/optimize)

### Docker image

We provide a Docker image fully equipped with all dependencies and environments.
Refer to our [Docker Hub repository](https://hub.docker.com/r/mlenergy/zeus) and [`Dockerfile`](docker/Dockerfile).

### Examples

We provide working examples for integrating and running Zeus in the [`examples/`](/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 (2023): [Paper](https://www.usenix.org/conference/nsdi23/presentation/you) | [Blog](https://ml.energy/zeus/research_overview/zeus) | [Slides](https://www.usenix.org/system/files/nsdi23_slides_chung.pdf)
1. Chase (2023): [Paper](https://arxiv.org/abs/2303.02508)
1. Perseus (2023): [Paper](https://arxiv.org/abs/2312.06902) | [Blog](https://ml.energy/zeus/research_overview/perseus)

If you find Zeus relevant to your research, please consider citing:

```bibtex
@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](https://youtu.be/veM3x9Lhw2A) | [Slides](https://ml.energy/assets/attachments/pytorch_conf_2023_slides.pdf)

## Contact

Jae-Won Chung (jwnchung@umich.edu)

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "zeus-ml",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.9",
    "maintainer_email": null,
    "keywords": "deep-learning, power, energy, carbon, sustainability, mlsys",
    "author": "Zeus Team",
    "author_email": null,
    "download_url": "https://files.pythonhosted.org/packages/22/bc/c54594e767fe1c40008d568970d4f761fb6a390680be11818a7cf1fe2cd4/zeus_ml-0.10.1.tar.gz",
    "platform": null,
    "description": "<div align=\"center\">\n<picture>\n  <source media=\"(prefers-color-scheme: dark)\" srcset=\"https://raw.githubusercontent.com/ml-energy/zeus/master/docs/assets/img/logo_dark.svg\">\n  <source media=\"(prefers-color-scheme: light)\" srcset=\"https://raw.githubusercontent.com/ml-energy/zeus/master/docs/assets/img/logo_light.svg\">\n  <img alt=\"Zeus logo\" width=\"55%\" src=\"https://raw.githubusercontent.com/ml-energy/zeus/master/docs/assets/img/logo_light.svg\">\n</picture>\n<h1>Deep Learning Energy Measurement and Optimization</h1>\n\n[![Slack workspace](https://badgen.net/badge/icon/Join%20workspace/b31b1b?icon=slack&label=Slack)](https://join.slack.com/t/zeus-ml/shared_invite/zt-2j5o12jqp-3LtNjgF_uBDTdNcaxWgpdw)\n[![Docker Hub](https://badgen.net/docker/pulls/symbioticlab/zeus?icon=docker&label=Docker%20pulls)](https://hub.docker.com/r/symbioticlab/zeus)\n[![Homepage](https://custom-icon-badges.demolab.com/badge/Homepage-ml.energy-23d175.svg?logo=home&logoColor=white&logoSource=feather)](https://ml.energy/zeus)\n[![Apache-2.0 License](https://custom-icon-badges.herokuapp.com/github/license/ml-energy/zeus?logo=law)](/LICENSE)\n</div>\n\n---\n**Project News** \u26a1 \n\n- \\[2024/08\\] Perseus, an optimizer for large model training, was accepted to SOSP'24! [Preprint](https://arxiv.org/abs/2312.06902) | [Blog](https://ml.energy/zeus/research_overview/perseus) | [Optimizer](https://ml.energy/zeus/optimize/pipeline_frequency_optimizer)\n- \\[2024/07\\] Added AMD GPU, CPU, and DRAM energy measurement support, and preliminary JAX support!\n- \\[2024/05\\] Zeus is now a PyTorch ecosystem project. Read the PyTorch blog post [here](https://pytorch.org/blog/zeus/)!\n- \\[2024/02\\] Zeus was selected as a [2024 Mozilla Technology Fund awardee](https://foundation.mozilla.org/en/blog/open-source-AI-for-environmental-justice/)!\n- \\[2023/07\\] We used the [`ZeusMonitor`](https://ml.energy/zeus/reference/monitor/energy/#zeus.monitor.energy.ZeusMonitor) to profile GPU time and energy consumption for the [ML.ENERGY leaderboard & Colosseum](https://ml.energy/leaderboard).\n---\n\nZeus is a library for (1) [**measuring**](https://ml.energy/zeus/measure) the energy consumption of Deep Learning workloads and (2) [**optimizing**](https://ml.energy/zeus/optimize) their energy consumption.\n\nZeus is part of [The ML.ENERGY Initiative](https://ml.energy).\n\n## Repository Organization\n\n```\nzeus/\n\u251c\u2500\u2500 zeus/             # \u26a1 Zeus Python package\n\u2502  \u251c\u2500\u2500 monitor/       #    - Energy and power measurement (programmatic & CLI)\n\u2502  \u251c\u2500\u2500 optimizer/     #    - Collection of time and energy optimizers\n\u2502  \u251c\u2500\u2500 device/        #    - Abstraction layer over CPU and GPU devices\n\u2502  \u251c\u2500\u2500 utils/         #    - Utility functions and classes\n\u2502  \u251c\u2500\u2500 _legacy/       #    - Legacy code to keep our research papers reproducible\n\u2502  \u2514\u2500\u2500 callback.py    #    - Base class for callbacks during training\n\u2502\n\u251c\u2500\u2500 zeusd             # \ud83c\udf29\ufe0f Zeus daemon\n\u2502\n\u251c\u2500\u2500 docker/           # \ud83d\udc33 Dockerfiles and Docker Compose files\n\u2502\n\u251c\u2500\u2500 examples/         # \ud83d\udee0\ufe0f Zeus usage examples\n\u2502\n\u251c\u2500\u2500 capriccio/        # \ud83c\udf0a A drifting sentiment analysis dataset\n\u2502\n\u2514\u2500\u2500 trace/            # \ud83d\uddc3\ufe0f Training and energy traces for various GPUs and DNNs\n```\n\n## Getting Started\n\nPlease refer to our [Getting Started](https://ml.energy/zeus/getting_started) page.\nAfter that, you might look at\n\n- [Measuring Energy](https://ml.energy/zeus/measure)\n- [Optimizing Energy](https://ml.energy/zeus/optimize)\n\n### Docker image\n\nWe provide a Docker image fully equipped with all dependencies and environments.\nRefer to our [Docker Hub repository](https://hub.docker.com/r/mlenergy/zeus) and [`Dockerfile`](docker/Dockerfile).\n\n### Examples\n\nWe provide working examples for integrating and running Zeus in the [`examples/`](/examples) directory.\n\n## Research\n\nZeus is rooted on multiple research papers.\nEven more research is ongoing, and Zeus will continue to expand and get better at what it's doing.\n\n1. Zeus (2023): [Paper](https://www.usenix.org/conference/nsdi23/presentation/you) | [Blog](https://ml.energy/zeus/research_overview/zeus) | [Slides](https://www.usenix.org/system/files/nsdi23_slides_chung.pdf)\n1. Chase (2023): [Paper](https://arxiv.org/abs/2303.02508)\n1. Perseus (2023): [Paper](https://arxiv.org/abs/2312.06902) | [Blog](https://ml.energy/zeus/research_overview/perseus)\n\nIf you find Zeus relevant to your research, please consider citing:\n\n```bibtex\n@inproceedings{zeus-nsdi23,\n    title     = {Zeus: Understanding and Optimizing {GPU} Energy Consumption of {DNN} Training},\n    author    = {Jie You and Jae-Won Chung and Mosharaf Chowdhury},\n    booktitle = {USENIX NSDI},\n    year      = {2023}\n}\n```\n\n## Other Resources\n\n1. Energy-Efficient Deep Learning with PyTorch and Zeus (PyTorch conference 2023): [Recording](https://youtu.be/veM3x9Lhw2A) | [Slides](https://ml.energy/assets/attachments/pytorch_conf_2023_slides.pdf)\n\n## Contact\n\nJae-Won Chung (jwnchung@umich.edu)\n",
    "bugtrack_url": null,
    "license": "Apache 2.0",
    "summary": "A framework for deep learning energy measurement and optimization.",
    "version": "0.10.1",
    "project_urls": {
        "Documentation": "https://ml.energy/zeus",
        "Homepage": "https://ml.energy/zeus",
        "Repository": "https://github.com/ml-energy/zeus"
    },
    "split_keywords": [
        "deep-learning",
        " power",
        " energy",
        " carbon",
        " sustainability",
        " mlsys"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "3a861d23b1ae610a064f19f080852d6ffd94be55532ee630821a80c3133eae9d",
                "md5": "a41a96ebe68bb11c0b30f23c7ca953cb",
                "sha256": "2732a7df2789b861f2595543518d0c834bc6c75194741f2a1a609a11f4b98869"
            },
            "downloads": -1,
            "filename": "zeus_ml-0.10.1-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "a41a96ebe68bb11c0b30f23c7ca953cb",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.9",
            "size": 194578,
            "upload_time": "2024-09-10T21:45:33",
            "upload_time_iso_8601": "2024-09-10T21:45:33.612247Z",
            "url": "https://files.pythonhosted.org/packages/3a/86/1d23b1ae610a064f19f080852d6ffd94be55532ee630821a80c3133eae9d/zeus_ml-0.10.1-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "22bcc54594e767fe1c40008d568970d4f761fb6a390680be11818a7cf1fe2cd4",
                "md5": "eac6dd61c806dd1a62996c13649e0c46",
                "sha256": "fee3a19ce04058ef39c5bb6112f0e8dbcd41546584003c778c0f74573f6b1c44"
            },
            "downloads": -1,
            "filename": "zeus_ml-0.10.1.tar.gz",
            "has_sig": false,
            "md5_digest": "eac6dd61c806dd1a62996c13649e0c46",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.9",
            "size": 152983,
            "upload_time": "2024-09-10T21:45:35",
            "upload_time_iso_8601": "2024-09-10T21:45:35.314184Z",
            "url": "https://files.pythonhosted.org/packages/22/bc/c54594e767fe1c40008d568970d4f761fb6a390680be11818a7cf1fe2cd4/zeus_ml-0.10.1.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-09-10 21:45:35",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "ml-energy",
    "github_project": "zeus",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "zeus-ml"
}
        
Elapsed time: 0.33812s