Green Computing Power Management Standards Maziar Goudarzi.

Slides:



Advertisements
Similar presentations
What is an Operating System?
Advertisements

Note: Third Party Brands and Trademarks are Property of Their Respective Owners. ACPI Overview.
Conserving Disk Energy in Network Servers ACM 17th annual international conference on Supercomputing Presented by Hsu Hao Chen.
Chapter 9 Contributed by Alex Turek
WHAT IS AN OPERATING SYSTEM? An interface between users and hardware - an environment "architecture ” Allows convenient usage; hides the tedious stuff.
Introduction CSCI 444/544 Operating Systems Fall 2008.
Power management for Laptops. Batteries & power management Nickel Cadmium (Ni-Cd) Nickel-Metal Hydride (Ni-MH) Lithium-Ion (Li-Ion)
1 OS Structure, Processes & Process Management. 2 Recap OS functions  Coordinator  Protection  Communication  Resource management  Service provider.
Contiki A Lightweight and Flexible Operating System for Tiny Networked Sensors Presented by: Jeremy Schiff.
OS Fall ’ 02 Introduction Operating Systems Fall 2002.
1 Soft Timers: Efficient Microsecond Software Timer Support For Network Processing Mohit Aron and Peter Druschel Rice University Presented By Jonathan.
Chapter 7 Interupts DMA Channels Context Switching.
DPM Dynamic power management. DPM Tree DPM Timeout Adaptive Device dependent Predictive L-shape Exponential average Predictive wakeup Adaptive Disk shutdown.
Figure 1.1 Interaction between applications and the operating system.
70-290: MCSE Guide to Managing a Microsoft Windows Server 2003 Environment Chapter 2: Managing Hardware Devices.
1 When to Switch Processes 3 triggers –System call, Interrupt and Trap System call –when a user program invokes a system call. e.g., a system call that.
Introduction Operating Systems’ Concepts and Structure Lecture 1 ~ Spring, 2008 ~ Spring, 2008TUCN. Operating Systems. Lecture 1.
1/16/2008CSCI 315 Operating Systems Design1 Introduction Notice: The slides for this lecture have been largely based on those accompanying the textbook.
Energy Model for Multiprocess Applications Texas Tech University.
Synergy.cs.vt.edu Power and Performance Characterization of Computational Kernels on the GPU Yang Jiao, Heshan Lin, Pavan Balaji (ANL), Wu-chun Feng.
CS 423 – Operating Systems Design Lecture 22 – Power Management Klara Nahrstedt and Raoul Rivas Spring 2013 CS Spring 2013.
Computers: Software Patrice Koehl Computer Science UC Davis.
Operating systems.
70-290: MCSE Guide to Managing a Microsoft Windows Server 2003 Environment, Enhanced Chapter 2: Managing Hardware Devices.
Introduction and Overview Questions answered in this lecture: What is an operating system? How have operating systems evolved? Why study operating systems?
Chapter 6 Operating System Support. This chapter describes how middleware is supported by the operating system facilities at the nodes of a distributed.
A+ Guide to Managing and Maintaining Your PC Fifth Edition Chapter 1 Introducing Hardware.
Low-Power Wireless Sensor Networks
1 Overview 1.Motivation (Kevin) 1.5 hrs 2.Thermal issues (Kevin) 3.Power modeling (David) Thermal management (David) hrs 5.Optimal DTM (Lev).5 hrs.
Critical Power Slope Understanding the Runtime Effects of Frequency Scaling Akihiko Miyoshi, Charles Lefurgy, Eric Van Hensbergen Ram Rajamony Raj Rajkumar.
1 RTOS Design Some of the content of this set of slides is taken from the documentation existing on the FreeRTOS website
Lecture 3 Process Concepts. What is a Process? A process is the dynamic execution context of an executing program. Several processes may run concurrently,
CE Operating Systems Lecture 3 Overview of OS functions and structure.
OPERATING SYSTEMS Lecture 3: we will explore the role of the operating system in a computer Networks and Communication Department 1.
The Cosmic Cube Charles L. Seitz Presented By: Jason D. Robey 2 APR 03.
Chapter 14 - Configuring Shutdown and Power Management Options.
Lev Finkelstein ISCA/Thermal Workshop 6/ Overview 1.Motivation (Kevin) 2.Thermal issues (Kevin) 3.Power modeling (David) 4.Thermal management (David)
© GCSE Computing Computing Hardware Starter. Creating a spreadsheet to demonstrate the size of memory. 1 byte = 1 character or about 1 pixel of information.
Lecture on Central Process Unit (CPU)
CompTIA A+ Guide to Managing & Maintaining Your PC By: JEAN ANDREW Computer Maintenance Chapter 1: Computer Basics Knowledge.
Week1: Introduction to Computer Networks. Copyright © 2012 Cengage Learning. All rights reserved.2 Objectives 2 Describe basic computer components and.
Ensieea Rizwani An energy-efficient management mechanism for large-scale server clusters By: Zhenghua Xue, Dong, Ma, Fan, Mei 1.
1.1 Sandeep TayalCSE Department MAIT 1: Introduction What is an operating system? Simple Batch Systems Multiprogramming Batched Systems Time-Sharing Systems.
E-MOS: Efficient Energy Management Policies in Operating Systems
1 Device Controller I/O units typically consist of A mechanical component: the device itself An electronic component: the device controller or adapter.
Silberschatz and Galvin  Operating System Concepts Module 1: Introduction What is an operating system? Simple Batch Systems Multiprogramming.
CSCI/CMPE 4334 Operating Systems Review: Exam 1 1.
1 Chapter 2: Operating-System Structures Services Interface provided to users & programmers –System calls (programmer access) –User level access to system.
Evaluation of Advanced Power Management for ClassCloud based on DRBL Rider Grid Technology Division National Center for High-Performance Computing Research.
Power Management. Outline Why manage power? Power management in CPU cores Power management system wide Ways for embedded programmers to be power conscious.
Introduction to Operating Systems Concepts
Overview Motivation (Kevin) Thermal issues (Kevin)
Virtualization for Cloud Computing
Applied Operating System Concepts
Resource Management IB Computer Science.
Green cloud computing 2 Cs 595 Lecture 15.
Sujata Ray Dey Maheshtala College Computer Science Department
Chapter 1: Introduction
Mechanism: Limited Direct Execution
Introduction to Operating System (OS)
Chapter 1: Introduction
Virtualization Techniques
Operating System Concepts
Language Processors Application Domain – ideas concerning the behavior of a software. Execution Domain – Ideas implemented in Computer System. Semantic.
Sujata Ray Dey Maheshtala College Computer Science Department
Prof. Leonardo Mostarda University of Camerino
Operating System Introduction.
Processes David Ferry CSCI 3500 – Operating Systems
Outline - Energy Management
Operating System Concepts
Presentation transcript:

