Software development methodology in a Green IT environment Hayri ACAR π , GΓΌlfem I. A LPTEKIN π , Jean-Patrick GELAS π,π , Parisa GHODOUS π π UniversitΓ© Claude Bernard, Lyon 1, LIRIS, France π ENS Lyon, LIP, UMR 5668, France π Galatasaray University, Turkey ConfΓ©rence Γ©co-conception logicielle 03/02/2017 03/02/2017 1
Usage and users never stop growing β¦ Internet live stats 03/02/2017 2
INTRODUCTION USAGE: RESULTS: Applications Software Mobile devices Power Consumption (Smartphone, Energy Consumption Tablet,β¦) Greenhouse Gas Web Services Emission Cloud Pollution Internet How we can optimize our usage to obtain green results ? 03/02/2017 3
STATE OF THE ART 03/02/2017 4
STATE OF THE ART POWER CONSUMING COMPONENTS ο CPU ο MEMORY ο HARD DISK ο NETWORK ο OTHERS 03/02/2017 5
STATE OF THE ART Software Tools Hybrid solutions Hardware methodologies 03/02/2017 6
STATE OF THE ART - Software tools: ο Based on Mathematical formula to estimate Energy consumption. ο Very few tools in this area of study. ο Tools are not exhaustive. 03/02/2017 7
SYSTEMATIC REVIEW 03/02/2017 8
Some software tools Tools Power Model Appreciations πΉ π‘π§π‘π’ππ Joulemeter Globally, estimates energy = πΉ π·ππ + πΉ πππππ π§ + πΉ πΈππ‘π consumption of all components, but for a given process estimates only energy consumption of CPU. πΉ = πΉ ππ£π‘ + πΉ ππππ + πΉ πππ + πΉ ππππ vEC Estimates only energy consumption due to memory. πΉ = πΉ π πππ + πΉ π₯π ππ’π Orion Communication components are considered. π(π’ π ,π π ) ππ ππ’ = βπ(π’ π ,π π ) ππ ππ’ + π(π π ) Span In the Software code, manually code can be added to show the parts of code involved on the power consumption. π ππππ’π₯ππ π = π ππππ + π PowerAPI Only CPU and network have πππ been considered. 03/02/2017 9
STATE OF THE ART Power saving techniques Transistor sizing and reordering Dynamic power consumption of transistors is decreased Network-On-Chip Improvement over standard bus and crossbar interconnections Reduce memory access integrate a cache in the classical memory hierarchy of a modern processor DFS (Dynamic Frequency Method where frequency of a microprocessor can Scaling) be adapted automatically DVS (Dynamic voltage scaling) Lowering or increasing the supply voltage of the CPU 03/02/2017 10
ENGINEERING PROCESS Green analysis Green analysis Design & Requirements Tests Implementation Disposal Maintenance Usage Towards a Green and Sustainable Software H. Acar, G.I. Alptekin, J.-P. Gelas and P. Ghodous. In Proceedings of the 22nd {ISPE} Inc. International Conference on Concurrent Engineering. 03/02/2017 11
POWER MODEL Dynamic and static power: π ππππ’π₯ππ π = π ππ§πππππ + π π‘π’ππ’ππ Separating dynamic and static power: π ππππ’π₯π π = π π·ππ,ππ§πππππ + π π·ππ,π‘π’ππ’ππ + π πππππ π§,ππ§πππππ + π πππππ π§,π‘π’ππ’ππ + π πΈππ‘π,ππ§πππππ + π πΈππ‘π,π‘π’ππ’ππ + π πππ’π₯ππ π,ππ§πππππ + π πππ’π₯ππ π,π‘π’ππ’ππ 03/02/2017 12
POWER MODEL CPU: π·ππ Γ π ππ π π·ππ = π· Γ πΒ² Γ πΊ π π·ππ,ππ = π 100 Memor ory: π πΈππ΅π,ππ§π = π π΅ππ’ππ€ππ’π + π ππ ππβππ ππ + π ππππ + π ππ ππ’π π πΈππ΅π,ππ = π πΈππ΅π,ππ§π . π ππ Hard Disk: π πΈππ‘π = π π΅ππ’ππ€π + (π π½πππ + π ππ’πππππ§ + π πππππ ) π πΈππ‘π,ππ§π = π π΅ππ’ππ€ππ’π = π ππππ + π ππ ππ’π 03/02/2017 13
TOP PROGRAMMING LANGUAGE IEEE Spectrum 2015 TIOBE INDEX http://spectrum.ieee.org/static/interactive-the-top-programming-languages-2015 http://www.tiobe.com/tiobe_index 03/02/2017 14
Tool for Estimating Energy Consumption 03/02/2017 15
EXPERIMENTS Fibonacci sequence is implemented in Java of 2 ways: - Recursively: 45 terms are calculed. - Iteratively: calculation of 5,000 values. TEEC & Joulemeter results are compared. 03/02/2017 16
EXPERIMENTS Quite similar results between TEEC and Joulemeter. Recursive method consumes more power in amplitude and time than the iterative method. 03/02/2017 17
EXPERIMENTS Unoptimized code Optimized code Functions Unoptimized Optimized Time (ms) 18140 17219 Locality of reference Compare array to array list 22047 17297 Compare integer list loop 7734 7391 Char array StringBuilder 11235 2421 03/02/2017 18 Binary search 2250 438
EXPERIMENTS 03/02/2017 19
EXPERIMENTS Nested Loops C Java Unoptimized Optimized Unoptimized Optimized char* fn(int N) { char* fn2(int N) { public static char[] fn(int N) public static char[] fn2(int int i = 0; int i = 0; { N) { char* v = (char*)malloc(N * int i = 0; int i = 0; char* v = (char*)malloc(N * 2); 2); while (i < N) { char[] v = new char[N*2]; char[] v = new char[N*2]; int tmp; int j = 0; while (i < N) { int tmp; while (i < N) { v[i] = 0; int j = 0; while (i < N) { int j = 0; i++; v[i] = 0; int j = 0; v[i] = 0; while (j < N) { i++; v[i] = 0; i++; v[i] += v[j + N]; while (j < N) { i++; tmp = 0; j++; v[i] += v[j + N]; tmp = 0; while (j < N) { } for (v + j + N) while (j < N) { tmp += v[j + N]; } j++; tmp += v[j + N]; j++; return v; } j++; } } } } v[i] = tmp; return v; v[i] = (char) tmp; } } } return v; return v; } } 03/02/2017 20
EXPERIMENTS 03/02/2017 21
CONCLUSIONS and FUTURE WORKS Currently, energy estimation tools arenβt exhaustive. - - TEEC: now estimates CPU, memory, hard disk and network interface card. - Java agents to determine source code hotpoints. - Propose green programing best practises (with our expertise). - Focus on Cloud computing (web services) 03/02/2017 22
PUBLICATIONS The impact of source code in software on power consumption H. Acar, G.I. Alptekin, J.-P. Gelas and P. Ghodous. International Journal of Electronic Business Management, TEEC : Improving power consumption estimation of software H. Acar, G.I. Alptekin, J.-P. Gelas and P. Ghodous. In Proceedingsof the 30th International Conferenceon Environmental informatics. Berlin, Germany, September 14-16, 2016. Beyond CPU: Considering Memory Power Consumption of Software H. Acar, G.I. Alptekin, J.-P. Gelas and P. Ghodous. In Proceedingsof the 5th International Conference on Smart Citiesand Green ICT Systems(SMARTGREENS). Rome, Italy, April 23-25, 2016. A Green approach to save energyconsumed by software H. Acar, G.I. Alptekin, J.-P. Gelas and P. Ghodous. In Proceedingsof the 3rd International Conference on ICT for Sustainability (ICT4S). Copenhagen, Denmark, September7-9, 2015. Towards a Green and Sustainable Software H. Acar, G.I. Alptekin, J.-P. Gelas and P. Ghodous. In Proceedingsof the 22nd {ISPE} Inc. International Conference on Concurrent Engineering. Delft, The Netherlands, July 20-23, 2015, pp. 471-480 03/02/2017 23
Recommend
More recommend