$30 off During Our Annual Pro Sale. View Details »

Sustainability in Software Engineering - How to make a difference

Sustainability in Software Engineering - How to make a difference

Martin Lippert

February 03, 2022
Tweet

More Decks by Martin Lippert

Other Decks in Programming

Transcript

  1. ©2021 VMware, Inc.
    Sustainability in
    Software Engineering
    How to make a difference
    Martin Lippert
    Spring Tools Lead & Sustainability Ambassador,
    VMware
    February 2022

    View Slide

  2. 2
    ©2021 VMware, Inc.
    Climate change is real.
    There is no need to argue about whether
    climate change exists, is human made, or
    life-threatening – all this is real and urgent.
    We need to stop climate change, not
    discuss whether it is real or not.

    View Slide

  3. 3
    ©2021 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.

    View Slide

  4. ©2021 VMware, Inc. 4
    Contributions to
    climate change
    Greenhouse gases:
    • CO2: 74.36% (carbon)
    • CH4: 17.32%
    • N20: 6.19%
    • F-Gas: 2.13%

    View Slide

  5. We need to
    decarbonize the entire
    world of software
    engineering.

    View Slide

  6. ©2021 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
    There is a wide range of topics

    View Slide

  7. ©2021 VMware, Inc. 7
    89%
    7%
    4%
    Energy - 89%
    Land-use - 7%
    Industrial
    processes - 4%
    What causes carbon emissions?

    View Slide

  8. 8
    ©2021 VMware, Inc.
    Energy Production

    View Slide

  9. The energy question.
    We need 100% renewable energy.
    This will take a very long time.
    And we don‘t have a very long
    time.

    View Slide

  10. ©2021 VMware, Inc. 10
    Increase renewable energy
    production
    Decrease energy consumption
    We need to tackle this from both sides

    View Slide

  11. ©2021 VMware, Inc. 11
    Electricity
    Generation
    Losses: 60%
    40 Watts
    Data Center
    Losses: 30%
    Server Losses: 80%
    28 Watts
    100 Watts
    <5 Watts
    Useful
    Computing
    Source: Rocky Mountain Institute
    Impact of saving energy

    View Slide

  12. 12
    ©2021 VMware, Inc.
    Energy Consumption

    View Slide

  13. ©2021 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
    Energy consumption

    View Slide

  14. 14
    ©2021 VMware, Inc.
    Rule of thumb:
    Try to run your software with less hardware.

    View Slide

  15. 15
    ©2021 VMware, Inc.
    Step 0: Virtualize to use less hardware.

    View Slide

  16. • Hardware production consumes
    lots of energy and resources.
    • Buying less hardware is
    cheaper and better for the
    environment.

    View Slide

  17. 17
    ©2021 VMware, Inc.
    Step 1: Do not run your software.

    View Slide

  18. • Only run software when
    necessary (scale to zero).
    • Eliminate “zombies”. They
    consume energy, space, and
    hardware.

    View Slide

  19. ©2021 VMware, Inc. 19
    1. In 2019, VMware consolidated a datacenter in
    Singapore. 66% of the host machines were
    “zombies“. They were decomissioned.
    2. In a 2017 study, Jon Koomey surveyed 16,000 non-
    virtualized and virtualized physical servers, across 10
    datacenters. He concluded that 25% of the physical
    servers were “zombies“ and 30% of the virtual
    machines were “zombies“.
    Two pieces of evidence

    View Slide

  20. 20
    ©2021 VMware, Inc.
    Step 2: Run your software using
    less energy.

    View Slide

  21. ©2021 VMware, Inc. 21
    Memory constantly consumes energy
    • 1GB RAM consumes about 2W (varying)*
    CPUs consume a lot of energy
    • Lets assume an average of 50W*
    Rule of thumb
    • Reserve less memory
    • Reserve less vCPUs
    (* average rough number, varies depending on type of RAM,
    power vs. idle mode, and other factors)

    View Slide

  22. ©2021 VMware, Inc. 22
    A real win-win situation
    Fight climate change AND
    reduce cost of operation

    View Slide

  23. To put that into perspective
    One flight from FRA -> SFO,
    Economy, 747-8
    ~1883 kgCO2
    Dell PowerEdge R560, 32GB,
    2 CPUs, x4 300 GB HDD
    ~1930 kgCO2 / year

    View Slide

  24. 24
    ©2021 VMware, Inc.
    Where to run the software?

    View Slide

  25. ©2021 VMware, Inc. 32
    Choose data center in cold regions (less cooling needed)
    Choose data center where the energy mix is best (depending on solar/wind conditions)
    Dynamically reschedule when conditions change
    ©2021 VMware, Inc. 25
    Choose data center in cold regions (less cooling needed)
    Choose data center where the energy mix is best (depending on solar/wind conditions)
    Dynamically reschedule when conditions change

    View Slide

  26. 26
    ©2021 VMware, Inc.
    How to evaluate/measure?

    View Slide

  27. ©2021 VMware, Inc. 27

    View Slide

  28. 28
    ©2021 VMware, Inc.
    Last Resort
    Offsetting emissions
    A topic of its own

    View Slide

  29. ©2021 VMware, Inc. 42
    Offsetting is generally a good idea
    • Offsetting projects generally do good things
    • Choose the project wisely, not every offsetting project really pays off
    The important difference is:
    • Avoid emissions in the future (many offsetting projects are in this category)
    • Vs. Actively removing the same amount of CO2 from the atmosphere
    ©2021 VMware, Inc. 29
    Offsetting is generally a good idea
    • Offsetting projects generally do good things
    • Choose the project wisely, not every offsetting project really pays off
    The important difference is:
    • Avoid emissions in the future (many offsetting projects are in this category)
    • Vs. Actively removing the same amount of CO2 from the atmosphere

    View Slide

  30. 30
    ©2021 VMware, Inc.
    Innovate

    View Slide

  31. 31
    ©2021 VMware, Inc.
    Native Spring Applications
    The Spring team works hard to enable
    native image generation using the
    GraalVM native image technology for
    Spring Boot applications
    This can turn out to have a huge effect
    on the environment

    View Slide

  32. ©2021 VMware, Inc. 32
    Scheduling on Kubernetes

    View Slide

  33. 33
    ©2021 VMware, Inc.
    The Carbon Intensity of a
    software will be an important
    differentiating factor in the
    industry

    View Slide

  34. 34
    ©2021 VMware, Inc.
    The next step in
    innovation

    View Slide

  35. ©2021 VMware, Inc. 35
    Net negative business models
    The more you sell or use, the
    better for the climate

    View Slide

  36. 36
    ©2021 VMware, Inc.
    It is our responsibility as
    software engineers to create
    software that is carbon
    efficient

    View Slide

  37. 37
    ©2021 VMware, Inc.
    Learn more:
    Green Software Foundation
    https://greensoftware.foundation
    Principles for sustainable software engineering
    https://principles.green
    Course by Microsoft:
    https://docs.microsoft.com/en-us/learn/modules/sustainable-
    software-engineering-overview/

    View Slide

  38. ©2021 VMware, Inc.
    Thank You
    Martin Lippert
    @martinlippert
    [email protected]
    Evaluate the session and give feedback

    View Slide