Online Power Saving Strategies Sandy Irani Joint work with Rajesh Gupta, Sandeep Shukla, Dinesh Ramanathan.

Slides:



Advertisements
Similar presentations
Mobility Increase the Capacity of Ad-hoc Wireless Network Matthias Gossglauser / David Tse Infocom 2001.
Advertisements

ENERGY-EFFICIENT ALGORITHMS INTRODUCTION TO DETERMINISTIC ONLINE POWER-DOWN ALGORITHMS Len Matsuyama CS 695.
Reducing Network Energy Consumption via Sleeping and Rate- Adaption Sergiu Nedevschi, Lucian Popa, Gianluca Iannaccone, Sylvia Ratnasamy, David Wetherall.
Real- time Dynamic Voltage Scaling for Low- Power Embedded Operating Systems Written by P. Pillai and K.G. Shin Presented by Gaurav Saxena CSE 666 – Real.
CHAPTER 2 PROCESSOR SCHEDULING PART I By U ğ ur HALICI.
Fast Algorithms For Hierarchical Range Histogram Constructions
Walter Binder University of Lugano, Switzerland Niranjan Suri IHMC, Florida, USA Green Computing: Energy Consumption Optimized Service Hosting.
1 EE5900 Advanced Embedded System For Smart Infrastructure Static Scheduling.
Power Management Algorithms An effort to minimize Processor Temperature and Energy Consumption.
Introduction to Smartphone Energy Management. Issue 1/2 Rapid expansion of wireless services, mobile data and wireless LANs Greatest limitation: finite.
1 Stochastic Event Capture Using Mobile Sensors Subject to a Quality Metric Nabhendra Bisnik, Alhussein A. Abouzeid, and Volkan Isler Rensselaer Polytechnic.
A. Frank - P. Weisberg Operating Systems Process Scheduling and Switching.
Dynamic Power Management for Systems with Multiple Power Saving States Sandy Irani, Sandeep Shukla, Rajesh Gupta.
Energy-Efficient Rate Scheduling in Wireless Links A Geometric Approach Yashar Ganjali High Performance Networking Group Stanford University
EDA (CS286.5b) Day 11 Scheduling (List, Force, Approximation) N.B. no class Thursday (FPGA) …
System-Wide Energy Minimization for Real-Time Tasks: Lower Bound and Approximation Xiliang Zhong and Cheng-Zhong Xu Dept. of Electrical & Computer Engg.
Algorithmic problems in Scheduling jobs on Variable-speed processors Frances Yao City University of Hong Kong.
Energy, Energy, Energy  Worldwide efforts to reduce energy consumption  People can conserve. Large percentage savings possible, but each individual has.
Mechanism Design for Real-Time Scheduling Carl Bussema III 18 April 2005 Based on "Mechanism Design for Real-Time Scheduling" by Ryan Porter.
CS 423 – Operating Systems Design Lecture 22 – Power Management Klara Nahrstedt and Raoul Rivas Spring 2013 CS Spring 2013.
Analysis of Simulation Results Andy Wang CIS Computer Systems Performance Analysis.
Task Alloc. In Dist. Embed. Systems Murat Semerci A.Yasin Çitkaya CMPE 511 COMPUTER ARCHITECTURE.
Control and Optimization Meet the Smart Power Grid: Scheduling of Power Demands for Optimal Energy Management Authors: Iordanis Koutsopoulos Leandros Tassiulas.
Minimizing Response Time Implication in DVS Scheduling for Low Power Embedded Systems Sharvari Joshi Veronica Eyo.
Chapter 6: CPU Scheduling
Lecture 5: Uniprocessor Scheduling
1 I/O Management and Disk Scheduling Chapter Categories of I/O Devices Human readable Used to communicate with the user Printers Video display terminals.
Yossi Azar Tel Aviv University Joint work with Ilan Cohen Serving in the Dark 1.
Low-Power Wireless Sensor Networks
Power Save Mechanisms for Multi-Hop Wireless Networks Matthew J. Miller and Nitin H. Vaidya University of Illinois at Urbana-Champaign BROADNETS October.
Speed Scaling to Manage Energy and Temperature Nikhil Bansal (IBM Research) Tracy Kimbrel (IBM) and Kirk Pruhs (Univ. of Pittsburgh)
Low Power Design for Real-Time Systems Low power (energy) consumption is a key design for embedded systems Battery’s life during operation Reliability.
Dynamic Slack Reclamation with Procrastination Scheduling in Real- Time Embedded Systems Paper by Ravindra R. Jejurikar and Rajesh Gupta Presentation by.
1 Distributed Energy-Efficient Scheduling for Data-Intensive Applications with Deadline Constraints on Data Grids Cong Liu and Xiao Qin Auburn University.
1 Scheduling The part of the OS that makes the choice of which process to run next is called the scheduler and the algorithm it uses is called the scheduling.
Optimal Selection of Power Saving Classes in IEEE e Lei Kong, Danny H.K. Tsang Department of Electronic and Computer Engineering Hong Kong University.
A Distributed Coordination Framework for Wireless Sensor and Actor Networks Tommaso Melodia, Dario Pompili, Vehbi C.Gungor, Ian F.Akyildiz (MobiHoc 2005)
Dana Butnariu Princeton University EDGE Lab June – September 2011 OPTIMAL SLEEPING IN DATACENTERS Joint work with Professor Mung Chiang, Ioannis Kamitsos,
Minimizing Energy Consumption in Sensor Networks Using a Wakeup Radio Matthew J. Miller and Nitin H. Vaidya IEEE WCNC March 25, 2004.
Hard Real-Time Scheduling for Low- Energy Using Stochastic Data and DVS Processors Flavius Gruian Department of Computer Science, Lund University Box 118.
OPERATING SYSTEMS CS 3530 Summer 2014 Systems with Multi-programming Chapter 4.
Operating System Principles And Multitasking
Jennifer Campbell November 30,  Problem Statement and Motivation  Analysis of previous work  Simple - competitive strategy  Near optimal deterministic.
An Energy Efficient MAC Protocol for Wireless LANs, E.-S. Jung and N.H. Vaidya, INFOCOM 2002, June 2002 吳豐州.
CSCI1600: Embedded and Real Time Software Lecture 24: Real Time Scheduling II Steven Reiss, Fall 2015.
OPERATING SYSTEMS CS 3530 Summer 2014 Systems and Models Chapter 03.
Adaptive Sleep Scheduling for Energy-efficient Movement-predicted Wireless Communication David K. Y. Yau Purdue University Department of Computer Science.
Static Process Scheduling
CSCI1600: Embedded and Real Time Software Lecture 23: Real Time Scheduling I Steven Reiss, Fall 2015.
Ensieea Rizwani An energy-efficient management mechanism for large-scale server clusters By: Zhenghua Xue, Dong, Ma, Fan, Mei 1.
SERENA: SchEduling RoutEr Nodes Activity in wireless ad hoc and sensor networks Pascale Minet and Saoucene Mahfoudh INRIA, Rocquencourt Le Chesnay.
11 -1 Chapter 12 On-Line Algorithms On-Line Algorithms On-line algorithms are used to solve on-line problems. The disk scheduling problem The requests.
Determining Optimal Processor Speeds for Periodic Real-Time Tasks with Different Power Characteristics H. Aydın, R. Melhem, D. Mossé, P.M. Alvarez University.
Lecture 4 Page 1 CS 111 Summer 2013 Scheduling CS 111 Operating Systems Peter Reiher.
Process Scheduling. Scheduling Strategies Scheduling strategies can broadly fall into two categories  Co-operative scheduling is where the currently.
Jacob R. Lorch Microsoft Research
EEE Embedded Systems Design Process in Operating Systems 서강대학교 전자공학과
Operating Systems (CS 340 D)
Chapter 2 Scheduling.
Operating Systems Processes Scheduling.
Flavius Gruian < >
Chapter 6: CPU Scheduling
Zhen Xiao, Qi Chen, and Haipeng Luo May 2013
Operating System Concepts
Process Scheduling Decide which process should run and for how long
Uniprocessor scheduling
Outline - Energy Management
Chapter 6: Scheduling Algorithms Dr. Amjad Ali
Optimal Power-Down Strategies
Presentation transcript:

