smartwatts

SmartWatts is a formula for a self-adaptive software-defined power meter based on the PowerAPI framework.

https://github.com/powerapi-ng/smartwatts-formula

Science Score: 64.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
    Links to: ieee.org
  • Committers with academic emails
    5 of 10 committers (50.0%) from academic institutions
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (13.2%) to scientific vocabulary

Keywords

energy green-computing inria power power-meter powerapi python

Keywords from Contributors

energy-monitoring interactive mesh interpretability profiles sequences generic projection standardization optim
Last synced: 6 months ago · JSON representation ·

Repository

SmartWatts is a formula for a self-adaptive software-defined power meter based on the PowerAPI framework.

Basic Info
  • Host: GitHub
  • Owner: powerapi-ng
  • License: bsd-3-clause
  • Language: Python
  • Default Branch: master
  • Homepage:
  • Size: 733 KB
Statistics
  • Stars: 32
  • Watchers: 6
  • Forks: 22
  • Open Issues: 1
  • Releases: 28
Topics
energy green-computing inria power power-meter powerapi python
Created almost 7 years ago · Last pushed 6 months ago
Metadata Files
Readme Contributing License Citation Codeowners

README.md

smartwatts-formula

Join the chat at https://gitter.im/Spirals-Team/powerapi License: BSD-3-Clause GitHub Workflow Status PyPI

SmartWatts is a formula for a self-adaptive software-defined power meter based on the PowerAPI framework.
This project is the implementation of the power meter depicted in the SmartWatts: Self-Calibrating Software-Defined Power Meter for Containers paper published in the 20th IEEE/ACM International Symposium on Cluster, Cloud and Internet Computing (CCGRID).

This project provides a software power meter that estimates the power consumption (CPU/DRAM) of the software containers (i.e. Docker containers, Kubernetes pods, Libvirt virtual machines...) running on a system.

This software power meter is based on Power Models that distribute the total energy consumption across the running containers depending on their resource 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 resource usage of the containers.

To monitor the Hardware Performance Counters (HwPC) of the software containers running on a Linux system, the hwpc-sensor project is the preferred solution. There is currently no support for other client/server platforms such as Windows, MacOS or VMware.

About

SmartWatts is an open-source project developed by the Spirals project-team, a joint research group between the University of Lille and Inria.

The documentation is available on the PowerAPI website.

Mailing list

You can follow the latest news and asks questions by subscribing to our mailing list.

Contributing

If you would like to contribute, you can do so through GitHub by forking the repository and sending a pull request.

When submitting code, please check that it follows the project's rules and that the tests pass.

Installation

There is two ways to install official releases of SmartWatts: - Using the Container image (recommended) from Docker Hub or the Github Container Registry ; - Using the Python package from Pypi.

Owner

  • Name: PowerAPI
  • Login: powerapi-ng
  • Kind: organization
  • Email: contact@powerapi.org
  • Location: Lille, France

Software-Defined Power Meters

Citation (CITATION.cff)

cff-version: 1.2.0
title: "SmartWatts"
url: "https://github.com/powerapi-ng/smartwatts-formula"
license: BSD-3-Clause
message: "If you use this software, please cite it using the metadata from this file."
authors:
  - family-names: "Fieni"
    given-names: "Guillaume"
    orcid: "https://orcid.org/0000-0002-0165-6824"
preferred-citation:
    type: conference-paper
    title: "SmartWatts: Self-Calibrating Software-Defined Power Meter for Containers"
    authors:
      - family-names: "Fieni"
        given-names: "Guillaume"
        orcid: "https://orcid.org/0000-0002-0165-6824"
      - family-names: "Rouvoy"
        given-names: "Romain"
        orcid: "https://orcid.org/0000-0003-1771-8791"
      - family-names: "Seinturier"
        given-names: "Lionel"
        orcid: "https://orcid.org/0000-0003-0006-6088"
    collection-title: "2020 20th IEEE/ACM International Symposium on Cluster, Cloud and Internet Computing (CCGRID)"
    collection-type: proceedings
    doi: "10.1109/CCGrid49817.2020.00-45"
    year: 2020
    start: 479
    end: 488

GitHub Events

Total
  • Create event: 71
  • Issues event: 1
  • Release event: 2
  • Watch event: 6
  • Delete event: 62
  • Issue comment event: 81
  • Push event: 62
  • Pull request review event: 50
  • Pull request event: 146
  • Fork event: 2
Last Year
  • Create event: 71
  • Issues event: 1
  • Release event: 2
  • Watch event: 6
  • Delete event: 62
  • Issue comment event: 81
  • Push event: 62
  • Pull request review event: 50
  • Pull request event: 146
  • Fork event: 2

