Skip to content

Releases: powerapi-ng/smartwatts-formula

v2.3.0

24 Sep 12:34
v2.3.0
9c14930
Compare
Choose a tag to compare

v2.3.0 (2024-09-24)

Bug Fixes

  • Correct prometheus configuraton
  • Correct csv configuration
  • Correct csv configuration
  • Correct influxdb2 configuration
  • Correct mongodb configuration
  • Correct prometheusdb configuration
  • docker: Add missing .env file to Docker deployment files (#126)

Build System

  • Move Ruff configuration to its own file
  • Disable too-many-positional-arguments pylint warning
  • Dockerfile: Use PowerAPI global virtualenv
  • deps: Bump docker/setup-buildx-action from 3.3.0 to 3.4.0
  • deps: Bump codecov/codecov-action from 4.3.0 to 4.3.1
  • deps: Bump pypa/gh-action-pypi-publish from 1.10.0 to 1.10.1
  • deps: Bump powerapi[everything] from 2.7.0 to 2.8.0
  • deps: Bump powerapi/powerapi from 2.7.0 to 2.8.0
  • deps: Bump pypa/gh-action-pypi-publish from 1.9.0 to 1.10.0
  • deps: Bump docker/build-push-action from 6.6.1 to 6.7.0
  • deps: Bump docker/build-push-action from 6.5.0 to 6.6.1
  • deps: Bump docker/setup-buildx-action from 3.5.0 to 3.6.1
  • deps: Bump docker/login-action from 3.2.0 to 3.3.0
  • deps: Bump docker/setup-qemu-action from 3.1.0 to 3.2.0
  • deps: Bump docker/build-push-action from 6.4.1 to 6.5.0
  • deps: Bump docker/setup-buildx-action from 3.4.0 to 3.5.0
  • deps: Bump docker/build-push-action from 6.1.0 to 6.2.0
  • deps: Bump softprops/action-gh-release from 2.0.6 to 2.0.7
  • deps: Bump docker/build-push-action from 6.4.0 to 6.4.1
  • deps: Bump docker/build-push-action from 6.3.0 to 6.4.0
  • deps: Bump pypa/gh-action-pypi-publish from 1.10.1 to 1.10.2
  • deps: Bump docker/setup-buildx-action from 3.2.0 to 3.3.0
  • deps: Bump codecov/codecov-action from 4.1.1 to 4.2.0
  • deps: Bump softprops/action-gh-release from 2.0.7 to 2.0.8
  • deps: Bump docker/build-push-action from 6.0.2 to 6.1.0
  • deps: Bump docker/build-push-action from 6.0.1 to 6.0.2
  • deps: Bump softprops/action-gh-release from 2.0.5 to 2.0.6
  • deps: Bump docker/build-push-action from 6.0.0 to 6.0.1
  • deps: Bump docker/build-push-action from 5.4.0 to 6.0.0
  • deps: Bump pypa/gh-action-pypi-publish from 1.8.14 to 1.9.0
  • deps: Bump codecov/codecov-action from 4.4.1 to 4.5.0
  • deps: Bump docker/build-push-action from 5.3.0 to 5.4.0
  • deps: Bump powerapi[everything] from 2.6.0 to 2.7.0
  • deps: Bump powerapi/powerapi from 2.6.0 to 2.7.0
  • deps: Bump docker/login-action from 3.1.0 to 3.2.0
  • deps: Bump softprops/action-gh-release from 2.0.4 to 2.0.5
  • deps: Bump docker/build-push-action from 6.2.0 to 6.3.0
  • deps: Bump powerapi[everything] from 2.5.0 to 2.6.0
  • deps: Bump powerapi/powerapi from 2.5.0 to 2.6.0
  • deps: Bump codecov/codecov-action from 4.2.0 to 4.3.0
  • deps: Bump docker/setup-qemu-action from 3.0.0 to 3.1.0
  • pyproject: Update python minimal version and classifiers

Code Refactoring

  • Use built-in collection types in type annotations
  • Remove network parameters
  • Remove sensor and formula types as paremeters, Usage of lastest versions for different dependencies
  • Define formula and sensor version via environment variabes, latest is now the default value
  • Put correct sensor version, defini mongodb as default source/destination
  • Remove useless filedb image
  • Remove unnecessary filedb configuration files
  • Remove version and filedb service
  • Remove filedb as destination, define mongodb as default source/destination
  • Use add_dispatch_rule method of RouteTable

Documentation

  • Update README with usage of environment variables for versions configuration
  • Update deployment documentation according to changes on scripts

Features

  • Add docker deployments files

Miscellaneous Chores

  • release: Bump SmartWatts package version to 2.3.0

v2.2.0

28 Mar 13:23
v2.2.0
Compare
Choose a tag to compare

v2.2.0 (2024-03-28)

Bug Fixes

  • cli: Wrong prefix Error History parameters name
  • handler: Fix ValueError when no HWPCReport left for the sample
  • handler: Fix wrong input report format in global power predict

Build System

  • Bump SmartWatts package version to 2.2.0
  • Dockerfile: Pin PowerAPI base image tag to sha256 digest
  • deps: Bump docker/metadata-action from 5.5.0 to 5.5.1
  • deps: Bump powerapi/powerapi from 2f0afe6 to d81766e
  • deps: Bump codecov/codecov-action from 4.1.0 to 4.1.1
  • deps: Bump powerapi/powerapi from 2.3.0 to 2.4.0
  • deps: Bump pypa/gh-action-pypi-publish from 1.8.8 to 1.8.10
  • deps: Bump docker/setup-buildx-action from 3.1.0 to 3.2.0
  • deps: Bump docker/build-push-action from 5.2.0 to 5.3.0
  • deps: Bump docker/login-action from 3.0.0 to 3.1.0
  • deps: Bump softprops/action-gh-release from 2.0.3 to 2.0.4
  • deps: Bump softprops/action-gh-release from 2.0.2 to 2.0.3
  • deps: Fix version number comment for softprops/action-gh-release
  • deps: Bump docker/build-push-action from 5.1.0 to 5.2.0
  • deps: Bump softprops/action-gh-release from 1 to 2
  • deps: Bump pypa/gh-action-pypi-publish from 1.8.12 to 1.8.14
  • deps: Bump pypa/gh-action-pypi-publish from 1.8.11 to 1.8.12
  • deps: Bump docker/setup-buildx-action from 3.0.0 to 3.1.0
  • deps: Bump powerapi/powerapi from 2.4.0 to 2.5.0
  • deps: Bump codecov/codecov-action from 4.0.1 to 4.0.2
  • deps: Bump powerapi/powerapi from 2.2.0 to 2.3.0
  • deps: Bump codecov/codecov-action from 4.0.0 to 4.0.1
  • deps: Bump docker/setup-buildx-action from 2.9.1 to 2.10.0
  • deps: Bump codecov/codecov-action from 3.1.6 to 4.0.0
  • deps: Bump codecov/codecov-action from 3.1.5 to 3.1.6
  • deps: Bump actions/checkout from 3 to 4
  • deps: Bump codecov/codecov-action from 4.0.2 to 4.1.0
  • deps: Bump codecov/codecov-action from 3.1.4 to 3.1.5
  • deps: Bump docker/metadata-action from 5.4.0 to 5.5.0
  • deps: Bump docker/metadata-action from 5.3.0 to 5.4.0
  • deps: Bump github/codeql-action from 2 to 3
  • deps: Bump docker/build-push-action from 4.1.1 to 4.2.1
  • deps: Bump powerapi/powerapi from 2.1.0 to 2.2.0
  • deps: Bump actions/setup-python from 4 to 5
  • deps: Bump docker/metadata-action from 5.2.0 to 5.3.0
  • deps: Bump docker/metadata-action from 5.0.0 to 5.2.0
  • deps: Bump pypa/gh-action-pypi-publish from 1.8.10 to 1.8.11
  • deps: Bump docker/build-push-action from 5.0.0 to 5.1.0
  • deps: Bump docker/build-push-action from 4.2.1 to 5.0.0
  • deps: Bump docker/metadata-action from 4.6.0 to 5.0.0
  • deps: Bump docker/login-action from 2.2.0 to 3.0.0
  • deps: Bump docker/setup-buildx-action from 2.10.0 to 3.0.0
  • deps-dev: Bump powerapi[everything] from 2.1.0 to 2.2.0
  • deps-dev: Bump powerapi[everything] from 2.2.0 to 2.3.0
  • deps-dev: Bump powerapi[everything] from 2.3.0 to 2.4.0
  • deps-dev: Bump powerapi[everything] from 2.4.0 to 2.5.0
  • pyproject: Add Python 3.12 support to classifiers
  • ruff: Fix deprecated top-level linter settings

Code Refactoring

  • Use callable objects instead of nested functions for actors factory
  • Use clf instead of model for sklearn regressor
  • actor: Rename formula factory class and parameters
  • actor: Add docstring to formula factory class
  • handler: Access power model methods from Frequency Layer
  • handler: Remove metadata default value in PowerReport generator
  • handler: Use a generator in _get_nearest_frequency_layer method
  • model: Rename report history file
  • model: Rename samples history module
  • model: Rename attributes name of report history
  • model: Use integer instead of float for the frequencies in CPU topology
  • model: Use the samples_history terminology everywhere
  • model: Remove unused typing dependency
  • model: Fix ruff no-else-return warning in ErrorHistory

Continuous Integration

  • release: Add Docker image build for arm64 target platform
  • release: Fix warning about deprecation of print_hash for pypa/gh-action-pypi-publish
  • release: Disable generation of provenance attestation for container image
  • release: Remove container image signature
  • release: Use vars instead of secrets to get the Docker Hub username
  • release: Sign the container image digest once per repository

Features

  • actor: Add Error History configuration parameters
  • cli: Add support of PowerAPI Pre-Processors
  • cli: Add CLI arguments for Error History configuration
  • handler: Use Error History to trigger new power model learning
  • model: Clear error history when learning a new power model
  • model: Add Error History support to Frequency Layer
  • model: Add Error History class
  • model: Add Frequency Layer to manage model and reports history

Miscellaneous Chores

  • Use the same license format in every files

Tests

  • model: Fix Sonar S1244 error about equality on floating points values
  • model: Remove redundant test of reports history
  • model: Update CPU topology tests to use integer instead of float for frequencies

v2.1.2

19 Jul 14:17
Compare
Choose a tag to compare

v2.1.2 (2023-07-19)

Build System

  • Bump SmartWatts package version to 2.1.2
  • Disable line-too-long Pylint warning
  • deps: Bump powerapi/powerapi from 2.0.4 to 2.1.0
  • deps: Bump pypa/gh-action-pypi-publish from 1.8.7 to 1.8.8
  • deps: Bump pypa/gh-action-pypi-publish from 1.8.6 to 1.8.7
  • deps-dev: Bump powerapi[everything] from 2.0.4 to 2.1.0

Code Refactoring

  • Adapt CLI arguments definition to the PowerAPI 2.1.0 changes

Continuous Integration

  • Make Dependabot check GitHub actions versions daily
  • release: Sign container image with cosign
  • release: Use Docker buildx for container image builds

v2.1.1

14 Jun 13:40
d57b04b
Compare
Choose a tag to compare

v2.1.1 (2023-06-14)

Build System

  • deps: Bump docker/build-push-action from 4.1.0 to 4.1.1
  • deps: Bump docker/metadata-action from 4.5.0 to 4.6.0
  • deps: Bump powerapi/powerapi from 2.0.3 to 2.0.4
  • deps: Bump docker/build-push-action from 4.0.0 to 4.1.0
  • deps: Bump docker/login-action from 2.1.0 to 2.2.0
  • deps: Bump docker/metadata-action from 4.4.0 to 4.5.0
  • deps: Bump codecov/codecov-action from 3.1.3 to 3.1.4
  • deps: Bump pypa/gh-action-pypi-publish from 1.8.5 to 1.8.6

Code Refactoring

  • Adapt main and config_validator for using PowerAPI 2.0.4

v2.1.0

05 May 13:34
Compare
Choose a tag to compare

v2.1.0 (2023-05-05)

Bug Fixes

  • handler: Use an OrderedDict for ticks storage

Build System

  • Bump PowerAPI version to 2.0.2
  • Switch to Ruff for code linting
  • Remove unused pytest asyncio and timeout dependencies
  • Update pylint configuration file
  • Bump SmartWatts package version to 2.1.0
  • Update dockerignore file for src-layout support
  • Migrate from setup.(py|cfg) to pyproject.toml
  • Remove influxdb_client dependency that now is inside influxdb
  • Bump SmartWatts package version to 2.0.1
  • deps: Bump powerapi/powerapi from 2.0.2 to 2.0.3
  • deps: Bump docker/metadata-action from 4.3.0 to 4.4.0
  • deps: Bump pypa/gh-action-pypi-publish from 1.8.3 to 1.8.5
  • deps-dev: Bump powerapi[everything] from 2.0.2 to 2.0.3

Code Refactoring

  • Cleanup formula main
  • Cleanup HwPC report handler
  • Move scripts into their own directory
  • Move actor, handler and model code in their own module
  • Move the formula configuration in the actor module
  • Use the Formula report of PowerAPI instead of our own
  • Move power model code in the model module
  • Fix invalid-name pylint warning for logging level/format constants
  • Remove unused scripts directory
  • Rename exceptions file
  • Adapt tests to PowerAPI 2.0.1 refactoring
  • Switch project to src-layout
  • Fix pylint error about unused **kwargs parameter in formula factories
  • handler: Fix arguments-renamed pylint warning for handle method
  • handler: Cleanup send report(s) to pusher(s) loop
  • model: Rename History class to ReportHistory
  • model: Add type hints to the methods of the CPUTopology class
  • model: Move report history into its own file
  • model: Filter sklearn warnings when training the model
  • model: Add type hints to the methods of the PowerModel and ReportHistory classes
  • model: Remove the apply_intercept_share method
  • report: Use f-string for repr method of formula report

Continuous Integration

  • Update codebase paths in workflows for the src-layout
  • Switch to Trusted Publishing (OIDC auth) for pypa/gh-action-pypi-publish
  • Add CodeQL workflow
  • Add dependabot configuration file
  • Update secrets of docker/login-action for release workflow
  • Rework release workflow
  • Rework build/test workflow
  • build: Add upload of coverage reports to Codecov
  • build: Use ruff instead of flake8 in code lint step
  • build: Add pytest step to run unit tests with coverage

Features

  • Declare exposed names in all list for each modules
  • Add support of FormulaReport (model debug)
  • Use more concise logging messages format
  • cli: Improve cli arguments value checks

Miscellaneous Chores

  • Update project description in README
  • Add CITATION.cff file
  • Update dockerignore to support pyproject.toml

Tests

  • Add power model unit tests module
  • Add unit test module
  • Remove broken acceptation tests
  • Fix pylint not-an-iterable error in acceptation tests utils
  • model: Remove redundant test of _extract_events_value method
  • model: Add power model unit tests
  • model: Add reports history unit tests
  • model: Add CPU topology unit tests

v2.0.1

24 Mar 12:33
Compare
Choose a tag to compare

2.0.1 (2023-03-24)

Build System

  • Bump SmartWatts package version to 2.0.1
  • Remove influxdb_client dependency that now is inside influxdb

Code Refactoring

  • Adapt tests to PowerAPI 2.0.1 refactoring

v2.0.0

24 Feb 11:38
Compare
Choose a tag to compare

2.0.0 (2023-02-24)

Bug Fixes

  • remove useless parameters from pylint configuratiobn (fb24e05)
  • solve issue related to formula in post-morten mode (48e618f)
  • solve issues with flake8 (4117c08)
  • solve pylint issues, remove useless parameters from pylint configuratiobn (3719e6e)

BREAKING CHANGES

  • TheSpian library is no longer used

v0.9.2

08 Aug 12:13
Compare
Choose a tag to compare

0.9.2 (2022-08-08)

Smartwatts uses now PowerAPI version 1.1.0.

v0.9.1

25 Jul 12:05
Compare
Choose a tag to compare

0.9.1 (2022-07-25)

Smartwatts uses now PowerAPI version 1.0.9.

v0.9.0

28 Jan 10:13
Compare
Choose a tag to compare

0.9.0 (2022-01-28)

Smarwtwatts is now under BSD-3 licence