Presentation is loading. Please wait.

Presentation is loading. Please wait.

Green Software Engineering Prof

Similar presentations


Presentation on theme: "Green Software Engineering Prof"— Presentation transcript:

1 Green Software Engineering Prof
Green Software Engineering Prof. Dr Anirban Basu President, ( ) Computer Society of India

2 Background . Global warming, and environmental hazards are becoming subjects of great concern. The increasing amount of the energy consumption of today’s IT solutions significantly contributes to green house gas emissions. “Green Computing” or “Green IT” emphasizes on the need for reducing the environmental impacts of IT solutions by reducing their energy consumption and their green house gas emissions. ICT contributes to 8% of global energy consumption and it is expected to increase to 40% by 2030 Most of the hardware systems have significant software components. Although the software systems do not consume energy directly, they affect the hardware utilization, leading to indirect energy consumption. It is essential to engineer the software to optimize its energy consumption and a new subject called Green Software Engineering has emerged to increase energy efficiency in computer systems.

3 What is Green Software Engineering?
Greenness in the software is an emerging quality attribute that must be taken into the account in each phase of the software development process at each level of the IT system from the application level via middle-ware to operating system and hardware. Achieving greenness by software requires methods and techniques that support finding, realizing, and measuring software solutions that make infrastructure smarter, virtualize processes, or use new solutions. Typical examples are applications that help to reduce energy consumption in facility management, in production, and in mobile and embedded systems. The analysis of all factors that have an environmental impact and the search for the optimal trade-off therefore has to be included in software development methods

4 Energy rating of Software is missing!

5 Energy Consumption of ICT

6 Cause of Energy Consumption
In stand by mode, energy consumption is primarily due to leakage current and to reduced switching of transistors During execution, energy consumption is indirectly due to the complexity in the program execution due to ALU operations and access of data. To reduce the power consumption in software, the complexity of the program, as well as time and frequency of data access have to be reduced

7 Energy Consumption of Software
Energy consumption in computer software Static Energy consumption of computer in standby mode Dynamic Energy consumption during executing a program Energy consumed by Software alone= Dynamic Energy consumption during executing a program- Static Energy Consumption of computer in standby mode

8 Challenges in Green Software Engineering
Methods and techniques to elicit and model green-ness requirements Methods and techniques to identify and analyze the trade-offs among the greenness requirements themselves and other quality attributes Methods and techniques to model and analyze the greenness attributes of software architecture and their trade-offs Develop Green compilers to generate energy-optimized code Methods and techniques to reflect the greenness requirements in the test scenarios Methods and techniques to monitor the greenness attributes of software during its operational phase Metrics for assessing the greenness of software

9 Required Parameters in SDLC
Requirement elicitation phase: Methods and tools to elicit and model greenness requirements Methods and tools to identify and analyze the trade-offs among the functional requirements, greenness requirements and other quality attributes Architectural design phase: Methods and tools to model greenness attributes of software architecture Methods and tools to analyze the trade-offs among the functional requirements, greenness attributes and other quality attributes Metrics to evaluate the greenness of software architecture Methods and tools to trace greenness attributes to the greenness requirements Dedicated architectural patterns to achieve green software Refactoring methods for energy saving

10 Required Parameters in SDLC
Implementation phase (Domain-specific) languages to implement greener software Compilation methods to achieve greener software IDE support to guide programmers in implementing greener software Refactoring methods to make legacy software greener Methods and tools to measure the greenness of implementations Testing phase Methods and tools to generate test scenarios to assess the greenness of software Energy profiling techniques

11 Required Parameters in SDLC
Operational phase: Methods and tools to monitor the greenness attributes Methods and tools to dynamically adapt the software to fulfil its greenness attributes Methods and tools to profile energy consumption and to carbon foot printing Metrics to identify energy hotspots

12 Improving Energy Efficiency
Four approaches have been followed for improving energy efficiency Developing a model for energy consumption in a computer system Using temperature sensors for measuring energy dissipation in hardware (Blackbox measurement) Using software tools for measuring energy consumption during executing a software application (whitebox measurement) Design energy efficient algorithms and applications.

13 Measurement Techniques

14 A Laboratory for GSE A lab has been set up with Government funding
A model has been developed on energy consumption and is being validated. Software tools (jRAPL and Joulemeter) are being used to carry out measurements on power consumption of computer applications Hardware sensors have been procured and are being used for temperature measurement Detailed analysis is being done on causes of energy consumption and on ways for reducing it.

15 Measuring Energy Consumption by Modeling
The energy usage is measured by monitoring the energy consumption of resources namely CPU, Cache, DRAM, Hard disk, Network and other switch components The energy equation is based on OS utilization and Performance Counters. The values of resource utilization about CPU, Cache, DRAM and Disk are obtained from Performance Counters.

16 Equation for Power Consumption
The power equation based on the hardware resources gives better accuracy as it includes power consumption of the network components (network interface cards etc.) and switch components (the chassis, line cards, ports). P=k0 + (k1*PCPU) + (k2*Pcache) + (k3*PDRAM) + (k4*PDisk) + (k5*PNetcomp) + (k6*Pswitchcomp) where PCPU is CPU Utilization Pcache is Power consumed for Cache memory accesses , PDRAM is Power consumed for DRAM memory accesses, PDisk = Power consumed for Hard disk I/O accesses, PNetcomp= Power consumed for Network I/O , Pswitchcomp= Power consumed by Switching components The values of k0 (constant power) and k1,k2,k3, k4,k5, and k6 are obtained by measurement.

17 Equation for Power Consumption
If Psysmax is the maximum power consumed when the system is fully utilized; k is the fraction of power consumed by the idle system u is the CPU utilization, r is DRAM access count, d is Hard disk I/O accesses, c is the Cache memory accesses , n is the Network I/O accesses s is switch components accesses then Power consumed = k.Psysmax + (1-k).Psysmax*u*r*d*c*n*s We define the total system power as a function of the utilization of CPU, Cache, DRAM, Hard disk, Network components and Switch components. Psysmax is 250 W, which is the normal value for modern systems. The utilization of the CPU, DRAM and Hard disk, Cache, Network components, Switch components may change over time due to workload variability.

18 White Box Measurement Monitoring Tool Instrumented Software
Execute on a computer Monitoring Tool Instrumented Software

19 U Joulemeter

20 jRAPL- Screenshot

21 Comparison of Power Consumption

22 Work Bench for Blackbox Measurements
Temperature sensor Ambient light sensors Proximity sensors Barometric pressure sensors Motion sensors Touch sensors Etc.

23 Sensors Used

24 Energy Consumption in Mobile Communication

25 Thank you


Download ppt "Green Software Engineering Prof"

Similar presentations


Ads by Google