Exploring Carbon Awareness: No, It's Not a Trendy Mindfulness Practice

Have you ever heard about carbon awareness? What it is and how can be implemented? In this article, we'll cover just that, and also bring you an overall understanding of the concept and what it means for the environment.

Hi everyone, it's been a while! I haven't had time to fully commit to writing these past weeks. That's why I missed the regular posting schedule last Monday. But now I'm back, and eager to share with you more of the topics related to sustainability.

This week, we'll cover the Carbon Awareness. We'll go from the beginning - what it is, and why is it important. Then we'll check out how you and your team can be more carbon aware. I'll also mention some examples of carbon awareness. In the end, we'll cover if there is a negative side to it.

I hope you'll find this topic interesting and engaging. And I hope it will help us better understand the idea of how can we all help in fighting climate change. One server at a time.

What it is?

To explain this, we need to first address what is awareness? Just kidding. Paragraphs below explain the carbon awareness in somewhat simple terms.

What we all know is that not all electricity production is equal. There are renewable sources, with little to no carbon emission. Then there are non-renewable sources which, well, brought us here.

What I wasn't aware before is that at different times or locations, these sources vary. This means that on sunny or windy days, you can get electricity from solar or wind power. And in opposite cases, you'll usually get it from a regular coal burning power plant.

This might not apply as much to the state of things in Serbia. As you can see on the image below, we don't consume that much electricity from renewable sources. Well, there is hydroelectric energy, sure. But then again, we also have those Mini hydroelectric power plants that are quite a touchy topic.

As a country, we might be good at sports. But, when it comes to energy production and consumption, well... But we'll not cover that here.

Image shows the map of Europe with Serbia marked and on the left side are the yearly electricity consumption of the country.
Source: https://app.electricitymaps.com/zone/RS

What is carbon awareness? Do more when the energy is coming from renewable sources. Do less when it comes from non-renewable sources.

That is neat. But, it's easier said than done.

Why is this important?

The answer to this is quite simple - it is important because it can help saving our planet. One of the things that can be helpful is to stop using electricity from carbon intensive sources. That is not an easy thing to do at once, so we need to be more patient there. Step by step our consumption from those sources needs to decrease.

An advantage for renewable sources is that they're cheaper than coal. And studies show that carbon aware actions can result in 45% to 99% carbon reductions. Depending on the number of renewables powering the grid. More information on the link below.

Putting a CO<inf>2</inf> figure on a piece of computation
In recent years, energy efficiency has become a major focus of data centre designers and operators. This has predominantly been due to the rising cost of energy and the exponential increase in the absolute energy consumption of data centres. As carbon taxes, emissions trading and environmental imper…

How to be more carbon aware?

There are two ways to be more carbon aware - demand shifting and demand shaping.

Demand shifting

If workloads are flexible about when and where they run, we can shift our demand accordingly. We can run our workloads more when the energy is cleaner, and less or not at all when the energy is dirtier. For example, we can train a Machine Learning model at a different time or region with a cleaner energy.

We can break down demand shifting to the following.

  • Spatial shifting. Moving our workloads to regions where the energy is cleaner.
  • Temporal shifting. If we cannot move our workloads to different regions, it's possible to run them at different times. During the sunny or windy day, we can opt for running our workloads more.

Demand shaping

Like the above, demand shaping means that we shape our demand to match the existing supply. Demand shaping for carbon-aware applications is all about the supply of carbon. When the carbon cost becomes high, shape the demand to match the supply of carbon. This can happen automatically, or the user can make a choice.

One example of demand shaping is eco-mode found in cars or washing machines. When activated, some amount of performance is sacrificed to consume fewer resources.

Applications can also have eco-modes that can make decisions to reduce emissions. Automatically or with user's consent. A couple of examples are the following.

  • Video conferencing software that adjusts streaming quality automatically. This means reducing the video quality to focus on audio when the bandwidth is low. Instead of streaming at high quality all the time.
  • TCP/IP. The transfer speed increases in response to how much data is broadcast over the wire.
  • Progressive enhancement with the web. The user experience improves based on the resources and bandwidth available on the end devices.

Demand shaping relates to a broader concept in sustainability - reducing consumption. We can achieve a lot by becoming more efficient with resources, but we also need to consume less at some point.

Carbon awareness in the wild

Example of demand shaping

A good example of demand shaping is the website of the Branch Magazine. It is an online magazine written by and for people who dream of a sustainable and a just internet for all. It is published by the Green Web Foundation.

The image below shows how it looks when you visit their site.

Image showing a homepage of the Branch magazine with a dropdown menu on the right showing the Grid intensity view: live, low, moderate, and high. High is marked as the current setting.
Source: https://branch.climateaction.tech/

