Power aware operating system

22
POWER AWARE OPERATING SYSTEM Mentor Anil Kumar Gupta Rajan Kumar Yadav

Transcript of Power aware operating system

Page 1: Power aware operating system

POWER AWARE OPERATING SYSTEM

Mentor

Anil Kumar Gupta

Rajan Kumar Yadav

Page 2: Power aware operating system

CONTENTS

• DESIGNING POWER AWARE OS

• POWER CONSUMPTION

• OUR SOLUTION TO REDUCE POWER CONSUMPTION

• LINUX POWER MANAGEMENT

• ACPI IMPLEMENTATION

• TOOLS AVAILABLE FOR POWER MONITORING

• PROJECT

Page 3: Power aware operating system

DESIGNING POWER AWARE OS

SYSTEM MODEL

Hardware Devices

Filter Driver

Device Driver

Operating System

Power

Manage

r

Application

Page 4: Power aware operating system

DESIGNING POWER AWARE OS(CONTD..)

Device Power Management

System Power Management

Power Aware OS

Operating System Power

Management(OSPM)

ACPI Driver For System Level

Power Aware HDD Power Aware RAM

ACPI Drivers For Process Level

Process Running Hardware

Page 5: Power aware operating system

TOWARDS POWER SAVING MECHANISM

Discover

Measure

Analyze and Optimize

Save

Page 6: Power aware operating system

POWER CONSUMPTION - SCENARIOS

• MEMORY CONSUMES 19% OF

POWER OF OVERALL SYSTEM

• MEMORY CONSUMES UP TO

40% OF POWER IN SERVERS

Source: Info-tech Research Group, 2010

Page 7: Power aware operating system

SOLUTION TO REDUCE POWER CONSUMPTION OF MEMORY

• HARDWARE LEVEL POWER REDUCTION

• DRAM

• SAMSUNG 30NM RAM

• SPUN DOWN SUPPORTED HDD

• OS LEVEL POWER REDUCTION

• ACPI DRIVER FOR SYSTEM

• ACPI DRIVERS FOR PROCESS

• Systems while adopting 30nm class instead of 50nm

class DRAM will save up to 23% in total energy

consumption, or 170k Watt representing $1 M Euro

Source: Samsung and Microsoft White paper

Page 8: Power aware operating system

OBSERVATIONS SO FAR

• SLEEP STATE RESIDENCY IS LOW IN MANY WORKLOADS

• MULTICORE WORKLOADS REDUCE IDLE PERIODS

• CPU-BOUND APPLICATIONS SEND REQUESTS FREQUENTLY ENOUGH

TO KEEP MEMORY DEVICES AWAKE

• MEMORY BANDWIDTH DEMAND IS VERY LOW IN SOME WORKLOADS

• MEMORY POWER IS REDUCED BY FREQUENCY SCALING

• AND VOLTAGE SCALING CAN GIVE FURTHER REDUCTIONS

System Power Goes Down by 9.9%

• CPU Voltage/Freq.

• Down by 15%

System Power Goes Down by 7.6%

• Memory Freq.

• Down by 40%

Power Goes Down 20% in System Level

and 23% in Data Centre Level

• Using 30 nm DRAM instead of 50 nm

• [Source :: Samsung]

Page 9: Power aware operating system

LINUX POWER MANAGEMENT

• TWO POPULAR POWER MANAGEMENT STANDARDS

1) APM(ADVANCED POWER MANAGEMENT)• DEVELOPED BY INTEL AND MICROSOFT

• INITIAL RELEASE IN 1992

2) ACPI(ADVANCED CONFIGURATION AND POWER INTERFACE)• DEVELOPED BY INTEL, MICROSOFT AND TOSHIBA AND LATER JOINED BY HP AND PHOENIX

• INITIAL RELEASE IN DEC 1996

• LATEST VERSION IS "REVISION 5.1" - PUBLISHED ON AUGUST 12, 2014

Page 10: Power aware operating system

