Green Software and Sustainability Joost Visser, Software Improvement Group Knowledge Network Green Software #KNGS January 18, 2011 T +31 20 314 0950 info@sig.eu www.sig.eu
Software Development 1964 resource aware 2 I 11
Software development Now resource agnostic 3 I 11 Large scale. Global distribution. Failure rates estimated at 30%. Graphical development environments perform continuous compilation. Nightly regression testing. Test environments duplicate production.
4 I 11 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)
Power Loss Chain Extended version 5 I 11 Performing the right work? Image source: British Computer Society Data Centre Specialist Group Performing the work right? Computational efficiency 25% 75% Algorithmic inefficiency Optimal cycles and storage Functional necessity Percentages are indicative only Frivolous features 65% 35% Useful work
Application-level energy-efficiency How? Estimate energy consequences of requirements Eliminate frivolous requirements Energy-ware coding of algorithms, data structures, communication, concurrency. 6 I 11 require design build test operate Estimate energy consequences of design decisions Consider less wasteful alternatives High-quality coding to minimize build, test, re-work, and maintenance effort Monitor energy consumption Provide feedback to development
Taxonomy Greening by IT Green Grid Data retention Responsiveness Graphical presentation 7 I 10 Green IT Greening of IT Green Data Center Green Hardware Green Software Green Software Development Functional necessity Computational efficiency Environment Rework Maintainability Testability Algorithmic Data structures Protocols
Knowledge Network Green Software kngs.wikidot.com 8 I 10 Sharing knowledge Knowledge Network Creating awareness Joint research
Sustainable Application Scan Example knowledge sharing KNGS Service developed by SIG Identify opportunities for energy savings by review of architecture, coding, deployment 9 I 11 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
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 10 I 11 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?
Software Energy Label The on the horizon Software Energy Label Standard criteria Meaningful rating Certification Allow consumers / procurement officers to recognize Green Software 11 I 11 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?
12 I 11 Knowledge Network Green Software @KNGreenSoftware #KNGS kngs.wikidot.com Dr. ir. Joost Visser j.visser@sig.eu @jstvssr www.sig.eu +31 20 314 0950