Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

General Feedback #5

Open
pierresegonne opened this issue Oct 10, 2024 · 1 comment
Open

General Feedback #5

pierresegonne opened this issue Oct 10, 2024 · 1 comment
Assignees

Comments

@pierresegonne
Copy link

pierresegonne commented Oct 10, 2024

Hey there,

Thanks a lot for putting this work together! I came across that much needed starting point in the discussion around optimising compute for GHG emissions listening to GreenIO's podcast.

First off, I'm really impressed that you both had the courage to question the status-quo and some of the claims of the large players in that space regarding optimising compute to minimise carbon emissions. I work for Electricity Maps, where our mission is to enable a data driven decarbonisation of electricity. I specifically work in the team generating grid forecasts, where we aim to develop the most meaningful forecasts to enable anyone to take part in that decarbonisation effort. That ranges from providing forecasts that can be embedded in home appliances, utilised for EV smart charging, all the way to providing the forecasts used by Google for load-shifting in their data centers. Generally, we want to be part of that discussion as our forecasts can be one of the cornerstones on which carbon-aware computing is sometimes based. Eventually, what we want to ensure is that the forecasts we develop are indeed useful for making a positive difference and not only as a "feel good" mechanism.

With that in mind, I'd like to share thoughts and feedback on the work presented here, based on how I've have been thinking about this problem. This does not necessarily reflect 1:1 how Electricity Maps as a whole as been thinking about the problem, and more about I've personally tried to become smarter around that topic.

A hierarchy for impact

Generally, I really like the idea of presenting a hierarchy of action one could take to reduce overall emissions from computing.
From what I could infer from the podcast and the documents here, it seems like the way you've been thinking about it is:

  1. Reduce overall consumption
  2. Run compute when demand is low, with curtailed electricity if possible
  3. Run compute on additional low-carbon electricity

For 1., there is no debate around that. The most certain and efficient way to reduce emissions is to reduce energy consumption.

For the two other points, I think there is a discussion to be had. I think it comes down to a question of certainty in the impact of one's action and verifiability.

Run compute when demand is low, with curtailed electricity if possible

-> The problem I see in practice with moving compute to when demand is low is that the same problem you identified applies as when one shifts consumption to match the lowest carbon intensity. I.e the impact of doing that on the grid is not necessarily super clear.