LINUX POWER MANAGEMENT(CONTD..)

APM

• USES LAYERED APPROACH TO MANAGE DEVICES

• APM-AWARE APPLICATIONS (INCLUDING DEVICE DRIVERS)

TALK TO AN OS-SPECIFIC APM DRIVER

• THE DRIVER COMMUNICATES TO THE APM-AWARE BIOS

WHICH CONTROLS THE HARDWARE

APM-aware Application

APM Driver

APM-BIOS

Hardware Devices

OS

Hardware

Page 11: Power aware operating system

LINUX POWER MANAGEMENT(CONTD..)

APM

• POWER MANAGEMENT RELATED COMMUNICATION OCCURS IN

BOTH DIRECTIONS; POWER MANAGEMENT EVENTS BASED ON

DEVICE ACTIVITY ARE SENT FROM THE BIOS TO THE APM

DRIVER, AND THE APM DRIVER SENDS INFORMATION AND

REQUESTS TO THE BIOS VIA FUNCTION CALLS TO REQUEST

THE POWER STATE CHANGES .

APM-aware Application

APM Driver

APM-BIOS

Hardware Devices

OS

Hardware

Page 12: Power aware operating system

LINUX POWER MANAGEMENT(CONTD..)

Working And Sleeping States

Working State(G0)

Sleeping States(G1)

Quality of G1 Sleeping

States

S1 State S2 State S3 State S4 State

Soft Off(G2)

S5

Power Consumption: S0>S1>S2>S3>S4>S5

Return Time: S1<S2<S3<S4<S5

Options available for System

ACPI

Page 13: Power aware operating system

LINUX POWER MANAGEMENT(CONTD..)

Working And Sleeping States For Hard-Disk

and IDE/ATAPI Removable Storage

Devices

D0(Drive controller is functional)

D1(Drive controller is functional, Fast Start

Mode) D2(N/A)

D3(Drive controller is not functional, Context

Lost)

Options available for

Hard Disk in ACPI

ACPI

Page 14: Power aware operating system

ACPI IMPLEMENTATION

• ACPI SPECIFIED COMPONENT• SUPPORT TO BUILD COMPONENT

• ACPI TABLES ==> ASL AND AML

• ACPI BIOS ==> ASL AND AML

• ACPI REGISTERS ==> VENDORS DEFINED

Step 1 :

Step 2 :

Loading the ACPI tables in Memory By ACPI BIOS

Step 3 :

Write ACPI Device Driver and register it with kernel and ACPI Core

Software(ACPI-CA) Step 4:

Write Intelligent Filter Driver to notify event status to

Power Manager

Page 15: Power aware operating system

SUMMARY OF FUNCTIONAL AREAS COVERED BY ACPI

• SYSTEM POWER MANAGEMENT

• ACPI DEFINES MECHANISMS FOR PUTTING THE COMPUTER AS A WHOLE IN AND OUT OF SYSTEM

SLEEPING STATES.

• DEVICE POWER MANAGEMENT

• ACPI TABLES DESCRIBE DEVICES, THEIR POWER STATES, THE POWER PLANES THE DEVICES ARE

CONNECTED TO, AND CONTROLS FOR PUTTING DEVICES INTO DIFFERENT POWER STATES.

• PROCESSOR POWER MANAGEMENT

• WHILE THE OS IS IDLE BUT NOT SLEEPING, IT WILL USE COMMANDS DESCRIBED BY ACPI TO PUT

PROCESSORS IN LOW-POWER STATES.

• DEVICE AND PROCESSOR PERFORMANCE MANAGEMENT

• DPM TO ACHIEVE DESIRABLE BALANCE BETWEEN PERFORMANCE AND ENERGY BY TRANSITIONING

DEVICES AND PROCESSORS INTO DIFFERENT STATES WHEN THE SYSTEM IS ACTIVE.

Page 16: Power aware operating system

ACPI FUNCTIONALITIES (CONT.)• PLUG AND PLAY

