Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Sustainability in Software Engineering - Eclips...

Sustainability in Software Engineering - EclipseCon 2020 Edition

Climate change is one of the most dramatic and urgent challenges we face globally. To fight climate change, every step counts and every single step is important - and necessary. In this talk, we will give an overview about all the different aspects that affect climate change from the software engineering perspective and discuss a number of concrete actions that every software engineer can take (and should keep in mind day-in day-out) to help fight climate change.

Martin Lippert

October 22, 2020
Tweet

More Decks by Martin Lippert

Other Decks in Technology

Transcript

  1. ©2020 VMware, Inc. Sustainability in Software Engineering How to make

    a difference Martin Lippert Spring Tools Lead, MAPBU, VMware October 2020
  2. 4 Confidential │ ©2020 VMware, Inc. This is a huge

    challenge, and we can make a huge difference. Software is eating the world and can have a huge impact. Let’s not wait for others to solve the problem. Everybody is involved – we all share the same responsibility. 3 ©2020 VMware, Inc. This is a huge challenge, and we can make a huge difference. Software is eating the world and can have a huge impact. Let’s not wait for others to solve the problem. Everybody is involved – we all share the same responsibility.
  3. ©2020 VMware, Inc. 4 Contributions to climate change Greenhouse gases:

    • CO2: 74.36% (carbon) • CH4: 17.32% • N20: 6.19% • F-Gas: 2.13%
  4. ©2020 VMware, Inc. 6 Employee Commute Energy Production Business Travel

    Food in the office Hardware Hardware Production Heating / Cooling Data Center Operation Network Traffic CPU Cycles Memory Consumption SWAG production Shipping / Transport Energy consumption Where should we start? There is a wide range of topics
  5. ©2020 VMware, Inc. 7 89% 7% 4% Energy - 89%

    Land-use - 7% Industrial processes - 4% What causes carbon emissions?
  6. ©2020 VMware, Inc. 9 We need 100% renewable energy This

    will take a very long time -> we don‘t have the time to wait for that The energy question
  7. ©2020 VMware, Inc. 10 We need to tackle this from

    both sides Increase renewable energy production Decrease energy consumption
  8. ©2020 VMware, Inc. 13 Employee Commute Energy Production Business Travel

    Food in the office Hardware Hardware Production Heating / Cooling Data Center Operation Network Traffic CPU Cycles Memory Consumption SWAG production Shipping / Transport Energy consumption Where should we start? Energy Consumption
  9. 14 ©2020 VMware, Inc. Easy to remember rule: Try to

    run your software with less hardware
  10. ©2020 VMware, Inc. 16 • run the software only when

    necessary • Scale down (to zero) Scale to zero
  11. ©2020 VMware, Inc. 17 • Almost all datacenters have zombies

    sitting around • They consume energy, space, and hardware – for nothing Eliminate zombies
  12. ©2020 VMware, Inc. 18 VMware Singapore datacenter consolidation in 2019

    • 66% of host machines were zombie & decommissioned Yes, it is Is this real?
  13. ©2020 VMware, Inc. 19 Stanford/Anthesis study on zombies (2017) (Jon

    Koomey) • 16,000 non-virtualized and virtialized physical servers, 10 data centers (multiple companies) • 25% zombie physical servers • 30% zombie VMs More evidence
  14. ©2020 VMware, Inc. 22 Memory constantly consumes energy • 1GB

    RAM consumes about 2W (varying)* Memory efficiency pays off • Let's assume: – Your process runs with 8GB RAM (reserved) – You have 4 instances running – You can reduce that to 6GB RAM • Result: – 2GB RAM saved per instance, total of 8GB saved -> 16W – ~ 140kWh per year Memory (* average rough number, varies depending on type of RAM, power vs. idle mode, and other factors)
  15. ©2020 VMware, Inc. 24 CPUs consume a lot of energy

    • Lets assume an average of 50W* • Lets take a look at a random: – Your process runs on 4 instances (each instance eats 20% of a CPU) – ~350kWh per year CPU cycles
  16. ©2020 VMware, Inc. 29 Data centers have different characteristics •

    AWS: depends on the region whether you run on renewable energy or not • Google: 100% renewable energy • Microsoft: 100% renewable energy • In-house: How do you power your data center? Choose wisely Large scale: Data Centers
  17. ©2020 VMware, Inc. 30 What exactly does „run on 100%

    renewable energy“ mean? • Contract with renewable energy provider? • Generates its own renewable energy? – How much? – All the time? – Or depending on weather conditions? Companies start to choose the location of data centers depending on the availability of renewable energy • But beware a situation where your data center consumes all the available renewable energy (e.g. hydro power), but doesn‘t increase the amount of renewable energy on the grid „My data center runs on renewable energy“ Does this solve the problem?
  18. ©2020 VMware, Inc. 32 Scheduling depends on a lot of

    factors (latency, availability, etc.) Take sustainability into account • Choose data center in cold regions (less cooling needed) • Choose data center with the most available renewable energy (depending on solar/wind conditions) • Dynamically reschedule when conditions change Schedule your workloads wisely
  19. ©2020 VMware, Inc. 41 Offsetting is generally a good idea

    • Offsetting projects generally do good things • Choose the project wisely, not every offsetting project really pays off BUT: • Offsetting is sometimes used/viewed as clean-washing • Offsetting is just a last resort, it doesn‘t really solve the problem • We need to avoid carbon emissions AND support those projects For example: • Planting trees is a great idea • But the calculation is sometimes off reality – e.g. it takes 20 years for a tree Offsetting emissions
  20. 43 ©2020 VMware, Inc. “Sustainability is the next frontier in

    innovation” Nicola Acutt, VMware Sustainability Lead