SlideShare a Scribd company logo
Ivano Malavolta
VRIJE
UNIVERSITEIT
AMSTERDAM
Ivano Malavolta
Assistant professor
Vrije Universiteit Amsterdam
Software
sustainability
and Green IT
Ivano Malavolta
Hello
Ivano Malavolta
Our platform for experimenting
on software
– energy efficiency
– performance
A PLATFORM
A MASTER COURSE
The Green Lab
Students measure
real software products
A COLLABORATION PLATFORM
Industry-driven experiments
Ivano Malavolta
amsterdamyoungacademy.nl
Ivano Malavolta
Software sustainability?
1
Ivano Malavolta
Ivano Malavolta
Total number of views:
3,362,297,996
Total energy consumed: ~672 GWh in less than 7 years
x27,000 for 7 years!
ICT is unsustainable
Total energy per view:
0.2 kWh
https://www.youtube.com/watch?v=9bZkp7q19f0
http://shrinkthatfootprint.com/average-household-electricity-consumption
Ivano Malavolta
CPU: 500 - 2,000 mW
GSM: 800 mW
Display: 400 mW
GPS: 176 mW
Gyroscope: 130 mW
Microphone: 101 mW
Bluetooth: 100 mW
Accelerometer: 21 mW
Battery charge efficiency: 90%
Where does this energy go?
Ivano Malavolta
Energy loss:
• Low utilization
• Cooling
• Lighting
PUE = "Good" PUE = 1.4 = 30% loss
Where does this energy go?
Min utilization rate: 10%
Max utilization rate: 80%
Ivano Malavolta
”The number of transistors in a
circuit doubles about every 2 years"
(Moore's law)
Is hardware efficient?
Ivano Malavolta
"The energy efficiency of hardware
doubles every 1.5 years"
(Koomey's law)
Is hardware efficient?
Ivano Malavolta
"Software gets slower more
rapidly than hardware gets faster"
(Wirth's law)
Ok, so what about software?
Ivano Malavolta
Nathan P. Myhrvold, Microsoft, ACM 1997
Why is software consuming more and more?
1. Software is a gas
Software always expands to fit whatever container it is stored in
2. Software grows until it becomes limited by Moore's Law
The initial growth of software is rapid, like gas expanding, but is
inevitably limited by the rate of increase in hardware speed
3. Software growth makes Moore's Law possible
People buy new hardware because the software requires it
4. Software is only limited by human ambition and expectation
We'll always find new algorithms, new applications, and new
users
Ivano Malavolta
Energy efficiency
in the back-end2
Ivano Malavolta
Research questions
• .NET Platform supporting Governance,
Risk and Compliance (GRC) processes.
• Thousands of users worldwide
• ~11.000 eLOCs
• Personalized questionnaires
• Dashboard and reports for results overview
The KPMG case
Ivano Malavolta
Collaboration between academia
and industry
We want to consume
less energy
Introduction to
Qubus
We are interested in releases
and deployment strategies
Validation of general
characteristics
Qubus 6.2.3 or Qubus 6.5.7?
Centralized or Distributed?
Empirical
experiment
Clarifications and
refinements
Results
discussion
Preliminary
experiment
definition
The KPMG case
Ivano Malavolta
Research questions
How can we improve the energy efficiency of Qubus?
• Which release is more energy efficient?
• Qubus 6.2.3 VS Qubus 6.5.7
• Which deployment strategy is more energy efficient?
• Centralized VS Distributed
VS
Ivano Malavolta
Old - C Old - D New - C New - D
Results Scenario 1
Old - C Old - D New - C New - D
Scenario 2
Know precisely the usage scenarios of
your software applications!
Using a higher number of machines does NOT
always imply higher energy consumption
Energyconsumption
Ivano Malavolta
Energy efficiency
in the front-end3
Ivano Malavolta
Average Daily Hours per Mobile App Visitor by Age
Source: comScore Mobile Metrix, U.S., Age 18+, June 2017
Why mobile apps?
Ivano Malavolta
The journey of a Progressive Web
Application (PWA)
1. The user accesses the website as
usual
https://goo.gl/KIZydg
Ivano Malavolta
The journey of a PWA
1. The user accesses the website as
usual
2. After the 3rd-4th visit, the website
asks to be installed
https://goo.gl/KIZydg
Ivano Malavolta
The journey of a PWA
1. The user accesses the website as
usual
2. After the 3rd-4th visit, the website
asks to be installed
3. From now on, the app lives in the
home screen, runs full-screen, can
receive push notifications
https://goo.gl/KIZydg
Ivano Malavolta
Service workers
Implemented in JavaScript
Multithreading
→ runs in a separate thread w.r.t.
the main thread
Used for:
• push notifications
• background operations
• content caching
– offline functionality
Ivano Malavolta
PWAs have been advertised as:
• performance boosters
• network savers
• providers of better UX
However…
Ivano Malavolta
Experiment design
What we measure
Energy consumption of the device in Joules
Factor Treatments
SW status <on, off>
Android device <high-end, low-end>
Network condition <2G, WiFi>
What we control
What we measure
Ivano Malavolta
Experiment design
• All possible combinations of treatments
• 8 combinations x 7 PWAs x 8 runs
à
• each run executes a typical usage
scenario (10-15 gestures)
448 runs
SW status Device Network
on low-end 2G
on low-end WiFi
on high-end 2G
on high-end WiFi
off low-end 2G
off low-end WiFi
off high-end 2G
off high-end WiFi
Ivano Malavolta
Results
Low-end High-end
Smaller difference in the high-end device
Service workers DO NOT influence the energy
consumption of a PWA running on a mobile device
Ivano Malavolta
Taking decisions about
software sustainability4
Ivano Malavolta
What is software sustainability?
Direct impact
(sustainable software)
Inward looking
SOFTWARE-INTENSIVE
SYSTEM
ENERGY EFFICIENCY
MAINTAINABILITY
STABILITY
Indirect impact
(software for sustainability)
Outward looking
SOFTWARE-INTENSIVE
SYSTEM
TRUSTABILITY
USABILITY
SURVIVABILITY
Is software sustainability only about the system itself?
Ivano Malavolta
ECO
NO
M
IC
SO
CIAL
ENVIRO
NM
ENTAL
TECHNICAL
SO
FTW
ARE
IM
M
ED
IATE
IM
PAC
T
EN
AB
LIN
G
IM
PAC
T
SYSTEM
IC
IM
PAC
T
Lago, P. © 2016-2018 SoSA: A Software Sustainability
Assessment Method. Available at: https://goo.gl/HuY6tf
Condori-Fernandez, N., & Lago, P. (2018). Characterizing the
contribution of quality requirements to software sustainability,
Journal of Systems and Software, 137, 289-305.
Why should we
care?
Sustainability is multi-dimensional
A new perspective on
sustainability
Ivano Malavolta
ECO
NO
M
IC
SO
CIAL
ENVIRO
NM
ENTAL
TECHNICAL
SO
FTW
ARE
IM
M
ED
IATE
IM
PAC
T
EN
AB
LIN
G
IM
PAC
T
SYSTEM
IC
IM
PAC
T
Why should we
care?
A new perspective on
sustainability
Lago, P. © 2016-2018 SoSA: A Software Sustainability
Assessment Method. Available at: https://goo.gl/HuY6tf
Condori-Fernandez, N., & Lago, P. (2018). Characterizing the
contribution of quality requirements to software sustainability,
Journal of Systems and Software, 137, 289-305.
Ivano Malavolta
Design Decision Maps framing Sustainability
Concerns [notation]
Philips Lightning (now Signify)
Design decision maps
Ivano Malavolta
Decision maps + planned effects + monitoring
KPMG Qubus platform
Ivano Malavolta
Amsterdam Smart City
Decision maps for scoping the sustainability of a project
Ivano Malavolta
Wrap up
Ivano Malavolta
Total number of views:
2,307,082,001
Total energy consumed: ~450 GWh in less than 3 years
x 41,000
ICT is unsustainable
Total energy per view:
0.2 kWh
Ivano Malavolta
Research questions
• .NET Platform supporting Governance,
Risk and Compliance (GRC) processes.
• Thousands of users worldwide
• ~11.000 eLOCs
• Personalized questionnaires
• Dashboard and reports for results overview
The KPMG case
Ivano Malavolta
Service workers
Implemented in JavaScript
Multithreading
→ runs in a separate thread w.r.t.
the main thread
Used for:
• push notifications
• background operations
• content caching
– offline functionality
Ivano Malavolta
Design Decision Maps framing Sustainability
Concerns [notation]
Philips Lightning (now Signify)
Design decision maps
Ivano Malavolta
Acknowledgements
Some slides of this presentation have been inspired by talks by:
• Patricia Lago
• Giuseppe Procaccianti
• Roberto Verdecchia

More Related Content

Software sustainability and Green IT

  • 1. Ivano Malavolta VRIJE UNIVERSITEIT AMSTERDAM Ivano Malavolta Assistant professor Vrije Universiteit Amsterdam Software sustainability and Green IT
  • 3. Ivano Malavolta Our platform for experimenting on software – energy efficiency – performance A PLATFORM A MASTER COURSE The Green Lab Students measure real software products A COLLABORATION PLATFORM Industry-driven experiments
  • 7. Ivano Malavolta Total number of views: 3,362,297,996 Total energy consumed: ~672 GWh in less than 7 years x27,000 for 7 years! ICT is unsustainable Total energy per view: 0.2 kWh https://www.youtube.com/watch?v=9bZkp7q19f0 http://shrinkthatfootprint.com/average-household-electricity-consumption
  • 8. Ivano Malavolta CPU: 500 - 2,000 mW GSM: 800 mW Display: 400 mW GPS: 176 mW Gyroscope: 130 mW Microphone: 101 mW Bluetooth: 100 mW Accelerometer: 21 mW Battery charge efficiency: 90% Where does this energy go?
  • 9. Ivano Malavolta Energy loss: • Low utilization • Cooling • Lighting PUE = "Good" PUE = 1.4 = 30% loss Where does this energy go? Min utilization rate: 10% Max utilization rate: 80%
  • 10. Ivano Malavolta ”The number of transistors in a circuit doubles about every 2 years" (Moore's law) Is hardware efficient?
  • 11. Ivano Malavolta "The energy efficiency of hardware doubles every 1.5 years" (Koomey's law) Is hardware efficient?
  • 12. Ivano Malavolta "Software gets slower more rapidly than hardware gets faster" (Wirth's law) Ok, so what about software?
  • 13. Ivano Malavolta Nathan P. Myhrvold, Microsoft, ACM 1997 Why is software consuming more and more? 1. Software is a gas Software always expands to fit whatever container it is stored in 2. Software grows until it becomes limited by Moore's Law The initial growth of software is rapid, like gas expanding, but is inevitably limited by the rate of increase in hardware speed 3. Software growth makes Moore's Law possible People buy new hardware because the software requires it 4. Software is only limited by human ambition and expectation We'll always find new algorithms, new applications, and new users
  • 15. Ivano Malavolta Research questions • .NET Platform supporting Governance, Risk and Compliance (GRC) processes. • Thousands of users worldwide • ~11.000 eLOCs • Personalized questionnaires • Dashboard and reports for results overview The KPMG case
  • 16. Ivano Malavolta Collaboration between academia and industry We want to consume less energy Introduction to Qubus We are interested in releases and deployment strategies Validation of general characteristics Qubus 6.2.3 or Qubus 6.5.7? Centralized or Distributed? Empirical experiment Clarifications and refinements Results discussion Preliminary experiment definition The KPMG case
  • 17. Ivano Malavolta Research questions How can we improve the energy efficiency of Qubus? • Which release is more energy efficient? • Qubus 6.2.3 VS Qubus 6.5.7 • Which deployment strategy is more energy efficient? • Centralized VS Distributed VS
  • 18. Ivano Malavolta Old - C Old - D New - C New - D Results Scenario 1 Old - C Old - D New - C New - D Scenario 2 Know precisely the usage scenarios of your software applications! Using a higher number of machines does NOT always imply higher energy consumption Energyconsumption
  • 20. Ivano Malavolta Average Daily Hours per Mobile App Visitor by Age Source: comScore Mobile Metrix, U.S., Age 18+, June 2017 Why mobile apps?
  • 21. Ivano Malavolta The journey of a Progressive Web Application (PWA) 1. The user accesses the website as usual https://goo.gl/KIZydg
  • 22. Ivano Malavolta The journey of a PWA 1. The user accesses the website as usual 2. After the 3rd-4th visit, the website asks to be installed https://goo.gl/KIZydg
  • 23. Ivano Malavolta The journey of a PWA 1. The user accesses the website as usual 2. After the 3rd-4th visit, the website asks to be installed 3. From now on, the app lives in the home screen, runs full-screen, can receive push notifications https://goo.gl/KIZydg
  • 24. Ivano Malavolta Service workers Implemented in JavaScript Multithreading → runs in a separate thread w.r.t. the main thread Used for: • push notifications • background operations • content caching – offline functionality
  • 25. Ivano Malavolta PWAs have been advertised as: • performance boosters • network savers • providers of better UX However…
  • 26. Ivano Malavolta Experiment design What we measure Energy consumption of the device in Joules Factor Treatments SW status <on, off> Android device <high-end, low-end> Network condition <2G, WiFi> What we control What we measure
  • 27. Ivano Malavolta Experiment design • All possible combinations of treatments • 8 combinations x 7 PWAs x 8 runs à • each run executes a typical usage scenario (10-15 gestures) 448 runs SW status Device Network on low-end 2G on low-end WiFi on high-end 2G on high-end WiFi off low-end 2G off low-end WiFi off high-end 2G off high-end WiFi
  • 28. Ivano Malavolta Results Low-end High-end Smaller difference in the high-end device Service workers DO NOT influence the energy consumption of a PWA running on a mobile device
  • 29. Ivano Malavolta Taking decisions about software sustainability4
  • 30. Ivano Malavolta What is software sustainability? Direct impact (sustainable software) Inward looking SOFTWARE-INTENSIVE SYSTEM ENERGY EFFICIENCY MAINTAINABILITY STABILITY Indirect impact (software for sustainability) Outward looking SOFTWARE-INTENSIVE SYSTEM TRUSTABILITY USABILITY SURVIVABILITY Is software sustainability only about the system itself?
  • 31. Ivano Malavolta ECO NO M IC SO CIAL ENVIRO NM ENTAL TECHNICAL SO FTW ARE IM M ED IATE IM PAC T EN AB LIN G IM PAC T SYSTEM IC IM PAC T Lago, P. © 2016-2018 SoSA: A Software Sustainability Assessment Method. Available at: https://goo.gl/HuY6tf Condori-Fernandez, N., & Lago, P. (2018). Characterizing the contribution of quality requirements to software sustainability, Journal of Systems and Software, 137, 289-305. Why should we care? Sustainability is multi-dimensional A new perspective on sustainability
  • 32. Ivano Malavolta ECO NO M IC SO CIAL ENVIRO NM ENTAL TECHNICAL SO FTW ARE IM M ED IATE IM PAC T EN AB LIN G IM PAC T SYSTEM IC IM PAC T Why should we care? A new perspective on sustainability Lago, P. © 2016-2018 SoSA: A Software Sustainability Assessment Method. Available at: https://goo.gl/HuY6tf Condori-Fernandez, N., & Lago, P. (2018). Characterizing the contribution of quality requirements to software sustainability, Journal of Systems and Software, 137, 289-305.
  • 33. Ivano Malavolta Design Decision Maps framing Sustainability Concerns [notation] Philips Lightning (now Signify) Design decision maps
  • 34. Ivano Malavolta Decision maps + planned effects + monitoring KPMG Qubus platform
  • 35. Ivano Malavolta Amsterdam Smart City Decision maps for scoping the sustainability of a project
  • 36. Ivano Malavolta Wrap up Ivano Malavolta Total number of views: 2,307,082,001 Total energy consumed: ~450 GWh in less than 3 years x 41,000 ICT is unsustainable Total energy per view: 0.2 kWh Ivano Malavolta Research questions • .NET Platform supporting Governance, Risk and Compliance (GRC) processes. • Thousands of users worldwide • ~11.000 eLOCs • Personalized questionnaires • Dashboard and reports for results overview The KPMG case Ivano Malavolta Service workers Implemented in JavaScript Multithreading → runs in a separate thread w.r.t. the main thread Used for: • push notifications • background operations • content caching – offline functionality Ivano Malavolta Design Decision Maps framing Sustainability Concerns [notation] Philips Lightning (now Signify) Design decision maps
  • 37. Ivano Malavolta Acknowledgements Some slides of this presentation have been inspired by talks by: • Patricia Lago • Giuseppe Procaccianti • Roberto Verdecchia