Online Power Saving Strategies Sandy Irani Joint work with Rajesh Gupta, Sandeep Shukla, Dinesh Ramanathan

Motivation System Level/ Application controlled power management is gaining importance. –Power is becoming first class design parameter for software and applications –Greater power savings is possible if knowledge of the applications demands are taken into account..

Power Savings Mechanisms Dynamic Power Management –When a device is idle, it can transition to low-power `sleep’ states.. Dynamic Voltage Scaling –A device can be run at different speeds with different power usage rates. –Execution of jobs can be slowed down to save power as long as all jobs are completed by their deadline.

This Talk Extend work on dynamic power management to handle devices with multiple sleep states. Design and analyze algorithms for systems that allow both dynamic power management and dynamic voltage scaling.

Dynamic Power Management Current Trend –Design Devices with sleep states –Provide driver hooks to change the power states under operating system control –For “power-hungry” peripheral devices it is common Disk-Drives Network Interface cards (Wireless card) Display devices DRAM –O/S designers design Dynamic Power Management Strategies to take advantage of that.

Dynamic Power Management When a device becomes idle, it can transition to lower power usage state. A fixed amount of additional time and energy are required to transition back to active state when a new request for service arrives. What is the best time threshold to transition to the sleep state? –Too soon: pay start-up cost too frequently. –Too late: spend too much time in the high-power state

2-state vs. Multi-state 2-state case –One idle state –One power saving state Multi-State –Idle state, and multiple power saving States. –Each power saving state has different power characteristics, and transition penalty. –Example: IBM Disk Drive Idle, standby, sleep

Previous Work Deterministic algorithm (ski rental) –Transition to sleep state when the cost of being in active state is at least the cost of `waking up’. Normalize cost of transitioning from sleep to active state to 1. Power consumption rate of active state is . –This algorithm is 2-competitive. –2 is the best possible competitive ratio for any deterministic algorithm.

