Measuring the water impact of software #82
Replies: 3 comments 3 replies
-
@jawache Hi! A colleague and I were discussing this idea of the water impact plugin and wanted to try to run with it for the hackathon. I am not quite sure if this was an idea for participants to work on, or more of a backlog item for the GSF team? If available, we will submit a project based on at least part of this. Thanks for all the detail and the great idea! |
Beta Was this translation helpful? Give feedback.
-
@jawache Hi there! our group is also interested in studying parts of this idea for the competition. |
Beta Was this translation helpful? Give feedback.
-
I find this proposed model for measuring software's water impact has 2 significant flaws: 1. Water Impact of Electricity GenerationFocusing solely on the water consumption necessary to cool a data center excludes the water consumption necessary for electricity generation used by the data center.
To the point of your suggestion, "It's been proposed that perhaps making solutions more water efficient might force choices to make them less carbon efficient." Certainly, making them more carbon-efficient can make them less water-efficient when the electricity necessary to run the data center comes from a mix of nuclear, hydro and geothermal power, but measuring only the impact of data center water-cooling overlooks this factor. Google Cloud Platform Low-Carbon Data CentersHydroelectric power generation is plentiful in The Dalles, Oregon (see BPA Hydro History (2023)) where the Google Cloud Platform 2. Water Impact of Thermal Power ManagementFocusing solely on the water consumption necessary to cool a data center excludes the impact of TPM at the software and operating system level, among other design choices which can make trade-offs that reduce operating temperature. The active compute components that primarily require this cooling are:
Water cooling is necessary to keep these components within their operating temperature ranges. The heat produced is proportional to the activity by which the software exercises these components, e.g., the following software design choices should reduce the power consumption -> heat generation -> water cooling needs of software running on a given rack-mounted unit.
The Trade-Offs of Monolithic vs. Distributed Software SystemsIs the water impact of 2 ConclusionBaaken, et al. (2017) describes several research challenges that still confound our understanding and modeling of the water impact for hydropower generation which is a necessary input here (as well as other energy sources renewable and otherwise) that can't be ignored in modeling software's water impact. Substantially better integrated information (it may exist, but in disparate, private, siloed sources) on energy supplier mix, weather, and GIS is necessary to make an accurate model of software water impact. Analyses based on measures at the data center level are too coarse-grained to make informed software design decisions that reduce water impact. This proposed model may produce an estimated water impact, but I think its' margin-of-error is such as to be practically useless. |
Beta Was this translation helpful? Give feedback.
-
This is an idea for measuring the water impact of software, and would fit into the beyond carbon prize category of the hackathon. If you would like to propose this or some version of this as a hackathon project you can read up how to here: https://github.com/Green-Software-Foundation/hack/wiki/Participant-Guide
Calculating how much water your software consumes
The primary use of water in data centers for software is in cooling and as such it's proportional to the energy usage of yoru application.
It should therefore be possible to induce and observation of energy into an impact of water.
WUE
"Water Usage Effectiveness (WUE) is a critical metric for assessing the water efficiency of data centers. It specifically measures the amount of water used to cool the facility’s equipment.
WUE is calculated as the ratio of the data center’s annual water use (in liters) to the energy consumed by its IT computing equipment, measured in kilowatt hours (kWh). Thus, WUE is expressed in liters per kilowatt-hour (L/kWh). According to Meta Platforms (formerly Facebook), the industry’s average WUE was most recently 1.80 L/kWh, indicating that 1.80 liters of water were used for every kilowatt-hour of electricity consumed."
https://dgtlinfra.com/data-center-water-usage/#:~:text=Water%20Usage%20Effectiveness%20(WUE)%20is,kilowatt%2Dhour%20of%20electricity%20consumed.
Using the above WUE we can therefore estimate the amount of water your application consumes by multiplying the energy consumed by 1.8.
That gives you water usage, it's a very rough estimate since WUE would be different for each cloud providers, each data center and each region. Some cloud providers provide this information at varying levels of granularity.
Proposal: WUE plugin
Applying it to calculate a Software Water Intensity
That doesn't give you much to go on, it's just a total and as a metric for software developer we can explore something like the SCI. The SCI is a rate of carbon, carbon per X, SWI could be a water (in L) per X.
There is an existing SCI plugin which you can model this on, OR even just hack a solution by treating water as carbon and using the SCI plugin to compute the Water per X using it's existing algorithms.
Proposal: SWI plugin
Another approach to surface real-world human implications.
There is a data set which gives an amount of water available per capita per country https://ourworldindata.org/grapher/per-capita-renewable-freshwater-resources
This is in m3 per person, it should then be possible using this data to calculate some form of human impact and how it differs region by region.
E,.g In South Asia the total total amount of yearly renewable water available per person is 1,131,000 Liters. So If you're all used 100 L per say a 1hr duration. Then over the year it would consume 867,000 L of water. So it would consume 0.76 of a humans available worth of water in that region. If you ran the same software in Easter Europe it would only consume 0.04 worth of a humans available water.
Whether we use that approach or another, some way of linking software water usage to the impact in a particular region would be an ideal endpoint.
If there are data sources which contain more granular data that might be much more useful since we can then both be more accurate and also provide more interesting solutions, moving to a DC a little further away might change things in very interesting ways.
If you can't move compute this kind of metric would provide increased incentivisation to make software more energy efficient, if you can't move the compute, make the compute use less energy so it consumes less water and has less human impact.
Proposal: Water Displacement Plugin
outputs: humans/water (or some better term)
Comparing the carbon impact to the water impact
Bonus points for comparing carbon impact and water impact. A single pipeline of plugins could compute both, one set outputing carbon and sci scores and other plugin(s) outputting water and SWI scores. It's been proposed that perhaps making solutions. more water efficient might forice choices to make them less carbon efficient. Surfacing this with a common set of plugins would push this conversation forward in useful ways.
Beta Was this translation helpful? Give feedback.
All reactions