Energy Consumption Lab Is Ready For FOSS Community! Dispatch From The Sprint
On Saturday 21 May 2022 KDE Eco held the first of several in-person Sprints for the community lab to measure the energy consumption of Free Software. The Sprint had been postponed twice due to Corona, but the third time was a charm.
KDAB Berlin was gracious in hosting us. They offered us not only a space to construct the lab, but also donated hardware and a brand-new power meter (!), and they even invited everybody to a delicious lunch. In total there were 11 of us at the Sprint, with two participants travelling across Germany to be there. KDE and KDAB Berlin were well-represented (Björn, Volker, Nico, Cornelius, Tobias, Joseph), but the event had broad appeal: several Qt company employees (André, Fabian, Sami) as well as the Green Coding Berlin project (Arne) and a Hasso-Plattner-Institut/Universität Potsdam researcher (Sven) joined us.
The community is at the heart of the work of KDE Eco, and without all of you none of this would be possible!
Smiling community members after a productive day. (Image: CC BY-NC-ND 4.0)
The primary goal for the day was to set up two donated Dell Optiplex 390 desktop computers and the GUDE Expert Power Control 1202 power meter for measuring how much energy Free Software consumes. When you get a bunch of coders together, however, so much more can happen -- and it did here too! Throughout the day several participants also worked with the high-resolution Microchip MCP39F511N device and the low-resolution Gosund SP111 power plug (see configuration instructions to be merged at the FEEP repository and this blog post for automatically reading the energy data from the power plug). Volker has also just published a blog post providing details about the surpising results of their work.
Working with GUDE Expert Power Control 1202 (left power strip), Gosund SP111 (plugged in at top of right power strip), and Microchip MCP39F511N (directly next to right power strip) devices. Although we need more light in the photograph, the lamp (left) was there for calibration purposes only. (Image: CC BY-NC-ND 4.0)
Closer up: GUDE Expert Power Control 1202 (top power strip next to laptop/lamp base), Gosund SP111 (plugged in next to on/off switch of bottom power strip), and the Microchip MCP39F511N development board (just below bottom power strip). (Image: CC BY-NC-ND 4.0)
The lab set up followed the approach described in the research paper Sustainable software products -- Towards assessment criteria for resource and energy efficiency. For the systems to test software on, referred to as the Systems Under Test (SUT), we installed KDE Neon User Edition and Kubuntu 22.04. In order to best use the available hardware, we decided that the power meter data will not have a dedicated third computer to collect data, referred to in the above article as the Data Aggregator and Evaluator. Instead, data will have to be collected on the investigators' own computers. We see no reason to expect this will be problematic, and it allows us to compare power consumption from two different reference systems running KDE Plasma Desktop.
This is the GUDE Expert Power Control 1202. (Screenshot taken from product website.)
Note that for the reference systems on the SUTs, we will run up-to-date operating systems representing real-world computing environments, as opposed to unchanging and thus maximally replicable ones. We think this decision will be more helpful for achieving the KDE Eco community's main objectives: measuring and then driving down the energy consumption of software.
One long-term vision for the lab is to automate the measurement process with remote access for FOSS developers so they can measure their software easily and from anywhere in the world. Although we did not work on automation at the Sprint -- would you, the reader, like to help with this in the near future? -- Nico did set up the SUTs for remote access using SSH and VNC. The set up is based on previous work he did for his Master's thesis at Universität Würzburg.
It is perhaps a given that another goal is to use exclusively Free Software in the lab. Thus, for reading out the measurement data from the Gude power meter, we decided to use a Python script published by researchers at the Umwelt Campus Birkenfeld under the GPLv3 license. This script uses the Simple Network Management Protocol (SNMP) to read data from the device. Getting it to work, though, was not trivial, but Cornelius, with input from Sami and Fabian, did a great job of getting it running. Cornelius documented the necessary steps at the Free and open source Energy Efficiency Project (FEEP) repository.
View of the community lab, where participants were working together to configure the Python script to read data from the Gude power meter and to set up the Systems Under Test for remote access with SSH and VNC. (Image: CC BY-NC-ND 4.0)
Although we did not measure any software at the Sprint, we did test the Standard Usage Scenario script for Kate from Season of KDE 2022 student Karanjot Singh. That said, we should have data for Kate and other KDE/Free Software such as GCompris very soon from the coming measure-athon! If you are a FOSS developer and want to measure your software, please be in touch.
The in-person Sprint was a great opportunity not only to set up the measurement lab but also to get to know the community better... and we truly are a wonderful community! Moreover, much more was achieved at the event than can easily be summed up here. Throughout the day there were many vibrant conversations about how we can effectively reduce the environmental impact of digitization. Although it was not possible to answer such a big question at this event, as a community we took small but important steps forward in making Free Software the most sustainable software.
There were many vibrant conversations throughout the day. (Image: CC BY-NC-ND 4.0)
The community is at the heart of the work of KDE and KDE Eco, and without you none of this would be possible -- again, a big thank you to everyone who joined us! Moreover, what we do is possible because of the support of KDE e.V. as well as BMUV/UBA, who financially support the BE4FOSS project.
Did you know? Discussions similar to those at the Sprint occur monthly at our community meetups on the 2nd Wednesday of the month from 19h-20h (CET/CEST). Join us, we would love to see you there!
The BE4FOSS project was funded by the Federal Environment Agency and the Federal Ministry for the Environment, Nature Conservation, Nuclear Safety and Consumer Protection (BMUV1). The funds are made available by resolution of the German Bundestag.
The publisher is responsible for the content of this publication.