You have a way to choose your experience on their site. If the grid intensity is low, the web page will load full-blown content - images, videos, GIFs, and so on. Grid carbon intensity is low = energy coming from renewables. If the grid intensity is high, they will not load full content. Instead, the web page will show ALT text for images, videos and GIFs. Website will consume less energy.

If you want to find out more about the way they design their website and why, visit the link below.

Designing Branch: Sustainable Interaction Design Principles - Branch
There’s a need to reconnect the digital to the physical, from minerals and energy to the physical infrastructure that powers the internet. We have to repurpose our digital design processes to consider and reflect these ecological needs, instead of optimising only for business and growth objectives,…

Example of demand shifting

A good example of demand shifting, is the Carbon Aware KEDA Operator. Now, KEDA stands for Kubernetes-based Event Driven Autoscaler. This application can schedule workloads in Kubernetes clusters based on certain events. One of them is carbon intensity of the grid.

Based on the documentation, you can use this Operator to schedule workloads by looking at the data from the Watttime or Electricity Maps. Then it dynamically adjusts the behaviour of the KEDA scheduler.

To find out more about it, visit their GitHub repository on the link below.

GitHub - Azure/carbon-aware-keda-operator
Contribute to Azure/carbon-aware-keda-operator development by creating an account on GitHub.

Now, I haven't played around with this Operator, but I'll do a demo on it in some future article. It would be nice to provide some technical setup of it.

Is there a negative side to carbon awareness?

Before concluding the topic, I want to mention the following question.

Is there a concern that when everyone time shifts to the same location or the same greener grids, that can increase the demand of those grid's energy, which could increase fossil fuel burning to meet that new demand?

There are two parts of this question. The first part is - why we can burn more fossil fuels when we move computing to the greener parts of the world? And the second is - should we be concerned with that?

To answer the first part - in theory, this can happen. If the grid becomes overloaded, power grid companies will end up burning fossil fuels to match this increase. The energy coming from the burning of coal can be dispatched. Meaning, it's easy to predict how much energy you will get from it. Unlike the solar and energy from the wind. You cannot predict easily if there will be wind or more sun, and so on.

Can this happen? In the event that we have only one location providing the renewable energy - it might. The fact that we have plenty of regions in the world that provide the renewables, this is unlikely.

To provide an answer to the second part, I will quote an answer from Asim Hussain. He is the executive director and chairperson of the Green Software Foundation and the director of Green Software at Intel.

... that's one of them good problems. And that's what I think about this thing. So someone's telling me a problem and I'm like, this is a good problem to have. If we are ever even remotely getting to the point where demand shifting is affecting a grid, that is a level of achievement, which is excellent.
Yes, there are negative consequences to that approach, but we are not even remotely there right now. So worrying about that is I think, a little bit too hyperbolic at the moment. You shouldn't do something because if you take that thing to the absolute extreme, it will be negative
I would say demand shifting is never going to be the one solution you have in your pocket to reduce your emissions of your application, your architecture. I always describe it as one of the things that you can do. It's one of the easier things to do. It gets you started on the much more challenging journey of energy efficiency, hardware efficiency, reducing the amount of energy you use, reduce the amount of compute you use.

This question was raised on the Environment Variables podcast. One of my favourite ones. This podcast provides the latest news on how to reduce the emissions of software and how the industry is dealing with its own environmental impact. You can find the full episode and the transcript on the link below.

We Answer Your Questions!
On this episode of Environment Variables, host Chris Adams is joined by Asim Hussain as they dive into a mailbag session, bringing you the most burning unanswered questions from the recent live virtual event on World Environment Day that was hosted by the Green Software Foundation on June 5 2023. As…

Further exploration

Now, I mention a lot of things here. Most of it comes from the excellent material from the Green Software Foundation. On the link below, you can find more about carbon awareness. This lesson is part of the material for the Green Software Practitioner certification. The whole certification process is free. It can help you understand sustainability in IT and principles of green software.

Carbon Awareness | Learn Green Software
Do more when the electricity is cleaner and do less when the electricity is dirtier.

The second link is an interesting talk from Hot Carbon conference from this year. The title is Bringing Carbon Awareness to Multi-cloud Application Delivery (Maji et al.). They discuss how carbon awareness of the Load Balancer on VMWare, decreased overall carbon intensity. The data available was from the research, not live environments. All applications were only stateless. If you'd like to find out more, check out this link.

Congrats! You've reached the end of this carbon awareness article. Thank you for the focus and attention throughout the article.

Let me know in the comments below your opinion on the topic. I'm interested in your feedback and if you found something interesting or not. Feel free to share this article as well, so it can reach more people interested in the topic. Your feedback helps me stay motivated for the future!

Thank you!