• HIERARCHICALLY ARRANGED DEVICE AND CONFIGURATION INFORMATION

• SYSTEM EVENTS

• A GENERAL EVENT MECHANISM FOR SYSTEM EVENTS SUCH AS THERMAL EVENTS, POWER MANAGEMENT EVENTS,

DOCKING, DEVICE INSERTION AND REMOVAL, AND SO ON

• BATTERY MANAGEMENT

• EITHER THROUGH A SMART BATTERY SUBSYSTEM INTERFACE CONTROLLED BY THE OS DIRECTLY THROUGH THE

EMBEDDED CONTROLLER INTERFACE, OR A CONTROL METHOD BATTERY INTERFACE.

• THERMAL MANAGEMENT

• PROVIDES A MODEL TO ALLOW OEMS TO DEFINE THERMAL ZONES, THERMAL INDICATORS, AND METHODS FOR

COOLING THERMAL ZONES.

• A STANDARD HW AND SW INTERFACE BETWEEN OS AND EMBEDDED CONTROLLER

• ALLOWS ANY OS TO PROVIDE A STANDARD BUS ENUMERATOR THAT CAN DIRECTLY COMMUNICATE WITH AN

EMBEDDED CONTROLLER IN THE SYSTEM, THUS ALLOWING OTHER DRIVERS WITHIN THE SYSTEM TO

COMMUNICATE WITH AND USE THE RESOURCES OF SYSTEM EMBEDDED CONTROLLERS.

Page 17: Power aware operating system

TOOLS AVAILABLE FOR POWER MONITORING

• POWERTOP

• OPEN SOURCE

• STATUS- WORKING ON LAPTOP ONLY

• DEVELOPMENT STATUS:- UNDER DEVELOPMENT

• POWER_API

• SANDIA NATIONAL LAB

• STATUS - NOT WORKING PROPERLY(ERROR: SOME FILE NOT AVAILABLE)

• DEVELOPMENT STATUS:- UNDER CONSTRUCTION

• GSMARTCONTROL

• AVAILABLE FOR LINUX DISTRIBUTIONS

• HARD DISK SMART CAPABILITIES MONITORING

• ONLY GIVING SMART INFORMATION

• STATUS: STABLE VERSION AVAILABLE

Reason Battery's Description

Table(BDT)

Smart Battery Driver

Page 18: Power aware operating system

PROJECT

• PROBLEM STATEMENT:- IMPLEMENTING THE CORE FUNCTIONALITY OF OLD

APM COMMAND USING ACPI

• PROJECT GOAL:- DISCOVER THE ACPI DEVICE AND MEASURE THE STATUS AND

INFORMATION

1) READ BATTERY STATUS

2) AC ADAPTER STATUS

3) THERMAL INFORMATION

Page 19: Power aware operating system

PROJECT DETAILS

GOALRead

Battery Status

AC Adapter Status

Thermal Information

3

Months

3

Months2

Months

Page 20: Power aware operating system

REQUIRED SKILLS SET

• UNDERSTANDING OF UNIX OPERATING SYSTEM

• KNOWLEDGE OF LINUX KERNEL PROGRAMMING

• HANDS-ON EXPERIENCE ON DEVICE DRIVER PROGRAMMING

• KNOWLEDGE ON ACPI SPECIFICATION

• ACPI SOURCE LANGUAGE(ASL)

• ACPI MACHINE LANGUAGE(AML)

• UNDERSTANDING OF FREQUENCY AND VOLTAGE CONCEPT

Page 21: Power aware operating system

REFERENCES

• HTTP://WWW.ACPI.INFO/

• HTTPS://WWW.ACPICA.ORG/

• HTTPS://01.ORG/LINUX-ACPI

• HTTP://CITESEERX.IST.PSU.EDU/VIEWDOC/DOWNLOAD?DOI=10.1.1.16.7210&REP

=REP1&TYPE=PDF

• HTTP://WWW.LINUXFOUNDATION.ORG/

Page 22: Power aware operating system