Skip to content

Releases: green-coding-solutions/green-metrics-tool

v1.2.0 STDDEV changes and display tweaks

14 Oct 13:14
d098fa1
Compare
Choose a tag to compare

STDDEV in GMT is now exclusively calculated as SAMPLE-STDDEV and not POP-STDDEV anymore.

This is for two reasons:

  • It is required by certifications like the Blue Angel for Software
  • We got many debates that in cases where the average is only estimated through measurements and is not absolute one MUST use the sample STDDEV. Still one could argue that one does not want to characterize the measured software but rather the measurement setup it is safer to use the sample STDDEV as it is always higher

Furthermore some display changed where made to have the AVG bar optional and quick-access for the timeline was added on overview

What's Changed

Full Changelog: v1.1.1...v1.1.2

v1.1.1 SCI / Embodied Carbon Patch & dependencies update

07 Oct 12:23
de56353
Compare
Choose a tag to compare
  • (fix) SCI values were not correctly reported anymore.
  • (update) Using the release to also update some depedencies

What's Changed

Full Changelog: v1.1...v1.1.1

v.1.1.0 - Patch Release / Feature Release

05 Oct 08:48
2ceb2cb
Compare
Choose a tag to compare

v1.0 is just a week out, and here it is: The first patch / feature release :)

We encourage everybody to update as one reporter was reporting broken data.

Fixes

  • Some API calls in the HOG are now optional as we have seen machines without disks
  • GMT uses for reporiting the SI norms. That means that 1 KB is 1000 Bytes, not 1024 (as this would be kiB). We fixed one occurence where this was not correctly reported but should be negligeable to most users.
  • network_io_cgroup_container reporter was reporting grossly false high values. Here an accumulation instead of an assign was happening. (Note that this was introduced in v1.0 and was fine in versions before. Blast radius should thus be small)

Features addons

  • SSL is now possible in the installation process. It should be pretty straight forward but documentation is to follow.
  • Cron dir is now refactored and all cron jobs have error handling
  • Added a backup script to import backups to the database (Can handle 100 GB+ imports !)

Important info

CarbonDB 2.0 is actually not part of this release. Due to some branch merging it looks this way on GitHub. It will be released later next week with v1.2

What's Changed

Full Changelog: v1.0...v1.0.1

v1.0

30 Sep 14:26
332347f
Compare
Choose a tag to compare

The 1.0 release !!!! 🎉

While this release mostly contains updates and tests to asset the stability of the measurements it has two main perks:

  • GMT now has an authentication so it can be used with multiple users to implement ACLs and data retention
  • GMT is now fully compliant with the measurement requirements for the new Blue Angel for Software

We opted for the 1.0 release now as we have used it to capture more than 1 TB of measurement data of 100+ users.

GMT has been featured on many conferences and papers

We believe it is now ready for 1.0. Enjoy!

What's Changed

Full Changelog: v0.25...v1.0

v0.25 Security Release! + Feature drop

25 Jul 11:03
a328104
Compare
Choose a tag to compare

Security

When install GMT in an unsecured multi-user environment a malicious actor that has already penetrated the system could replace a binary in an allowed sudoers path to get root access rights.

This security vulnerability is to be seen as relatively low, as the system is not open from the outside. It is a local privilege escalation.

We recommend updating to this release as soon as possible. Fix can be applied by just running the install script (install_linux.sh / install_mac.sh) again.

Features

  • Power per Container is now displayed in the dashboard. This feature is based on a linear estimation of the container CPU usage and the total machine power
  • Multi-Stage-Build Docker Images Support
  • Global Timeout to abort measurement when a timer is expired
  • Weekly projects for the timeline projects to run a project only once a week
  • RAPL energy filtering guard clause is now checked

What's Changed

Read more

v0.24 - Optimizations, Diffing, Intel PSYS, Performance, CarbonDB & QoL

22 Apr 10:17
0187979
Compare
Choose a tag to compare

Oh my, what a release!

The most important: Green Metrics Tool now has optimizations!

When you do a run you will be informed about what to tweak and optimize in order to make your software greener. We are releasing a first bunch of battle tested optimizations into open source. More to follow!

See details on the bottom of the GMT page here: https://www.green-coding.io/projects/green-metrics-tool/

Other very prominent changes are:

  • Introducing heavy caching with Redis for API Requests, badges and internal calculations
  • Error handling is now modular and will use a Queuing system if wanted. Blocking email errors are gone!
  • CarbonDB added. You can now find out how much carbon your total cluster is using!
  • Diffing has been implemented! See details here: #693
  • PSYS domain can now be captured to get the whole energy of your Notebook: https://docs.green-coding.io/docs/measuring/metric-providers/psu-energy-dc-rapl-msr-machine/
  • Many checks for measurement stability, taskset in order to reduce overhead, docker builds have now layer caching for faster GMT updates, DB reconnects and much more. Read the detailes under What's changed

What's Changed

Full Changelog: v0.23...v0.24

v0.23 Cluster, DEV & Accuracy Tooling

17 Feb 05:56
fed8146
Compare
Choose a tag to compare

Key additions

  • Updated our values for the average grid intensity and the embodied carbon values.
    • If you are running on our Cluster you will see now different CO2 values.
  • Cluster status page greatly updated. Give it a try on our status page
  • DEV mode tooling greatly improved. Faster usage scenario development and testing runs!
    • See docs page for details
      • --dev-no-sleeps
      • --dev-flow-timetravel
      • --dev-no-build
  • calibrate.py script to calculate the measurement overhead
  • Package updates and small visual updates and fixes.