Committers

Last synced: 9 months ago

All Time
  • Total Commits: 461
  • Total Committers: 10
  • Avg Commits per committer: 46.1
  • Development Distribution Score (DDS): 0.62
Past Year
  • Commits: 121
  • Committers: 4
  • Avg Commits per committer: 30.25
  • Development Distribution Score (DDS): 0.289
Top Committers
Name Email Commits
Guillaume Fieni g****i@i****r 175
dependabot[bot] 4****] 156
adazemar a****r@i****r 34
Lauric Desauw l****w@i****r 26
daniel d****o@u****r 21
roda82 d****o@i****r 20
Lauric Desauw j****i@u****m 15
Pierre Rust p****t@o****m 9
ldesauw 8****w 3
Thomas MILLET t****t@o****m 2
Committer Domains (Top 20 + Academic)

Issues and Pull Requests

Last synced: 6 months ago

All Time
  • Total issues: 26
  • Total pull requests: 335
  • Average time to close issues: 5 months
  • Average time to close pull requests: 1 day
  • Total issue authors: 18
  • Total pull request authors: 7
  • Average comments per issue: 2.77
  • Average comments per pull request: 0.89
  • Merged pull requests: 293
  • Bot issues: 1
  • Bot pull requests: 283
Past Year
  • Issues: 2
  • Pull requests: 162
  • Average time to close issues: 4 days
  • Average time to close pull requests: 1 day
  • Issue authors: 2
  • Pull request authors: 3
  • Average comments per issue: 0.5
  • Average comments per pull request: 0.94
  • Merged pull requests: 134
  • Bot issues: 1
  • Bot pull requests: 136
Top Authors
Issue Authors
  • PierreRust (3)
  • PierreRustOrange (3)
  • marceloamaral (2)
  • lkrumpak (2)
  • catherinemeadows (2)
  • jorgermurillo (2)
  • Alystrasz (1)
  • roda82 (1)
  • SamuelPelissier (1)
  • valentin19 (1)
  • dsaingre (1)
  • ldesauw (1)
  • dependabot[bot] (1)
  • jack-leyland (1)
  • rouvoy (1)
Pull Request Authors
  • dependabot[bot] (286)
  • gfieni (33)
  • PierreRustOrange (8)
  • Thommil (4)
  • roda82 (4)
  • altor (2)
  • erg352 (1)
Top Labels
Issue Labels
bug (4) documentation (1) dependencies (1)
Pull Request Labels
dependencies (286) enhancement (22) refactoring (10) bug (6)

Packages

  • Total packages: 1
  • Total downloads:
    • pypi 59 last-month
  • Total docker downloads: 49
  • Total dependent packages: 0
  • Total dependent repositories: 1
  • Total versions: 19
  • Total maintainers: 1
pypi.org: smartwatts

SmartWatts is a formula for a self-adaptive software-defined power meter based on the PowerAPI framework.

  • Versions: 19
  • Dependent Packages: 0
  • Dependent Repositories: 1
  • Downloads: 59 Last month
  • Docker Downloads: 49
Rankings
Docker downloads count: 3.2%
Dependent packages count: 10.0%
Average: 14.9%
Dependent repos count: 21.7%
Downloads: 24.5%
Maintainers (1)
Last synced: 6 months ago

Dependencies

.github/workflows/build.yml actions
  • actions/checkout v4 composite
  • actions/setup-python v4 composite
  • codecov/codecov-action eaaf4bedf32dbdc6b720b63067d99c4d77d6047d composite
.github/workflows/codeql.yml actions
  • actions/checkout v4 composite
  • github/codeql-action/analyze v2 composite
  • github/codeql-action/autobuild v2 composite
  • github/codeql-action/init v2 composite
.github/workflows/release.yml actions
  • actions/checkout v4 composite
  • actions/setup-python v4 composite
  • docker/build-push-action 0565240e2d4ab88bba5387d719585280857ece09 composite
  • docker/login-action 343f7c4344506bcbf9b4de18042ae17996df046d composite
  • docker/metadata-action 96383f45573cb7f253c731d3b3ab81c87ef81934 composite
  • docker/setup-buildx-action f95db51fddba0c2d1ec667646a06c2ce06100226 composite
  • pypa/gh-action-pypi-publish b7f401de30cb6434a1e19f805ff006643653240e composite
  • softprops/action-gh-release de2c0eb89ae2a093876385947365aca7b0e5f844 composite
Dockerfile docker
  • docker.io/powerapi/powerapi 2.1.0@sha256 build
pyproject.toml pypi
  • powerapi [everything] == 2.1.0
  • scikit-learn >= 0.20.2