Embodied carbon plugin #83
jawache
started this conversation in
Develop an Idea
Replies: 1 comment 1 reply
-
Hello @jawache embodied emission data is scarce and what I suggested a while back was quite simplistic. I would encourage using the Boavizta work that is improving a lot what the initial dataset attempted naively :) https://doc.api.boavizta.org/Explanations/services/cloud/ |
Beta Was this translation helpful? Give feedback.
1 reply
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
Several years ago Benjamin Davy from Teads created a dataset to model the emissions of servers. Prior to this work there wasn't really any simple way to estimate the energy/carbon profile of a server or CPU in a ubiquitous way other than asking for a manufacturer to disclose the data which they only did under NDA and usually with key customers.
The approach he took was to build a simple model which could then be extrapolated oiut and applied to any CPU/server. It made estimating the energy consumption of CPUs trivial, as long as you kew the TDP of a CPU you could estimate the energy consumption from CPU utilization.
In the impact framework world the process of taking an observation and turning it into an impact is called induction. So we induce cpu utilization into energy.
For energy these simple co-efficiants are what we call the teads curve.
It's a very rough estimate, but what it has for itself is broad application. You can apply this to everything and people do, it's used in the cloud-carbon footprint tool, which is used in climatiq which is used in dynatrace and I've seen it applied in about a dozen closed source internal tools at a variety of organizations. It might not be accurate on a granular level but when the next best thing is "no-data-at-all" it competes very well.
Almost every case study created for the SCI used the co-efficients created by Benjamin in this dataset.
To make calculating the SCI easier with the Impact Framework one of the first plugins we created was what we commonly refer to as the Teads Curve: https://github.com/Green-Software-Foundation/if-unofficial-plugins/blob/main/src/lib/teads-curve/README.md. This helps convert a cpu/utilization into an cpu/energy figure.
### Embodied Carbon Plugin
What I would like someone to propose for the hackathon is to take the same approach and create a plugin which outputs cpu/embodied-carbon.
Read the work from Benjamin here: https://medium.com/teads-engineering/building-an-aws-ec2-carbon-emissions-dataset-3f0fd76c98ac
The energy model is leverages in many places but there is another naive model to estimate embodied emissions from a server.
Assume a base total embodied carbon of 1000kg, then for each component listed below add that amount of carbon to the total.

The inputs to this plugin might be something along the lines of:
Note
I would enhance the existing cloud metdata data plugin to output those values for a given cloud instance type. It currently outputs cpu/thermal-design-power to support the teads-curve plugin, it can be enhanced to output the values above also (we maintain the tdp manually, so this would require some manual effort to capture the above)
Then this plugin would compute the embodied carbon of the sever according to those inputs and the model and output
Which can then be used in downstream models like the sci model to compute carbon per user or some other metric.
Currently the best method we have for adding embodied carbon to a pipeline is the sci-m model, it's very clunkly and requires manually adding in embodied carbon values for every single server you want to measure. A plugin like the above would automate and simplify the whole process. If it was easier, more people would compute and report the embodied carbon of their compute.
Important
Benjamin moved on evolved the work with Boavizta who surface it via a free API. We've built a plugin to that API also which you can use for comparison/reference. https://github.com/Green-Software-Foundation/if-unofficial-plugins/blob/main/src/lib/boavizta/README.md
References
https://github.com/Green-Software-Foundation/if-unofficial-plugins/blob/main/src/lib/teads-curve/README.md
https://medium.com/teads-engineering/building-an-aws-ec2-carbon-emissions-dataset-3f0fd76c98ac
Beta Was this translation helpful? Give feedback.
All reactions