software development methodology in a green it environment
play

Software development methodology in a Green IT environment Hayri - PowerPoint PPT Presentation

Software development methodology in a Green IT environment Hayri ACAR , Glfem I. A LPTEKIN , Jean-Patrick GELAS , , Parisa GHODOUS Universit Claude Bernard, Lyon 1, LIRIS, France ENS Lyon, LIP, UMR 5668, France


  1. 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

  2. Usage and users never stop growing … Internet live stats 03/02/2017 2

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

  4. STATE OF THE ART 03/02/2017 4

  5. STATE OF THE ART POWER CONSUMING COMPONENTS οƒ˜ CPU οƒ˜ MEMORY οƒ˜ HARD DISK οƒ˜ NETWORK οƒ˜ OTHERS 03/02/2017 5

  6. STATE OF THE ART Software Tools Hybrid solutions Hardware methodologies 03/02/2017 6

  7. 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

  8. SYSTEMATIC REVIEW 03/02/2017 8

  9. 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

  10. 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

  11. 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

  12. POWER MODEL Dynamic and static power: 𝑄 𝑇𝑝𝑔𝑒π‘₯𝑏𝑠𝑓 = 𝑄 π‘’π‘§π‘œπ‘π‘›π‘—π‘‘ + 𝑄 𝑑𝑒𝑏𝑒𝑗𝑑 Separating dynamic and static power: 𝑄 𝑇𝑝𝑔𝑒π‘₯𝑠𝑓 = 𝑄 𝐷𝑄𝑉,π‘’π‘§π‘œπ‘π‘›π‘—π‘‘ + 𝑄 𝐷𝑄𝑉,𝑑𝑒𝑏𝑒𝑗𝑑 + 𝑄 𝑁𝑓𝑛𝑝𝑠𝑧,π‘’π‘§π‘œπ‘π‘›π‘—π‘‘ + 𝑄 𝑁𝑓𝑛𝑝𝑠𝑧,𝑑𝑒𝑏𝑒𝑗𝑑 + 𝑄 𝐸𝑗𝑑𝑙,π‘’π‘§π‘œπ‘π‘›π‘—π‘‘ + 𝑄 𝐸𝑗𝑑𝑙,𝑑𝑒𝑏𝑒𝑗𝑑 + 𝑄 𝑂𝑓𝑒π‘₯𝑝𝑠𝑙,π‘’π‘§π‘œπ‘π‘›π‘—π‘‘ + 𝑄 𝑂𝑓𝑒π‘₯𝑝𝑠𝑙,𝑑𝑒𝑏𝑒𝑗𝑑 03/02/2017 12

  13. POWER MODEL CPU: 𝐷𝑄𝑉 Γ— 𝑂 𝑗𝑒 𝑄 𝐷𝑄𝑉 = 𝐷 Γ— π‘ŠΒ² Γ— 𝐺 𝑄 𝐷𝑄𝑉,𝑗𝑒 = 𝑄 100 Memor ory: 𝑄 𝐸𝑆𝐡𝑁,π‘’π‘§π‘œ = 𝑄 𝐡𝑑𝑒𝑗𝑀𝑏𝑒𝑓 + 𝑄 π‘„π‘ π‘“π‘‘β„Žπ‘π‘ π‘•π‘“ + 𝑄 𝑆𝑓𝑏𝑒 + 𝑄 𝑋𝑠𝑗𝑒𝑓 𝑄 𝐸𝑆𝐡𝑁,𝑗𝑒 = 𝑄 𝐸𝑆𝐡𝑁,π‘’π‘§π‘œ . 𝑁 𝑗𝑒 Hard Disk: 𝑄 𝐸𝑗𝑑𝑙 = 𝑄 𝐡𝑑𝑒𝑗𝑀𝑓 + (𝑄 π½π‘’π‘šπ‘“ + 𝑄 π‘‡π‘’π‘π‘œπ‘’π‘π‘§ + 𝑄 π‘‡π‘šπ‘“π‘“π‘ž ) 𝑄 𝐸𝑗𝑑𝑙,π‘’π‘§π‘œ = 𝑄 𝐡𝑑𝑒𝑗𝑀𝑏𝑒𝑓 = 𝑄 𝑆𝑓𝑏𝑒 + 𝑄 𝑋𝑠𝑗𝑒𝑓 03/02/2017 13

  14. 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

  15. Tool for Estimating Energy Consumption 03/02/2017 15

  16. 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

  17. 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

  18. 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

  19. EXPERIMENTS 03/02/2017 19

  20. 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

  21. EXPERIMENTS 03/02/2017 21

  22. 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

  23. 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