Thank you @alexzurbonsen for your contributions! ❤️

What's Changed

New Contributors

Full Changelog: v0.22.1...v0.23

v0.22.1 - Massive Feature Drop 2024 - Hotfix #1

05 Jan 15:50
141bd2b
Compare
Choose a tag to compare
  • Fix for validate time calculation not respecting machine_id

v0.22 - Massive Feature Drop 2024

05 Jan 12:29
bb63530
Compare
Choose a tag to compare

The year starts very welcoming with a massive feature release for the Green Metrics Tool :)

  • New Dev switches added for faster usage scenario development.
  • Cluster is now temperature controlled and has control workloads. Documentation
  • Frontend display improvements
  • Energy Timeline now shows Standard Deviation
  • Lockstep sampling added
  • Faster container boots / shutdowns for GMT
  • Faster unit test runs (2x-6x !)
  • Improved status page
  • GMT color via own commit hash
  • Various improvements and refactorings

Big Thanks to @davidkopp for many contributions! <3

What's Changed

  • Bump playwright/python from 1.39.0-jammy to v1.40.0-jammy in /docker/auxiliary-containers/gcb_playwright by @dependabot in #561
  • Fix for Intel macs for GMT by @ArneTR in #563
  • Env vars numbers tests by @ArneTR in #546
  • system checks was not in correct position by @ArneTR in #564
  • Document tests dependencies by @davidkopp in #565
  • Updated DataTables to newest version by @ArneTR in #572
  • Hovering over a unit to see raw value by @ArneTR in #575
  • Guard clause for not mapped metric provider by @ArneTR in #578
  • Refactor env var checks and tests by @davidkopp in #577
  • Make Docker image tags lowercase by @davidkopp in #571
  • Bump psycopg[binary] from 3.1.13 to 3.1.14 by @dependabot in #579
  • Moving to 99 Hertz to avoid lockstep sampling by @ArneTR in #583
  • Bump pandas from 2.1.3 to 2.1.4 by @dependabot in #585
  • Bump python from 3.12.0-slim-bookworm to 3.12.1-slim-bookworm in /docker by @dependabot in #586
  • Bump fastapi from 0.104.1 to 0.105.0 by @dependabot in #592
  • Bump pylint from 3.0.2 to 3.0.3 by @dependabot in #591
  • Cleanup security guard by @ArneTR in #597
  • Make loading of detailed measurements optional by @ArneTR in #598
  • Bump psycopg[binary] from 3.1.14 to 3.1.15 by @dependabot in #596
  • Disable Docker CLI hints by @davidkopp in #555
  • Bump psutil from 5.9.6 to 5.9.7 by @dependabot in #603
  • Fix frontend flow menu to wrap automatically by @davidkopp in #584
  • Added SIGQUIT to nginx and initi to gunicorn, as we are using bash sc… by @ArneTR in #605
  • Changed wording for network infrastructure box by @ArneTR in #608
  • Added powercap info to hardware_info by @ArneTR in #609
  • Bump psycopg[binary] from 3.1.15 to 3.1.16 by @dependabot in #610
  • Use depends_on for container startup order (refactored) by @davidkopp in #593
  • fix for issue where tests on external PR's will fail when attempting to write to cache by @dan-mm in #576
  • Support reading notes from services by @davidkopp in #590
  • Branch and filename are now always not null by @ArneTR in #602
  • Bump uvicorn[standard] from 0.24.0.post1 to 0.25.0 by @dependabot in #612
  • Fix check if stderr is empty by @davidkopp in #613
  • Tests run_until must be guard-claused with cleanup routine by @ArneTR in #616
  • Switched from cmd to command by @ArneTR in #615
  • Run ID is now accessible even after fail and thus can be sent via ema… by @ArneTR in #601
  • Status has now a waiting time by @ArneTR in #599
  • Disable tinyproxy systemd service by @ArneTR in #623
  • Added stddev to timeline by @ArneTR in #627
  • Bump pydantic from 2.5.2 to 2.5.3 by @dependabot in #628
  • Bump fastapi from 0.105.0 to 0.108.0 by @dependabot in #632
  • Non-Blocking starlette body read by @ArneTR in #633
  • GMT color via own commit hash by @ArneTR in #634
  • Refactoring for error messages and security fix for path echoing by @ArneTR in #636
  • Refactored kill/killpg mechanism to be unified and actually fail on n… by @ArneTR in #625
  • Stderr is now by default UTF-8 by @ArneTR in #624
  • System check providers running by @ArneTR in #619
  • Bump pytest from 7.4.3 to 7.4.4 by @dependabot in #639
  • Adds skip_checks to providers by @ribalba in #566
  • Dev mode by @ArneTR in #637
  • Validate.py script to check stddev of energy measurements for cluster by @ArneTR in #600
  • Status page improvements by @ArneTR in #641
  • Temperature Baseline cooldown in client.py by @ArneTR in #643

Full Changelog: v0.21...v0.22

v0.21 PSU AC Power MCP39F511N, QoL & Security upgrades

26 Nov 08:01
df5df50
Compare
Choose a tag to compare

In this release we finally brought the support for our new high resolution AC PSU provider the MCP39F511N.

Also we have some QoL updates like showing the run link directly after a run, refactorings and a security upgrade (a file that we set in the sudoers file is now put to read only by all).

Also we welcome a new contributor: @davidkopp ❤️

Happy measuring y'all :)

What's Changed

New Contributors

Full Changelog: v0.20.2...v0.21