Previous Work, cont. Idle period length generated by known distribution with density function p(t). Choose threshold T to minimize cost: Theorem [Karlin, Manasse, McGeough and Owicki] –For any distribution p(t), the expected cost of the above algorithm is within e/(e-1) of the optimal cost. Furthermore, there is a distribution for which no algorithm can be better than e/(e-1) times optimal.

Multi-state Case Let there be k+1 states –Let State k be the shut-down state and 0 be the active state –Let  i be the power dissipation rate at state i –Let  i be the total energy dissipated to move back to State k –States are ordered such that  i+1   i –  k = 0 and  0 = 0 (without loss of generality). –Power down energy cost can be incorporated in the power up cost for analysis (if additive).

Lower Envelope Idea Energy Time State 4 State1 State2 State3 t1 t2t3 For each state i, plot:

Deterministic Lower Envelope Algorithm The Lower Envelope Defines an ordering of the states. –Throw out states that do not appear on lower envelope Given this ordering, only need to determine thresholds: –When to transition from state i to state i+1. Lower Envelope Algorithm Transitions from one state to the next at the discontinuities of the lower envelope curve. THEOREM: Lower Envelope Algorithm is 2- competitive.

Probabilistic Lower Envelope Algorithm Use same order of states as determined by lower envelope function. Our approach: –Determine threshold for transitioning from state i to state i+1 by solving the optimization problem where i and i+1 are the only states in the system.

Probabilistic Lower Envelope Algorithm Can show that: THEOREM: The Probabilistic Lower Envelope Algorithm is e/(e-1)-competitive.

Power-Latency Tradeoff Tasks arrive through time and take time to run If the device is busy when a task arrives, it waits in a queue Idle period begins when device finishes current job and the queue is empty If device transitions to sleep state in an idle period, some latency is incurred as device transitions to active state. This in turn effects (shortens) the length of future idle periods. Power-Latency tradeoff extremes: –Minimize latency: always stay in the active state. –Minimize energy usage: delay completing any tasks until they have all arrived.

Experimental Study: IBM Mobile Hard Drive 0s02.4 Active/Busy 40ms Idle 1.5s Stand-by 5s4.750 Sleep Transition Time to Active Start-up Energy (Joules) Power Consumption State Trace data with arrival times of disk accesses from Auspex file server archive.