Green Computing Power Management Standards Maziar Goudarzi

Outline 2 Acknowledgements Some slides/parts from and APM: Advanced Power Management ACPI: Advanced Configuration and Power Interface

APM: Advanced Power Management API by intel & Microsoft in 1992 OS – BIOS (firmware) communication & work Main drawback –BIOS-based –Standard 3

Firmware former usage Initial power management mechanisms – Implemented on device firmware – Firmware did most of the work – Example: Firmware reliance not good –A call can take long time or never return –OS stability is dependent on firmware quality Andrew Grover. Modern System Power Management. ACM Queue vol. 1, no. 7 (October 2003),

تمرین اضافی برنامه ای بنویسید که کار با APM و کاربردهایش را نشان دهد. نتایج کاهش مصرف انرژی را گزارش کنید. متن برنامه و گزارش نتایج را تحویل دهید. 5

Advanced Configuration and Power Management 6

Overview ACPI definitions Energy efficiency through better control of ACPI power states A few Examples on power savings using ACPI 7

What is ACPI Advanced Configuration and Power Management Specification: –ACPI is part of all the Operating Systems, and it allows the operating system to control the amount of power given to each device attached to the system. 8 Its all about giving parts of computer some sleep……

Advanced Configuration and Power Interface(ACPI) Specification –Holistic approach for computer system energy conservation –Created by HP, Intel, Microsoft, Phoenix and Toshiba OS-directed configuration and power management (OSPM) –Governs all system and device power state transitions –Aware of user preferences and applications requirements Defines –Hardware/software interfaces and data structures –State definitions –ASL & AML languages 9

Goals Configuration and power management –For desktop, laptops, workstation and servers Enhanced functionality and robustness at OS-level –Inexpensive power managed hardware –Better power management decisions –Reduction of conflicts between OS and firmware Robust interface for configuring motherboard devices Promotion of industry-wide adoption 10

Functional areas Power management System, device, and processor Performance management Device and processor Configuration / Plug & Play System events Battery management Thermal management All controlled by OSPM –OSPM: OS-directed configuration and power management 11

ACPI- Global States Global states are applied to the entire system and are visible to the User: G0: Working state G1: Sleeping State or Standby. G2: Soft Off. G3: Mechanical Off. 12

ACPI Global System State System context –Software loaded in memory and state of devices G0 and G1 keep the context G2 and G3 only keep the context if sleeping state S4 is used –S4 saves context in non volatile memory 13

ACPI Sleeping States Sleeping states within global system sleeping state G1 14

ACPI Sleeping States S states – affect the whole system –S0 – working –S1 – processor stops, idle hardware powered down –S2 – CPU, Caches powered off –S3 – Standby/Sleep, Suspend to RAM –S4 – Hibernate, Suspend to Disk –S5 – Soft Off 15

