Upload
surf
View
79
Download
4
Tags:
Embed Size (px)
Citation preview
T +31 20 314 0950 [email protected] www.sig.eu
Green Software and Sustainability Joost Visser, Software Improvement Group Knowledge Network Green Software #KNGS
January 18, 2011
I 11
Software Development 1964 – resource aware
2
© 2012 Software Improvement Group
I 11
Software development Now – resource agnostic
3
© 2012 Software Improvement Group
• Large scale. Global distribution. Failure rates estimated at 30%. • Graphical development environments perform continuous compilation. • Nightly regression testing. Test environments duplicate production.
I 11 4
© 2012 Software Improvement Group
“The most strategic aspect of energy efficient computing will be the evolution of application software to facilitate system-wide energy efficiency.” Communications of the ACM , March 2010, vol. 53, No. 3 Towards Energy-Efficient Computing by David J. Brown (Sun Microsystems) and Charles Reams (Cambridge University)
I 11
Power Loss Chain Extended version …
5
© 2012 Software Improvement Group
75% 25% Computational efficiency
Functional necessity
35% 65% Useful work Frivolous features
Optimal cycles and storage Algorithmic inefficiency
Percentages are indicative only
Image source: British Computer Society Data Centre Specialist Group Performing the right work?
Performing the work right?
I 11 6
© 2012 Software Improvement Group
Application-level energy-efficiency
How?
design build test require operate
Estimate energy consequences of requirements Eliminate frivolous requirements
Estimate energy consequences of design decisions Consider less wasteful alternatives
Monitor energy consumption Provide feedback to development
Energy-ware coding of algorithms, data structures, communication, concurrency.
High-quality coding to minimize build, test, re-work, and maintenance effort
I 10
Taxonomy
7
© 2012 Software Improvement Group
Green IT
Greening by IT
Greening of IT
Green Grid
Green Data Center
Green Hardware
Green Software
Functional necessity
Computational efficiency
Algorithmic Data structures Protocols
Data retention Responsiveness Graphical presentation
Green Software Development Rework
Maintainability Testability
Environment
I 10
Knowledge Network Green Software kngs.wikidot.com
8
© 2012 Software Improvement Group
Network Knowledge
… …
Sharing knowledge Creating awareness Joint research
I 11 9
© 2012 Software Improvement Group
Sustainable Application Scan Example knowledge sharing KNGS
Service developed by SIG • Identify opportunities for energy savings
by review of architecture, coding, deployment
Case “Rabo Rekening Delen” • Application developed by Rabobank, Ordina, Service2Media
• Opportunities for saving energy • Removing proxy server to reduce data translation steps and
communication volume may lead to 30% savings • Reducing image size in mobile browser application may lead
to 10% savings • Eliminating some synchronization moments to reduce radio
traffic may lead to 5% savings
I 11 10
© 2012 Software Improvement Group
Software Energy Footprint Lab Example knowledge sharing KNGS
Lab created by Hogeschool van Amsterdam (CleanTech) • Controlled measurement of energy profiles
of application software • First students sponsored by SIG • Hardware donations by e.g. Schuberg Philis
Questions • How do different database management systems
compare in terms of energy footprint? • How do different programming languages compare? • How do different browsers, word processors compare? • How do different data formats and communication protocols compare? • How accurate are software energy profiling tools?
…
I 11 11
© 2012 Software Improvement Group
Software Energy Label The • on the horizon
Software Energy Label • Standard criteria • Meaningful rating • Certification • Allow consumers / procurement officers to recognize Green Software
Challenges • What should be the target of evaluation?
application – specific release – specific installation – development and test process • What characteristics should be captured?
energy consumption – scalability – co-existence • On what indicators can software applications be compared?
consumption per user – per transaction – per feature • How can acceptable thresholds for these indicators be determined?
I 11 12
© 2012 Software Improvement Group
Dr. ir. Joost Visser [email protected] @jstvssr www.sig.eu +31 20 314 0950
Knowledge Network Green Software @KNGreenSoftware #KNGS kngs.wikidot.com