Histogram for the Probabilistic Lower Envelope Algorithm Create histogram –Partition possible idle period range (0,  ) into intervals –Let r i denote the left end of the i th interval –Keep a counter for the number of idle periods among last w idle periods that fall in the range [r i-1, r i ) Update thresholds every r idle periods: –Use Probabilistic Lower Envelope Algorithm to calculate thresholds using histogram as estimate of probability distribution generating upcoming idle period. –Takes time O( #bins #states ) Similar to [Keshav, Lund, Phillips, Reingold, Saran]

Histogram for the Probabilistic Lower Envelope Algorithm How many partitions do we need for the histogram? –More partitions, more accurate estimation –More partition, more expensive computation –Where should we partition? Our method: –Pick a constant c. (we chose c=5). –Let T 1,…, T k be discontinuities of Lower Envelope (i.e. thresholds for the Lower Envelope Algorithm). –Partition range [ T i, T i+1 ] into c equal size bins.

Histogram Sample BinLow-endHigh-endRangeCount

Histogram Example, cont. BinLowHighRangeCount  1

Experimental Results

Dynamic Voltage Scaling Device which can run at any speed s. Power consumed if running in state s is given by convex function P(s). Jobs arrive through time. Job j has: –Arrival time: a j –Deadline: b j –Work required: R j Schedule S = (s, job) –s(t) is the speed of the device at time t. –job(t) is which job is executed at time t.

Dynamic Voltage Scaling (Dynamic Voltage Scaling - No Sleep: DVS-NS) Schedule S is feasible for set of jobs J if for every j in J: Cost of Schedule S is:

DVS with Sleep State (DVS-S) Schedule S = ( s, job, h ): –h(t) = sleep or on –If h(t) = sleep, then s(t) = 0. Power is a function of speed and state: –P(s, state) = P(s) if state = on. –P(s, state) = 0 if state = sleep. P(0) =  is power required to keep device active with no tasks running.

DVS with Sleep State (DVS-S) Requirements for a feasible schedule are the same. Let k be the number of times the device transitions from sleep state to the on state Cost of a schedule S is:

Capabilities: vibration, acoustic, accelerometer, magnetometer, temperature sensing Summary l Processor = 360mW n doing repeated transmit/receive l Sensor = 23mW l Processor :Tx = 1 : 2 l Processor : Rx = 1 : 1 l Total Tx : Rx = 4 : 3 at maximum range Communication Subsystem Radio Modem GPS Micro Controller Rest of the Node CPU Sensor Rockwell WINS Node

SmartBadge Battery-powered embedded system. –Sharp’s display, wireless local area network (WLAN) card, StrongARM-1100 processor, Micron’s SDRAM memory, FLASH memory, sensors, modem/audio analog front-end on printed circuit board. Goal: allow computer or human user to provide location and environmental information to a location server through a heterogeneous network. Operates as part of a client-server system: initiates and terminates communication sessions. [Simunic, 2001, PhD Thesis, Stanford University]

Previous Work on DVS-NS Yao, Demers and Shenkel: –Polynomial time offline algorithm to find the optimal schedule for a set of jobs. –Algorithms Average Rate: s j (t) = R j /(b j – a j ) for t: a j <t<b j = 0 otherwise. job(t): Earliest Deadline First. –Competitive ratio of Average Rate c, where power function p is a degree-d polynomial:

Our Results on DVS-S Offline algorithm whose cost is within a factor of 3 of optimal Online algorithm –Let A be an online algorithm for DVS-NS that achieves a competitive ratio of c. –Let d be the smallest constant such that for all x,y greater than 0, –Theorem: the Competitive ratio of the online algorithm is at most

Optimal Offline Algorithm for DVS-NS [Yao, Demers, and Shenker] The algorithm schedules jobs as it goes and blacks-out intervals of time for which the device has already been scheduled. A job j is contained in an interval [z,z’] if For interval [z,z’], define l(z,z’) to be the length of the interval minus the blackout times. Define the intensity of interval [z,z’] to be where the sum is taken over all unscheduled jobs j that are contained in [z,z’].

Optimal Offline Algorithm for DVS-NS Repeat until all jobs are scheduled: –Find the interval [z,z’] with the maximum intensity. –Set s(t) = g(z,z’) for all t in [z,z’]. –Blackout the interval [z,z’]. –Remove all jobs that are contained in [z,z’].

Optimal Offline Algorithm for DVS-NS Example Speed Time 1 2 3

Critical Speed If the cost to transition from sleep state to the on state were 0, the optimal speed for all jobs would be the s that minimizes (R j /s) P(s) This is the s that satisfies P(s) = s P’(s). Call this S crit, the critical speed for . If we compress the execution of a task by x, –we expend additional energy because we execute the job faster –we save  x. –S crit is the point at which it is no longer beneficial to compress the execution of a task.

Offline Algorithm for DVS-S Run the optimal offline algorithm for DVS-NS until the maximum intensity interval has intensity less than  s. Now we must decide how to schedule the remaining tasks. There is a feasible schedule in which all jobs are run at a speed S crit or less. First decide on intervals of time in which device will sleep. Then run optimal DVS-NS algorithm with these intervals blacked out to determine device speed. How to decide on the sleep intervals?

Idea Run the device at speed 0 or S crit. –Interval in which s(t) = 0 is an idle interval –Interval in which s(t) = S crit is an active interval. The active time is the same over all schedules. The cost of an interval of length i is the minimum of  i and 1. Try and minimize the cost of all idle intervals. –Want fewer, longer intervals. Ignoring the fact that compressing some jobs to a speed of  s is more costly for some jobs than others.

Offline Algorithm for DVS-S Example Speed Time S crit

Left-To-Right Algorithm Decide on Active/Idle Intervals: –Sweep from left to right. –While active, run as many jobs as possible until there are no pending jobs in the system. Then device must become idle. –While idle, remain idle until it is necessary to start running jobs again in order to run all jobs by their deadline at a speed of S crit Decide on Sleep/On Intervals: –Active interval becomes an on interval. –Idle interval of length < 1/  becomes an on interval. –Idle intervals of length > 1/  becomes a sleep interval.

Results Theorem: the cost of Left-To-Right on any set of jobs is within a factor of three of optimal. –Lemma: no idle interval for the optimal algorithm can contain two idle intervals of Left- To-Right.

OPT LTR

Proof for LTR Divide LTR cost into three components: –ACT LTR : P(0) times the length of all the active components –RUN LTR : The cost to run the jobs beyond the energy spent keeping the device on: where the interval is taken over all active intervals. –IDLE LTR : The cost of each idle period. Either 1 or the length times .

Power  =P(0) P( S crit ) ACT LTR IDLE LTR RUN LTR

–ACT LTR is at most ACT OPT. Optimal will not run any job faster than S crit. –RUN LTR is at most ACT OPT + RUN OPT. OPT LTR – IDLE LTR is at most ON OPT + 3 SLEEP OPT. Speed

IDLE LTR is at most ON OPT + 3 SLEEP OPT Consider an interval I in which LTR is idle. If OPT is ON during all of I, then the cost of I is covered by the cost incurred by OPT in keeping device on during I. Consider all intervals I such that OPT is asleep during a portion of I. The number of such intervals is at most 3 times the number of times OPT is in sleep state: OPT: on/sleep LTR: active/idle

Online Algorithm for DVS-S Decide on Active/Idle Intervals: –Sweep from left to right. –While active, run as many jobs as possible until there are no pending jobs in the system. Then device must become idle. –While idle, remain idle until it is necessary to start running jobs again in order to run all jobs (that we know about) by their deadline at a speed of S crit Algorithm name: PROCRASTINATOR Decide on Sleep/On Intervals: –If idle, stay on until cost of staying equals cost of waking up.

Online Algorithm for DVS-S Decide on device speed. –Let A be an online algorithm for DVS-NS. –Whenever feasible, run device at speed S crit –If a job arrives which makes it impossible to complete all jobs at a speed of S crit by their deadline, schedule new job according to A. Add the speed of this job to the speed already allocated to other jobs.

Procrastinator Example S crit

Procrastinator Example S crit

Procrastinator Example S crit

Procrastinator Example S crit

The time Procrastinator is active is less than the time LTR is active. (Procrastinator runs tasks at least as fast as LTR ). –Can bound cost to keep device on and cost to wake-up for Procrastinator by cost of LTR. –Extra cost comes from doubling up jobs scheduled at speed S crit and jobs scheduled by algorithm A.

Let A be an online algorithm for DVS-NS that achieves a competitive ratio of c. Let d be the smallest constant such that for all x,y greater than 0, Theorem: the Competitive ratio of Procrastinator is at most

Let A be an online algorithm for DVS-NS that achieves a competitive ratio of c. Let d be the smallest constant such that for all x,y greater than 0, Theorem: the Competitive ratio of Procrastinator is at most d c 2 4 4/8 27/108108/540 8/24 c.r. P(s)

Let A be an online algorithm for DVS-NS that achieves a competitive ratio of c. Let d 1 and d 2 be such for all x,y greater than 0, Theorem: the Competitive ratio of Procrastinator is at most c 27/10866/193 c.r. P(s) 27/108108/540

Open Problems Optimize constants in algorithm. –Don’t wait until last minute to return to active state. Experimental Study: coming this summer. Offline problem NP-complete? Improve online algorithms for DVS-NS.

Papers Competitive Analysis of Dynamic Power Management Strategies for Systems with Multiple Power Saving States.With Sandeep Shukla and Rajesh Gupta. Proceedings of Design Automation and Test in Europe (DATE), Online Strategies for Dynamic Power Management in Systems with Multiple Power Saving States. With Sandeep Shukla and Rajesh Gupta. Submitted to ACM Transactions on Embedded Computing Systems, Special Issue on Power-Aware Embedded Computing. Dynamic Voltage Scaling for Systems with Sleep States. Manuscript.