About the grid
As you both highlighted, understanding how the grid reacts to a load increase is really complex. The entrenched idea that production = consumption at all times is a simplifying trope that obscures how the grid actually operates. When someone adds a load to the grid, the reaction will be conditioned by the size of that load in regards to the grid. For large synchronous grids like the European one, the addition of up to e.g 50 kW of demand (that's ~a thousand computers suddenly starting) will not be met by any reaction of the grid. There might be issues at the distribution level, but it will not trigger any additional power generation. This is due to the sheer size of the grid, this additional demand is just a drop in the ocean, meaning that the overall frequency response of the grid will be insignificant. I'm still looking into understanding better where the limit of that property lies.
This report by ENTSO-E on the integration of EVs can provide a good understanding of how the grid reacts to these flexible loads. They explicitly state

Automotive batteries have a small capacity (30 – 100 kWh) and slow EV chargers have small power (3 – 11 kW) necessity to aggregate many vehicles, and / or other local small-scale flexibility resources to enable ancillary services

Meaning that the order of magnitude of tens of kilowatts is too small to make any difference in terms of the frequency of the grid (ancillary services are used to regulate the frequency of the grid within small time frames, seconds to minutes).

On the other side of the spectrum, there are instances where huge loads differential are really easy to observe, and that triggers a long chain of consequences (Ex: the sudden trip in the interconnect between Great Britain and Norway, which was operating at 1.4 GW, which triggered the activation of ~80% of all reserve capacity to stabilise the grid).
To me, the discussion around shifting demand to whatever time should therefore really include a question about the size of that load, and should be highlighted in that discussion.

About low demand as a proxy
I think that as you argue for, targeting low demands periods is generally a pretty good heuristic in the short term for someone who has little access to accurate and granular electricity data, and is just starting thinking about this topic. I nevertheless think that this should come with a quite large asterisk. Here are two examples, completely cherry-picked, browsing our app, that can serve as counter examples:

Screenshot 2024-10-10 at 11 39 59 Screenshot 2024-10-10 at 11 40 35

For Spain, I can see that the period of low demand just before the morning is seeing a ramp-up of gas production (grey). Why would one then shift its consumption to a period where low-carbon sources are already operating at maximum capacity and gas is at time picking up to meet the increasing demand? (not necessarily from a marginal point of view - more from what we see, gas is being ramped up in the hours following the lowest load). In the long run that would create a deleterous incentive - it would actually be encouraging gas power plants to operate more hours throughout the day!

For Bosnia-Herzegovine, it seems like they are matching demand with hydro throughout the day but rely on much dirtier imports (yellow, vs-hydro) during the low demand periods to match whatever comes on the baseload. In that case it seems counterproductive to encourage demand that would be met with these imports instead of the local hydro.

So overall, recommending targeting periods of low demand with shifted consumption as a go-to strategy should be taken with a grain of salt (as much as targeting highest shares of renewable!), as the validity of that approach will be dependent on where/when this optimisation applies!

The other elephant in the room: short-term vs long-term thinking

It seems like the conclusions you draw, especially for the identified problems with carbon-aware software are not so specific about the time horizon of the consequences discussed.

When I try to understand the effect of displacing in time or space a given load, that parameter plays a decisive role.

The train analogy:
In the podcast (I think it's somewhere in this repo as well, but I could not find it at this time, or maybe is it in Ismael' post on Hackernoon?), is presented an analogy to illustrate the effect of time shifting consumption based on the carbon intensity of electricity. To rephrase, the idea is that for each hour of the day runs a train, with a set number of passengers per journey. That train is made up of two different classes of wagons, some are labeled as "low-carbon" while the rest are dirty. Load shifting would then amount to being able to select what train to travel on, and thus informs our likelihood of being able to sit down in a "low-carbon" wagon.
I like this analogy to explain the short term effect of load-shifting. Indeed, when shifting a small load (see point above), we will not produce much of a positive difference. The train, with all its associated emissions, will still run no matter which one one takes!

I think where that analogy is lacking is considering that the make-up of these wagons is not something set in stone. The number of wagons and the make-up will evolve over time. Let's say there are two entities providing these trains, with one that has a serious plan for increasing the share of low-carbon wagons over the next 2 years. Which one would you choose to ride with?

If I recall correctly, an objection provided around this is that low-carbon sources have already "won"; they're cheaper to build and operate, faster to install etc. I can't find the reference, but a mention of the fact that some European nations were already ahead of their sustainable goals related to energy was also made. The goals mentioned here are sustainable development goals from the UN, and those reached by some European countries are for energy access, and have nothing to do with clean energy deployment! It is true that nowadays solar and wind are hugely competitive for new installed electricity capacity, but that does not mean that the problem is already solved! I would encourage you to have a look at this outlook by Ember. You can see that the ambition by 2030 for the US is to reach ~60% of renewable electricity generation, while for Japan it's only 38% and India ~42%, and the level of certainty around these countries reaching that goal can be quite low.

That means that going forward, not all locations are equals in terms of how much of the additional demand on the electricity grids will be met by low-carbon sources. I therefore find it quite premature to dismiss the idea of location shifting all together. Why not encourage compute to be located in places that already have access to loads of low-carbon electricity and that have ambitious and credible plans for the development of their grid based on low-carbon resources?

The long-term impact of shifting loads in time is not something easy to model. It's nevertheless possible to see that there is a problem that exists today where flexible compute could help. In certain locations, the renewable penetration is such that in times of high production, the total demand is not sufficient to consume all electricity produced. That results in negative prices (Germany is becoming synonym with that) or curtailment. A big part of the problem here is the grid configuration itself as you highlighted in the podcast (wind electricity produced in Scotland but that can't be transferred to Southern England, where consumption happens; or similarly in Germany), and that's going to take some time to solve. Moving computing resources close to where that extra production regularly happens and letting it match periods of high production is a clear cut solution. Even if it's impossible to find a data center close to wind turbines or solar panels that are being curtailed, encouraging consumption at times where there is a lot of low-carbon generation is a clear incentive for the grid to invest in upgrades to serve the locations that are willing to consume that extra electricity.

I would therefore argue that the whole section around problems with carbon aware software must be expanded to account for that part of the question. Dismissing completely the idea of time and location shifting based on a short-term vision obscures a part of the answer: creating the right incentives for using low-carbon electricity where it's available and where it's going to still be available in the future.

Run compute on additional low-carbon electricity

Thanks for bringing up the part around the additionality of the electricity used. That's a really important aspect to take into account when choosing e.g. a cloud provider. My only feedback here would be to encourage practitioners to make their due diligence when choosing compute providers. I'm not going to provide names nor point fingers (this article by the Financial Times is a good read with that regard), but not all providers are as transparent and as committed to supplying their operations with additional low carbon electricity.

A new hierarchy for impact

Based on the comments above, I would propose the following hierarchy for impact:

+++ Certainty, verifiability of impact

  1. Reduce total energy usage
  2. Displace, consistently, compute to areas where low-carbon electricity is abundant, and where there are credible plans for making the grid even cleaner
  3. Run compute on additional low-carbon electricity - i.e. pick the right provider for your compute
  4. Time shift consumption to match low demand OR low carbon intensity, based on the location

--- More uncertain, hard to assert claims about emission reductions

This feedback is quite a mouthful, but I hope it will help the conversation move forward. As you correctly pointed out, now is the time to make sure we do this right, and I would love to be a part of that.

I would love to discuss directly as there are, I'm sure, other topics where a fruitful discussion could happen :)
Feel free to connect with me on LinkedIn

@hanopcan
Copy link
Contributor

Hi @pierresegonne - thank you so much for this thoughtful comment. It was always my hope that this work could be refined, questioned and built upon by a wider community so I am delighted by your engagement.

As I mentioned to you in a private DM recently, please give me a few days to read and digest everything you are saying here so I can figure out how to respond in a meaningful way. Will reply soon!

@hanopcan hanopcan self-assigned this Oct 15, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants