Scheduling for Reduced CPU Energy M. Weiser, B. Welch, A. Demers, and S. Shenker.

Slides:



Advertisements
Similar presentations
CPU Scheduling.
Advertisements

Reducing Network Energy Consumption via Sleeping and Rate- Adaption Sergiu Nedevschi, Lucian Popa, Gianluca Iannaccone, Sylvia Ratnasamy, David Wetherall.
CH 5. CPU Scheduling Basic Concepts F CPU Scheduling  context switching u CPU switching for another process u saving old PCB and loading.
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.
Power Reduction Techniques For Microprocessor Systems
Operating Systems 1 K. Salah Module 2.1: CPU Scheduling Scheduling Types Scheduling Criteria Scheduling Algorithms Performance Evaluation.
Investigating the Effect of Voltage- Switching on Low-Energy Task Scheduling in Hard Real-Time Systems Paper review Presented by Chung-Fu Kao.
Application and System Adaptation for Mobility CS 444N, Spring 2002 Instructor: Mary Baker Computer Science Department Stanford University.
1 Soft Timers: Efficient Microsecond Software Timer Support For Network Processing Mohit Aron and Peter Druschel Rice University Presented By Jonathan.
Silberschatz, Galvin and Gagne  Operating System Concepts Chapter 6: CPU Scheduling Basic Concepts Scheduling Criteria Scheduling Algorithms.
Copyright © 1998 Wanda Kunkle Computer Organization 1 Chapter 2.1 Introduction.
Processor Frequency Setting for Energy Minimization of Streaming Multimedia Application by A. Acquaviva, L. Benini, and B. Riccò, in Proc. 9th Internation.
Power-aware Computing n Dramatic increases in computer power consumption: » Some processors now draw more than 100 watts » Memory power consumption is.
Power, Energy and Delay Static CMOS is an attractive design style because of its good noise margins, ideal voltage transfer characteristics, full logic.
1Chapter 05, Fall 2008 CPU Scheduling The CPU scheduler (sometimes called the dispatcher or short-term scheduler): Selects a process from the ready queue.
CS 423 – Operating Systems Design Lecture 22 – Power Management Klara Nahrstedt and Raoul Rivas Spring 2013 CS Spring 2013.
Minimizing Response Time Implication in DVS Scheduling for Low Power Embedded Systems Sharvari Joshi Veronica Eyo.
VOLTAGE SCHEDULING HEURISTIC for REAL-TIME TASK GRAPHS D. Roychowdhury, I. Koren, C. M. Krishna University of Massachusetts, Amherst Y.-H. Lee Arizona.
Chapter 5: CPU Scheduling. 5.2 Silberschatz, Galvin and Gagne ©2005 Operating System Concepts – 7 th Edition, Feb 2, 2005 Scheduler What is the job of.
OPTIMAL SERVER PROVISIONING AND FREQUENCY ADJUSTMENT IN SERVER CLUSTERS Presented by: Xinying Zheng 09/13/ XINYING ZHENG, YU CAI MICHIGAN TECHNOLOGICAL.
Lecture 03: Fundamentals of Computer Design - Trends and Performance Kai Bu
Low-Power Wireless Sensor Networks
Computer Science Department University of Pittsburgh 1 Evaluating a DVS Scheme for Real-Time Embedded Systems Ruibin Xu, Daniel Mossé and Rami Melhem.
Chapter 6 Scheduling. Basic concepts Goal is maximum utilization –what does this mean? –cpu pegged at 100% ?? Most programs are I/O bound Thus some other.
1 EE5900 Advanced Embedded System For Smart Infrastructure Energy Efficient Scheduling.
Dynamic Slack Reclamation with Procrastination Scheduling in Real- Time Embedded Systems Paper by Ravindra R. Jejurikar and Rajesh Gupta Presentation by.
Sogang University Advanced Computing System Chap 1. Computer Architecture Hyuk-Jun Lee, PhD Dept. of Computer Science and Engineering Sogang University.
Critical Power Slope Understanding the Runtime Effects of Frequency Scaling Akihiko Miyoshi, Charles Lefurgy, Eric Van Hensbergen Ram Rajamony Raj Rajkumar.
Silberschatz, Galvin and Gagne  Operating System Concepts Chapter 6: CPU Scheduling Basic Concepts Scheduling Criteria Scheduling Algorithms.
Probabilistic Preemption Control using Frequency Scaling for Sporadic Real-time Tasks Abhilash Thekkilakattil, Radu Dobrin and Sasikumar Punnekkat.
Scheduling. Alternating Sequence of CPU And I/O Bursts.
10/19/2015Erkay Savas1 Performance Computer Architecture – CS401 Erkay Savas Sabanci University.
1 Distributed Energy-Efficient Scheduling for Data-Intensive Applications with Deadline Constraints on Data Grids Cong Liu and Xiao Qin Auburn University.
1 University of Maryland Linger-Longer: Fine-Grain Cycle Stealing in Networks of Workstations Kyung Dong Ryu © Copyright 2000, Kyung Dong Ryu, All Rights.
CPU Scheduling Gursharan Singh Tatla 1-Feb-20111www.eazynotes.com.
CPU Scheduling CSCI 444/544 Operating Systems Fall 2008.
Performance.
Hard Real-Time Scheduling for Low- Energy Using Stochastic Data and DVS Processors Flavius Gruian Department of Computer Science, Lund University Box 118.
2.5 Scheduling Given a multiprogramming system. Given a multiprogramming system. Many times when more than 1 process is waiting for the CPU (in the ready.
Lecture 7: Scheduling preemptive/non-preemptive scheduler CPU bursts
1 11/29/2015 Chapter 6: CPU Scheduling l Basic Concepts l Scheduling Criteria l Scheduling Algorithms l Multiple-Processor Scheduling l Real-Time Scheduling.
An Energy-efficient Task Scheduler for Multi-core Platforms with per-core DVFS Based on Task Characteristics Ching-Chi Lin Institute of Information Science,
Lecture 6 Page 1 CS 111 Online Preemptive Scheduling Again in the context of CPU scheduling A thread or process is chosen to run It runs until either it.
2.5 Scheduling. Given a multiprogramming system, there are many times when more than 1 process is waiting for the CPU (in the ready queue). Given a multiprogramming.
Adaptive Sleep Scheduling for Energy-efficient Movement-predicted Wireless Communication David K. Y. Yau Purdue University Department of Computer Science.
6.1 CPU Scheduling Basic Concepts Scheduling Criteria Scheduling Algorithms Multiple-Processor Scheduling Real-Time Scheduling Algorithm Evaluation.
FPGA-Based System Design: Chapter 6 Copyright  2004 Prentice Hall PTR Topics n Low power design. n Pipelining.
Lecture 5: 9/10/2002CS170 Fall CS170 Computer Organization and Architecture I Ayman Abdel-Hamid Department of Computer Science Old Dominion University.
VLSI Design & Embedded Systems Conference January 2015 Bengaluru, India Few Good Frequencies for Power-Constrained Test Sindhu Gunasekar and Vishwani D.
Ensieea Rizwani An energy-efficient management mechanism for large-scale server clusters By: Zhenghua Xue, Dong, Ma, Fan, Mei 1.
1 Page Replacement Algorithms. 2 Virtual Memory Management Fundamental issues : A Recap Key concept: Demand paging  Load pages into memory only when.
Determining Optimal Processor Speeds for Periodic Real-Time Tasks with Different Power Characteristics H. Aydın, R. Melhem, D. Mossé, P.M. Alvarez University.
Chapter 4 CPU Scheduling. 2 Basic Concepts Scheduling Criteria Scheduling Algorithms Multiple-Processor Scheduling Real-Time Scheduling Algorithm Evaluation.
3. CPU Scheduling. CPU Scheduling Process execution – a cycle of CPU execution and I/O wait – figure Preemptive Non-Preemptive.
Scheduling.
PipeliningPipelining Computer Architecture (Fall 2006)
Soft Timers : Efficient Microsecond Software Timer Support for Network Processing - Mohit Aron & Peter Druschel CS533 Winter 2007.
Jacob R. Lorch Microsoft Research
Andrea Acquaviva, Luca Benini, Bruno Riccò
SECTIONS 1-7 By Astha Chawla
Presented by Kristen Carlson Accardi
Chapter 2 Scheduling.
Process Scheduling B.Ramamurthy 9/16/2018.
Chapter 6: CPU Scheduling
Dynamic Voltage Scaling
Chapter 6: CPU Scheduling
CPU Scheduling David Ferry CSCI 3500 – Operating Systems
Chapter 6: CPU Scheduling
Scheduling 21 May 2019.
Chapter 6: CPU Scheduling
Presentation transcript:

Scheduling for Reduced CPU Energy M. Weiser, B. Welch, A. Demers, and S. Shenker

Introduction The Energy Saving of A Typical Laptop Computer Backlight and display & Disk Turning off after a period of no use CPU Simple power-down-when-idle techniques Another way? Opportunities Dynamically varying chip speed & energy consumption Cooperation of the operating system scheduler When to use full power & when not

CPU Energy Q = C * V Charge = Capacitance * Volts E = Q * V Energy = Charge * Volts When charging a capacitor E =1/2 C V 2 => Energy spent charging a gate is proprotional to the square of the voltage

Reducing CPU Energy Empirically, lower-voltage circuits have longer settling times SGS-Thompson 8051 CMOS microcontroller 6 5V V V => max clock rate is proportional to voltage The relationship is close to linear for an interesting range of voltages - 5V to 2.2V Executing the same # cycles at a lower voltage and a slower clock speed results in a net power savings Adjust the CPU speed+voltage in response to scheduling demands

An Energy Metric for CPUs MIPJ : Millions of instructions per joule = MIPS/WATTS No effect on changes in clock speed Opportunity For Quadratic Energy Savings As the clock speed is reduced by n, energy per cycle can be reduced n 2 Three methods to achieve this Voltage reduction Reversible logic Adiabatic switching

An Energy Metric for CPUs - cont’d Voltage Reduction E/clock is directly proportional to V 2 Lower-voltage, slower-clock chip; less energy per cycle Reducing The Energy Consumption The same # of cycles but lower voltage Ex: a task with 100ms deadline Method 1 50ms - full speed;50ms - idle Method 2 100ms - half speed at half voltage Energy consumption: 4:1

Approach of This Paper Energy Saving Technique The fine grain control of CPU clock speed Running slower and at reduced voltage Evaluation Using trace-driven simulation Goal To evaluate the energy savings To measure the effect of running too slow

Trace Data From the UNIX scheduler Workloads S/W dev., documentation, , simulation,... Typing, scrolling Time stamp: microsecond Sleep events: wait on hard, soft events Hard events: disk wait, page fault Soft events: keystroke, awaiting network packets Soft idle can be eliminated by rescheduling Hard idle is mandated by a wait on a device

Assumptions Simulation Soft events belongs to idle periods No reordering of trace data events Using no energy when idle Taking no time to switch speeds No consideration of > 30 second period of greater than 90% idleness Lower bound to practical speed: V V V V

Scheduling Algorithms OPT (unbounded-delay perfect-future) Taking the entire trace Stretching all the run times to fill all the idle times Imaginary batch job with perfect knowledge Impractical & undesirable Bad response time FUTURE (bounded-delay limited-future) Taking the future trace of a small window Window sizes: 1 ms ~ 400 sec Impractical but desirable Good response time on a window of 10 to 50 ms

Scheduling Algorithms -cont’d PAST (bounded-delay limited-past) Looking a fixed window into the past Assuming the next window will be like the previous one Examine % busy during the pervious interval and adjust speed for the next interval Excess cycles can build up if speed (+voltage) is set too low. => Penalty metric Excess Cycle Penalty At each interval, count up left over cycles that accumulated because you ran too slow Switch to full speed if there were more excess cycles than idle time in the previous interval Hard idle (page fault, disk request) cannot be squeezed

Trace Driven Simulation Trace Points Sched: context switch away a process Idle on:enter the idle loop Idle off:leave idle loop to run a process Fork:create a new process Exec:overlay a new process with another program Exit:process termination Sleep:wait on an event Wakeup: notify a sleeping process Traces Short runs during specific tasks, editing etc. Long runs of several hours

Evaluation: The Results of Three Algorithms

Evaluation: Minimal Voltage & The Excess Cycles Frequency: All the excess cycles previous x-val. Excess cycles: time to run unfinished instructions at full speed Lower min vol. => more cases where excess cycles build up => accumulate in longer interval => peak extends to right

Evaluation: Interval Length & Excess Cycles Peak in excess cycles shifts right as interval len. Increases Longer scheduling interval => more excess cycles built up

Evaluation: Different Minimum Voltage Limits 2.2 V is almost as good as 1.0 V Relative savings for diff. min. voltages

Evaluation: Changing The Inverval Length A longer adjustment period results in more savings

Evaluation: Average Excess Cycles [1] Lower min. voltage => more excess cycles Longer intervals => accumulate more excess cycles Energy savings is function of the interval size

Evaluation: Average Excess Cycles [2]

Discussion & Future Work Feedback source other than idle time To classify jobs into Background, periodic, and foreground Schd. Order: periodic, foreground, background No Reordering vs. Reordering Unless a large job mix, reordering not significant. I/O Wait Model: Hard/Soft Thinking valid but good to verify

Conclusions Preliminary Results On CPU Scheduling To Reduce CPU Energy Usage Scheduling jobs at different clock rates. Trace Driven Simulation OPT / FUTURE / PAST PAST with a 50ms window 2.2 Volts => 5.0 Volts: This range provides good savings with moderate penalty Power savings up to 50% (3.3V), 70% (2.2V) The Tortoise Is More Efficient Than The Hare.