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 :
- 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
The reasons of those metrics are described in SmartWatts: Self-Calibrating Software-Defined Power Meter for Containers
SmartWatts is an open-source project developed by the Spirals research group (University of Lille 1 and Inria).
The documentation is available here.
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
When submitting code, please check that it is conform by using pylint
and
flake8
with the configurations files at the root of the project.
- SmartWatts: Self-Calibrating Software-Defined Power Meter for Containers: G. Fieni, R. Rouvoy, L. Seinturier. _IEEE/ACM International Symposium on Cluster, Cloud and Grid Computing (CCGrid). May 2020, Melbourne, Australia
SmartWatts is written in Python (under PSF license) and built on top of PowerAPI