Blog
Getting high grade cpu utilization values on MacOS
- by Didi Hoffmann

CPU utilization is an interesting value to use if you ware interested in either energy usage or optimizing your code. We have written a long case study on if it is useful in the first place. Long story short: not really. It used to be a good metrics before cpus would scale dynamically, you had on type of cpu and not multiple performance/ energy cores that each do their own thing and things were a lot simpler. But in modern computers the utilization is somehow interesting but not really much worth in terms of an exact metric. [...]

PNG. A message from the past and how to kill it
- by Didi Hoffmann

While reading this great article https://evanhahn.com/worlds-smallest-png/ about the smallest png image possible I started thinking about how old the png standard is and how many more newer formats are out there. PNG is 27 years old and JPG is 31. Still png with jpg still seems to be the standard when looking at software out there. For example the standard wordpress themes have pngs for their images. Also the wordpress photos page returns a lot pf JPG images. We have written about the savings of using avif in comparison to png in one of our case studies: AVIF VS. PNG [...]

Benchmarking code optimisation
- by Didi Hoffmann

Standard benchmarks play a pivotal role in the field of software engineering, serving as a foundational element for ensuring quality and efficiency. The Transaction Processing Performance Council (TPC) benchmarks, in particular, have established a high standard across the database sector. These benchmarks are designed to simulate real-world database usage, offering a platform for comparing various database products in a manner that is fair, fundamental, and reproducible. [...]

Carbon Aware Development - (SCLA part 2)
- by Didi Hoffmann

While writing the “Software Life Cycle Assessment done in the wild” article I needed to develop a little server that could do three simple tasks. Because the article became too long I decided to separate the methodology how to develop with environmental impact in mind into a dedicated part. Feel free to head over to the SLCA article and read the first part to see why we are developing this server. [...]

Software Life Cycle Assessment done in the wild - (SLCA part 1)
- by Didi Hoffmann

In this article I want to propose a simple way to do a Software Life Cycle Assessment for a piece of code. While explaining important concepts and tradeoffs that seem sensible for a little project. Of course things could be done differently and I am happy to discuss them in more detail as this is just a first draft of how things could be done. Please head to https://github.com/green-coding-solutions/SLCA-Code for all source code and discussions. Please also feel free to contribute to the code through pull requests. As Green Coding Solutions we have been working on this topic for some time and a more academic discussion can be found in our chapter in the Transparency for Software Climate Impact publication (Part of the Shaping Digital Transformation for a Sustainable Society publication). [...]

Energy and power usage data in the cloud
- by Arne Tarara

Getting power usage data in cloud is a tough topic and one of the reasons projects such as Cloud Carbon Footprint exist. Typically cloud vendors, especially hyperscalers, do neither supply energy consumption data of the whole machine from PDUs or similar, nor do they provide access to CPU internal energy data like for instance RAPL. [...]

Eco-CI: Now with Gitlab pipelines support
- by Dan Mateas

We are happy to announce a major update to our Eco-CI tool, a plugin designed to estimate and reduce the energy consumption of continuous integration pipelines. Previously available exclusively for GitHub Actions, we are excited to announce the integration of Eco-CI with GitLab pipelines. We hope this will encourage Gitlab developers to measure their carbon emissions and make informed decisions regarding sustainable software processes. [...]

NOP Linux
- by Didi Hoffmann

This blog article is not updated anymore. Please find the newest way to configure NOP Linux in our documentation. At Green Coding Solutions (GCS), one goal is to enable reproducible runs on our cluster. An important step towards accurate measurements was the creation of NOP Linux, our custom Linux distro that disables as many background processes as possible to avoid interruptions during measurements. Another crucial step was ensuring the reliable operation of the PowerSpy2, so we could measure the entire power consumption. [...]

Green Metrics Tool v0.15 & Eco-CI Upgrade
- by Arne Tarara

The long awaited feature to make comparisons with the Green Metrics Tool is finally live 🔥 Our measurement workflow now includes phases (Baseline, Idle, Installation, Boot, Runtime, Remove) which makes our tool compatible with the requirements specified by the Blue Angel for Software. [...]

Green Coding on Mac
- by Didi Hoffmann

Green Coding on Mac When we started with the Green Metrics Tool (GMT) we set out to develop tooling to enable developers, decision makers and the wider public to measure and see the impact software is having on the environment. [...]