Figure 1. How GreenFrame measures the carbon footprint of a digital system
Kemal Görgülü (Chief Technology Officer, ARTE)
Sustainability is one of ARTE’s core values. Not only have environmental issues always had a place in our programme catalogue, but they also play an essential role in shaping our in-house energy policy, technical infrastructure, and various other fields – including digital activities. By identifying potential for reducing our digital carbon footprint, we aim to induce a sustainable change in mindsets and behaviours as early as the programming stage. But where to start from?
An important first step towards prioritizing appropriate actions was to get a clear picture of the carbon footprint of our digital system, specifically our arte.tv platform. However, existing measurement tools proved to be insufficient to obtain a comprehensive end-to-end vision of the impact. They evaluate the footprint of only one part of a digital system – the client, the server, or the network. In doing so, they create an incentive to move emissions from one part of the system to another part that isn’t measured, thus improving the visible metrics but not the overall footprint.
Furthermore, while it may be possible to quantify the environmental impact of server- side infrastructure fairly easily, doing so on the client side is all the more difficult. The only way to get accurate system metrics like CPU or network consumption on the client side is to have users install third-party software with administrator privileges – not a viable option with regard to security and data protection requirements.
The good news is that some experimental solutions are emerging to fill this gap. We have realized a proof of concept with one of them, GreenFrame (formerly Argos), a promising framework based on scientific models and addressing the main issues listed above. GreenFrame allowed us to measure the carbon footprint of an entire end-to-end stack within a controlled environment.
GreenFrame isn’t yet capable of giving an accurate estimate of the footprint of the arte.tv system in production. It focuses on reproducing the digital system in a lab environment. But by doing so, it provides precious and reproducible key indicators that make it possible to assess the evolution of the arte.tv carbon footprint over time as new features are regularly added by developers. It allows us to raise awareness of good and bad development practices with respect to carbon footprint. It also allows us to clearly highlight the link between sustainability, performance, and the user experience on our platform.
How does it work?
On the frontend, GreenFrame conducts end-to-end tests by simulating typical user scenarios (Fig. 1). It uses Docker to encapsulate each component of the system in an isolated container.
While running the scenarios, GreenFrame gathers technical metrics (CPU, memory, network I/Os, disk I/Os) in real time, and transforms them into the same unit, watt-hours. Based on an energy mix, watt-hours can easily be converted to carbon emissions, which convey a clear overview of the digital system footprint. Each scenario is run a dozen times to get a strong, accurate signal and reduce the standard deviation.
That means GreenFrame tracks the entire system: the frontend, the backend, the database, and the network.
The process of running GreenFrame tests is fully automated and, thanks to its container-based architecture, it runs smoothly in any continuous integration (CI) and deployment (CD) system. New analyses can be triggered each time a developer pushes a change in the code, giving us the possibility to detect any kind of improvement or regression in the environmental footprint of the global system before deploying a new feature to production.
Limitations and results
For our proof of concept, led by François Dume and Olivier Hoffschir, we were able to get the project started quickly because we were already in the process of converting all our applications to a container-based infrastructure. Having this kind of architecture in place is a strong requirement for using this tool. But some services (databases, APIs, CDN) proved to be more difficult to integrate into this controlled environment. In some cases we thus had to simulate services, for example using static text files, which may have led to underestimates.
The initial results weren’t necessarily revolutionary and basically confirmed our assumptions that the majority of energy consumption is indeed on the user side (browser, screen, network, …). They also highlighted that video transit and decoding form the bulk of the carbon emissions of a media service like arte.tv (Fig. 2).
Figure 2: The client device and the network account for the vast majority of energy use.
Reducing our global carbon footprint means first and foremost reducing our client- side energy consumption. The challenge will be to find a balance between reducing the carbon footprint without compromising the UI/UX. As a positive side effect, this will also mean significantly improving page and video loading times.
We will continue to use GreenFrame at ARTE and integrate it into our CI system in order to detect regression early in our development processes. We will also take the example of other important issues like web performance and security, and determine a monthly ‘carbon budget’, combined with an internal set of rules to limit (and reduce) energy consumption.
A further approach will be to give greater consideration to environmental criteria when choosing, for example, a new CDN provider, as this represents a large part of our video infrastructure. CDNs currently don’t provide CO2 emissions metrics, but they will if enough customers require them.
Finally, we’re aware that optimizing the footprint of a service can lead to more usage, and ultimately to greater emissions. We want to offer transparency to our viewers so that they can make informed decisions about how they watch ARTE videos.
Then, all requirements will be met for a virtuous circle allowing us to induce sustainable business transformation at ARTE, thus meeting our responsibility as public service media to do our part in improving the environmental impact of our industry.
This article was first published in issue 48 of tech-i magazine.