ACPI Device Power States Applies to each device and generally not visible by the user Independent of global system state D states – individual device state –D0 – fully on –D1, D2 – intermediate states –D3 – powered off 16

ACPI Device Power States D1 and D2 optional D1, D2, and D3hot defined by each device class 17

ACPI CPU Power States Power consumption and thermal management states –Within global working state G0 Latency –C1 must be as low as not considered –C2 and C3 must report latency via ACPI firmware –OSPM can decide if it is worth to switch 18

ACPI Power States- CPU C state – CPU state –C0 – working –C1 – halted, not executing instructions –C2 – clock stopped –C3 – sleep 19

ACPI CPU Performance States P state – changing the performance of CPU, or device such as GPU, by switching between different Frequency and Voltages to modulate power consumption. –P0 – full speed, frequency, voltage, etc –P1 – slower than P0 –… –Pn – up to 15 20

21 Main view of power states The image belongs to the ACPI 4.0a specification

Power Saving Techniques – Using P state transitions (Race to Idle) Power efficiency of P states is not linear –Example (not realistic for simplicity): P0 is 2MHz and uses 30 watts P1 is 1MHz and uses 20 watts cycles of work to be done: –P0 power usage = / 2MHz * 30 watts =.15 watt seconds –P1 power usage = / 1MHz * 20 watts =.20 watt seconds Use P0 state to complete the work and return to idle sooner Known as “race to idle”. Race to idle > Other P states

Power Saving Techniques – C State (only applies to CPU) “Tickless idle” technique: –Delay scheduled events as long as possible in order to do all work at once, and go back to sleep. –Sleep longer, save energy. Option 1: –For current kernel, the C0 to C1 transitions, hundreds of times per second. Option 2 : C0 to C2 transitions. –Power required is less but wake up time is more. 24

Research(-like) Questions: Power Profiling of Computing Platform 25 Power Profiling of the entire platform for different workloads such as CPU intensive, memory intensive or network intensive. Can workload assignment match the nature of the workload to the power profile of the system. Measurement of Power Consumption of CPU in each of C and P states. Determine the performance cost and power cost of transition to C0 from any other state? Can server load prediction be used to choose C states more effectively?

Research(-like) questions D and P states (Devices) The D and P states supported by a device are dependent upon the device implementation. It's performance and overhead characteristics are all device dependent. Can load prediction be used to choose device states more effectively? Can awareness of the nature of the load help to choose the particular computing system? 26

Power Profiling of Components – D and P states The same technique can be applied to other devices –NIC, Hard disk, etc. –Give them work to do –Oscillate power state –Measure the performance and power changes 27

Power Profiling– C States Measure power at the CPU instead of at the power supply Measure power usage of each state –Measure C0 by loading the processor to 100% –Test C1-C3 by locking it into a halt state (unrecoverable) Measure power usage as states transition –50% C0, 50% C1 (or C2, C3) –Increasing frequency of transition will reduce performance –This curve can be used to calculate transition time –Compare to continuous C state power usage –Determines power consumption of state transitions Will require modifying Linux kernel 28

ACPI Architecture 29

ASL & AML Languages ACPI defines two languages –ACPI Source Language (ASL) Human readable source code –ACPI Machine Language (AML) Interpreted language Describes hardware and steps to reach it ACPI defines abstract control methods for devices –Example: _BST retrieves battery status System firmware provides AML code –Include information about the devices –Implements control methods 30

ACPI Firmware usage Advantages –Less opaque and debugable –Can run concurrently and does not block the system –Less constrained in size than firmware code 31

Implementation Structure 32

More info and an example available in the slide from Linkoping university Green computing:Power management Presented by: Jordi Cucurull Department of Computer and Information Science (IDA) Linköpings universitet Sweden 33

Summary Introduction to ACPI How ACPI can be used to reduce power A few investigation proposals 34

Additional information ACPI Specification – The ACPI Component Architecture Project – ACPI FAQ for Linux implementation – to.txt 35

تمرین اضافی Using ACPI to monitor power # watch -n1 'cat /proc/acpi/battery/BAT0/*‘ –This requires ACPI to be enabled. The value given is (roughly) an average over the last minute. Alternatively, load the tp_smapi module and run the following with AC power unplugged:tp_smapi # watch -n1 'cat /sys/devices/platform/smapi/BAT0/power_now‘ or # watch -n1 'cat /sys/devices/platform/smapi/BAT0/power_avg' –The former provides the instantaneous power draw, and the latter is (roughly) an average over the last minute. It's OK to use tp_smapi's force_discharge function instead of physically disconnecting AC power.tp_smapi 36 for ThinkPad laptops