-
Notifications
You must be signed in to change notification settings - Fork 18
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
chore: Update project description in README
- Loading branch information
Showing
1 changed file
with
25 additions
and
33 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,43 +1,35 @@ | ||
SmartWatts is a software-defined power meter based on the PowerAPI toolkit. | ||
SmartWatts is a configurable software that can estimate the power consumption of | ||
software in real-time. | ||
SmartWatts need to receive several metrics provided by | ||
[hwpc-sensor](https://github.com/powerapi-ng/hwpc-sensor) : | ||
# smartwatts-formula | ||
[![Join the chat at https://gitter.im/Spirals-Team/powerapi](https://badges.gitter.im/Join%20Chat.svg)](https://gitter.im/Spirals-Team/powerapi?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge) | ||
[![License: BSD-3-Clause](https://img.shields.io/pypi/l/smartwatts.svg)](https://opensource.org/licenses/BSD-3-Clause) | ||
[![GitHub Workflow Status](https://img.shields.io/github/actions/workflow/status/powerapi-ng/smartwatts-formula/build.yml)](https://github.com/powerapi-ng/smartwatts-formula/actions/workflows/build.yml) | ||
[![PyPI](https://img.shields.io/pypi/v/smartwatts)](https://pypi.org/project/smartwatts/) | ||
|
||
- The Running Average Power Limit (RAPL) | ||
- TSC | ||
- APERF | ||
- MPERF | ||
- CPU_CLK_THREAD_UNHALTED:REF_P | ||
- CPU_CLK_THREAD_UNHALTED:THREAD_P | ||
- LLC_MISSES | ||
- INSTRUCTIONS_RETIRED | ||
SmartWatts is a formula for a self-adaptive software-defined power meter based on the [`PowerAPI framework`](https://github.com/powerapi-ng/powerapi). | ||
This project is the implementation of the power meter depicted in the [`SmartWatts: Self-Calibrating Software-Defined Power Meter for Containers`](https://ieeexplore.ieee.org/document/9139675) paper published in the 20th IEEE/ACM International Symposium on Cluster, Cloud and Internet Computing (CCGRID). | ||
|
||
The reasons of those metrics are described in [SmartWatts: Self-Calibrating | ||
Software-Defined Power Meter for Containers](https://hal.inria.fr/hal-02470128) | ||
This project provide a software power meter that estimate the power consumption (CPU/DRAM) of the `software containers` (i.e. Docker containers, Kubernetes pods, Libvirt virtual machines...) running on a system. | ||
|
||
# About | ||
This software power meter is based on `Power Models` that distributes the total energy consumption across the running containers depending on their resources usage. | ||
The `Running Average Power Limit (RAPL)` feature is used to measure the total energy consumption of the CPU/DRAM components, and the `Hardware Performance Counters (HwPC)` are used to measure the resources usage of the containers. | ||
|
||
SmartWatts is an open-source project developed by the [Spirals research | ||
group](https://team.inria.fr/spirals) (University of Lille 1 and Inria). | ||
To monitor the Hardware Performance Counters (HwPC) of the software containers running on a Linux system, the [hwpc-sensor](https://github.com/powerapi-ng/hwpc-sensor) project is the preferred solution. | ||
There is currently no support for other client/server platforms such as Windows, MacOS or VMware. | ||
|
||
The documentation is available [here](http://powerapi.org). | ||
## About | ||
SmartWatts is an open-source project developed by the [Spirals project-team](https://team.inria.fr/spirals), a joint research group between the [University of Lille](https://www.univ-lille.fr) and [Inria](https://www.inria.fr). | ||
|
||
## Contributing | ||
|
||
If you would like to contribute code you can do so through GitHub by forking the | ||
repository and sending a pull request. | ||
You should start by reading the [contribution guide](https://github.com/powerapi-ng/smartwatts-formula/blob/master/contributing.md) | ||
The documentation is available [on the PowerAPI website](https://powerapi.org). | ||
|
||
When submitting code, please check that it is conform by using `pylint` and | ||
`flake8` with the configurations files at the root of the project. | ||
## Mailing list | ||
You can follow the latest news and asks questions by subscribing to our <a href="mailto:[email protected]?subject=subscribe powerapi">mailing list</a>. | ||
|
||
## Publications | ||
|
||
- **[SmartWatts: Self-Calibrating Software-Defined Power Meter for Containers](https://hal.inria.fr/hal-02470128)**: G. Fieni, R. Rouvoy, L. Seinturier. _IEEE/ACM International Symposium on Cluster, Cloud and Grid Computing (CCGrid). May 2020, Melbourne, Australia | ||
## Contributing | ||
If you would like to contribute code you can do so through GitHub by forking the repository and sending a pull request. | ||
You should start by reading the [Contribution Guide](CONTRIBUTING.md). | ||
|
||
## Acknowledgments | ||
When submitting code, please check that it follows the project's rules by using `pylint` and `ruff`, and that the **tests pass**. | ||
|
||
SmartWatts is written in [Python](https://www.python.org/) (under [PSF | ||
license](https://docs.python.org/3/license.html)) and built on top of | ||
[PowerAPI](https://github.com/powerapi-ng/powerapi) | ||
## Installation | ||
There is two ways to install official releases of SmartWatts: | ||
- Using the Container image **(recommended)** [from Docker Hub](https://hub.docker.com/r/powerapi/smartwatts-formula) or the [Github Container Registry](https://github.com/powerapi-ng/smartwatts-formula/pkgs/container/smartwatts) ; | ||
- Using the Python package [from Pypi](https://pypi.org/project/smartwatts/). |