CprE 458/558: Real-Time Systems (G. Manimaran)1 Energy Aware Real Time Systems - Scheduling algorithms Acknowledgement: G. Sudha Anil Kumar Real Time Computing.

Slides:



Advertisements
Similar presentations
Feedback EDF Scheduling Exploiting Dynamic Voltage Scaling Yifan Zhu and Frank Mueller Department of Computer Science Center for Embedded Systems Research.
Advertisements

Real Time Scheduling.
Energy-efficient Task Scheduling in Heterogeneous Environment 2013/10/25.
CprE 458/558: Real-Time Systems (G. Manimaran)1 CprE 458/558: Real-Time Systems Fault-Tolerant Scheduling Techniques.
1 EE5900 Advanced Embedded System For Smart Infrastructure Energy Efficient Scheduling.
1 “Scheduling with Dynamic Voltage/Speed Adjustment Using Slack Reclamation In Multi-processor Real-Time Systems” Dakai Zhu, Rami Melhem, and Bruce Childers.
Resource Management §A resource can be a logical, such as a shared file, or physical, such as a CPU (a node of the distributed system). One of the functions.
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.
CprE 458/558: Real-Time Systems (G. Manimaran)1 CprE 458/558: Real-Time Systems Resource Reclaiming (Contd.)
CSE 522 Real-Time Scheduling (4)
Introduction and Background  Power: A Critical Dimension for Embedded Systems  Dynamic power dominates; static /leakage power increases faster  Common.
Power Aware Real-time Systems Rami Melhem A joint project with Daniel Mosse, Bruce Childers, Mootaz Elnozahy.
CprE 458/558: Real-Time Systems (G. Manimaran)1 CprE 458/558: Real-Time Systems (m, k)-firm tasks and QoS enhancement.
Minimizing Expected Energy Consumption in Real-Time Systems through Dynamic Voltage Scaling Ruibin Xu, Daniel Mosse’, and Rami Melhem.
Aleksandra Tešanović Low Power/Energy Scheduling for Real-Time Systems Aleksandra Tešanović Real-Time Systems Laboratory Department of Computer and Information.
Investigating the Effect of Voltage- Switching on Low-Energy Task Scheduling in Hard Real-Time Systems Paper review Presented by Chung-Fu Kao.
Low Power Design for Wireless Sensor Networks Aki Happonen.
System-Wide Energy Minimization for Real-Time Tasks: Lower Bound and Approximation Xiliang Zhong and Cheng-Zhong Xu Dept. of Electrical & Computer Engg.
By Group: Ghassan Abdo Rayyashi Anas to’meh Supervised by Dr. Lo’ai Tawalbeh.
Misconceptions About Real-time Computing : A Serious Problem for Next-generation Systems J. A. Stankovic, Misconceptions about Real-Time Computing: A Serious.
CprE 458/558: Real-Time Systems
Power-aware Computing n Dramatic increases in computer power consumption: » Some processors now draw more than 100 watts » Memory power consumption is.
Real-Time Sensor Networks with Applications in Cyber-Physical Systems Manimaran Govindarasu Dept. of Electrical and Computer Engineering Iowa State University.
Energy Aware Real Time Systems
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.
Abhilash Thekkilakattil, Radu Dobrin, Sasikumar Punnekkat Mälardalen Real-time Research Center, Mälardalen University Västerås, Sweden Preemption Control.
XI HE Computing and Information Science Rochester Institute of Technology Rochester, NY USA Rochester Institute of Technology Service.
CprE 458/558: Real-Time Systems (G. Manimaran)1 CprE 458/558: Real-Time Systems Combined Scheduling of Periodic and Aperiodic Tasks.
ParaScale : Exploiting Parametric Timing Analysis for Real-Time Schedulers and Dynamic Voltage Scaling Sibin Mohan 1 Frank Mueller 1,William Hawkins 2,
Computer Science Department University of Pittsburgh 1 Evaluating a DVS Scheme for Real-Time Embedded Systems Ruibin Xu, Daniel Mossé and Rami Melhem.
Energy-Efficient Soft Real-Time CPU Scheduling for Mobile Multimedia Systems Wanghong Yuan, Klara Nahrstedt Department of Computer Science University of.
Lecture 2 Process Concepts, Performance Measures and Evaluation Techniques.
Low Power Design for Real-Time Systems Low power (energy) consumption is a key design for embedded systems Battery’s life during operation Reliability.
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.
A S CHEDULABILITY A NALYSIS FOR W EAKLY H ARD R EAL - T IME T ASKS IN P ARTITIONING S CHEDULING ON M ULTIPROCESSOR S YSTEMS Energy Reduction in Weakly.
Probabilistic Preemption Control using Frequency Scaling for Sporadic Real-time Tasks Abhilash Thekkilakattil, Radu Dobrin and Sasikumar Punnekkat.
Scheduling policies for real- time embedded systems.
1 Distributed Energy-Efficient Scheduling for Data-Intensive Applications with Deadline Constraints on Data Grids Cong Liu and Xiao Qin Auburn University.
Power Management of Flash Memory for Portable Devices ELG 4135, Fall 2006 Faculty of Engineering, University of Ottawa November 1, 2006 Thayalan Selvam.
Abhilash Thekkilakattil, Radu Dobrin, Sasikumar Punnekkat Mälardalen Real-time Research Center, Mälardalen University Västerås, Sweden Towards Preemption.
Company name KUAS HPDS A Realistic Variable Voltage Scheduling Model for Real-Time Applications ICCAD Proceedings of the 2002 IEEE/ACM international conference.
Real-Time Scheduling CS4730 Fall 2010 Dr. José M. Garrido Department of Computer Science and Information Systems Kennesaw State University.
Hard Real-Time Scheduling for Low- Energy Using Stochastic Data and DVS Processors Flavius Gruian Department of Computer Science, Lund University Box 118.
NC STATE UNIVERSITY 1 Feedback EDF Scheduling w/ Async. DVS Switching on the IBM Embedded PowerPC 405 LP Frank Mueller North Carolina State University,
F A S T Frequency-Aware Static Timing Analysis
1 Real-Time Scheduling. 2Today Operating System task scheduling –Traditional (non-real-time) scheduling –Real-time scheduling.
CSCI1600: Embedded and Real Time Software Lecture 24: Real Time Scheduling II Steven Reiss, Fall 2015.
CSCI1600: Embedded and Real Time Software Lecture 33: Worst Case Execution Time Steven Reiss, Fall 2015.
XI HE Computing and Information Science Rochester Institute of Technology Rochester, NY USA Rochester Institute of Technology Service.
Power Aware Real-time Systems A joint project with profs Daniel Mosse Bruce Childers Mootaz Elnozahy (IBM Austin) And students Nevine Abougazaleh Cosmin.
Yifan Zhu, Frank Mueller North Carolina State University Center for Efficient, Secure and Reliable Computing DVSleak: Combining Leakage Reduction and Voltage.
Xi He Golisano College of Computing and Information Sciences Rochester Institute of Technology Rochester, NY THERMAL-AWARE RESOURCE.
Workload Clustering for Increasing Energy Savings on Embedded MPSoCs S. H. K. Narayanan, O. Ozturk, M. Kandemir, M. Karakoy.
CprE 458/558: Real-Time Systems (G. Manimaran)1 CprE 458/558: Real-Time Systems Energy-aware QoS packet scheduling.
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.
Distributed Process Scheduling- Real Time Scheduling Csc8320(Fall 2013)
Embedded System Scheduling
Babak Sorkhpour, Prof. Roman Obermaisser, Ayman Murshed
EE5900 Cyber-Physical Systems
CprE 458/558: Real-Time Systems
Flavius Gruian < >
CSCI1600: Embedded and Real Time Software
FAST: Frequency-Aware Static Timing Analysis
CSCI1600: Embedded and Real Time Software
Research Topics Embedded, Real-time, Sensor Systems Frank Mueller moss
Presentation transcript:

CprE 458/558: Real-Time Systems (G. Manimaran)1 Energy Aware Real Time Systems - Scheduling algorithms Acknowledgement: G. Sudha Anil Kumar Real Time Computing and Networking Laboratory Department of Electrical and Computer Engineering Iowa State University

CprE 458/558: Real-Time Systems (G. Manimaran)2 Important Facts (2) Processors are based on CMOS logic -- Static power + Dynamic power Dynamic power (due to switching activity) P α V 2. f V α f V: voltage; P: power; E: Energy E = P * Tcc Tcc = CC/f E i = K.cc i. f 2 Where Tcc : execution time; CC i : # clock cycles of task T i. f : frequency at which T i is run.

CprE 458/558: Real-Time Systems (G. Manimaran)3 Dynamic Voltage Scaling (DVS) DVS scales the operating voltage of the processor along with the frequency. Since energy is proportional to f 2, DVS can potentially provide significant energy savings through frequency and voltage scaling.

CprE 458/558: Real-Time Systems (G. Manimaran)4 Simple DVS-Scheme DVS Next task Over loaded Under loaded f = F/2 f = F Task queue system

CprE 458/558: Real-Time Systems (G. Manimaran)5 DVS-example Consider a task with a computation time 20 units. Energy of T i without DVS: –E1 = K * 20 * F 2. Energy of T i with DVS: –E2 = K * 20 * (F/2) 2. Clearly, E2 = (E1)/4 Time taken = t1 (say) Time taken = t2 = 2 * t1 Therefore, if we reduce the frequency we save energy but, we spend more time in performing the same computation

CprE 458/558: Real-Time Systems (G. Manimaran)6 Energy-Time Tradeoffs Time Energy Savings

CprE 458/558: Real-Time Systems (G. Manimaran)7 Simple DVS scheme handling RT-task Consider a real-time task T1 = (20, 30) Applying the simple DVS scheme discussed earlier: –If there is peak load T1 runs at maximum frequency (F) and meets the deadline with no energy savings –It there is less load T1 runs at half the maximum frequency (F/2) and completes at time = 40 thereby missing its deadline

CprE 458/558: Real-Time Systems (G. Manimaran)8 Simple DVS scheme handling RT-task Frequency F 2030 time Frequency F 20 F/2 40time No DVS DVS: Low workload Inference: DVS cannot be blindly applied to real-time embedded systems

CprE 458/558: Real-Time Systems (G. Manimaran)9 Energy aware scheduling in RT Systems  Objectives:  Minimizing energy consumption  Meeting the deadlines.

CprE 458/558: Real-Time Systems (G. Manimaran)10 Energy aware RTS Techniques OS Level Energy Management –The operating voltage/frequency decisions are made at scheduling phase –The operating voltage is decided at every task release and task completion –These schemes are also known as Inter-task schemes Compiler Level Energy Management –The operating voltage/frequency decisions are made at the compile time –The operating voltage is decided at the basic block level –These schemes are also known as Intra-task schemes

CprE 458/558: Real-Time Systems (G. Manimaran)11 Real Time - DVS schemes  The RT-DVS algorithms can be broadly classified based on the granularity at which voltage scheduling is performed as follows: T1T1 T2 T3  Inter-task DVS scheme: Voltage scheduling is done on a task by task basis.  Intra-task DVS scheme: Voltage scheduling is done within a task boundary T1…T1… T2… …T 1 T3 …T2 Voltage scheduling points

CprE 458/558: Real-Time Systems (G. Manimaran)12 OS level energy management: Inter-task EDF Static voltage scaling EDF Cycle conserving RT-DVS Look-Ahead RT-DVS

CprE 458/558: Real-Time Systems (G. Manimaran)13 Static Voltage Scaling EDF: Motivation wc1wc2wc3wc4 Holes in the pre-run schedule imply: EDF Test: ∑(wc i /p i ) < 1 at frequency = F max In other words, whenever ∑(wc i /p i ) < 1 there are holes in the EDF schedule Next arrival of T1 Pre-run schedule with holes WC i = worst case computation F max

CprE 458/558: Real-Time Systems (G. Manimaran)14 Static Voltage Scaling EDF: exploiting holes wc1wc2wc3wc4 Next arrival of T1 Pre-run schedule with holes WC i = worst case computation F max Processor typically idles during holes. Instead, the holes can be exploited to slowdown the processor to save energy

CprE 458/558: Real-Time Systems (G. Manimaran)15 Static Voltage Scaling EDF wc1wc2wc3wc4 K*wc1K *wc2K * wc3K * wc4 EDF Test: ∑(wc i /p i ) < 1 at maximum frequency = F max Static-VS EDF Test: K* [∑(wc i /p i )] = 1 at frequency = F max /K Next arrival of T1

CprE 458/558: Real-Time Systems (G. Manimaran)16 Static voltage scaling: Example Task set: T1 = (1, 4) and T2 = (2, 8) U = 1/4 + 2/8 = 0.5 (< F max What is the “k” at which the task set is still (F max / k): –Let K = x –U = (1*x)/4 + (2*x)/8 = x*(0.5) = 1 –X = 2, that is k = 2 –Therefore, we can operate at f = F max / 2 and still meet the deadlines

CprE 458/558: Real-Time Systems (G. Manimaran)17 Static voltage scaling: Example Task set: T1 = (1, 4) and T2 = (2, 8) U = 1/4 + 2/8 = 0.5 (< Fmax Frequency FmFm Time Finding the right frequency scaling parameter (say, k) U = (1*k)/4 + (2*k)/8 = 0.5*k = (F max /k) This gives, k = 2. Therefore, operating frequency = F max /2

CprE 458/558: Real-Time Systems (G. Manimaran)18 Static voltage scaling: Example Modified Task (Fmax/2): T1 = (2, 4) and T2 = (4, 8) U = 2/4 + 4/8 = (Fmax/2) Frequency FmFm Time Frequency FmFm Time F m / 2 Energy consumption: 1*F^2 + 2*F^2 = 3F^2 Energy consumption: 1*(F/2)^2 + 2*(F/2)^2 = (¾)F^2

CprE 458/558: Real-Time Systems (G. Manimaran)19 What if (C i < WC i )?? K*c1K *c2K * c3K * c4 Next arrival of T1 More holes left unexploited Actual computatio n time

CprE 458/558: Real-Time Systems (G. Manimaran)20 What if (C i < WC i )?? K*c1K *wc2K * wc3K * wc4 Next arrival of T1 Actual computatio n time Task T1 completes Slow down all these tasks proportionally Hole of size = (wc1 – c1)

CprE 458/558: Real-Time Systems (G. Manimaran)21 What if (C i < WC i )?? (contd..) K*c1 K’ *wc2K’ * wc3K’ * wc4 Next arrival of T1 CPU Cycles are conserved by slowing down the remaining tasks

CprE 458/558: Real-Time Systems (G. Manimaran)22 Cycle conserving EDF: Example Task set: T1 = (3, 6) and T2 = (6, 12) U = 3/6 + 6/12 = F max What is the “k” at which the task set is still (F max / k): –Let K = x –U = (3*x)/6 + (6*x)/12 = x*(1.0) = 1 –X = 1, that is k = 1 –Therefore, we should operate at f = F max in order to meet all the deadlines

CprE 458/558: Real-Time Systems (G. Manimaran)23 Cycle conserving EDF: Example Task (Fmax): T1 = (3,6) and T2 = (6,12) U = 3/6 + 6/12 = (Fmax) T Frequency FmFm Time T2T1 12 T Frequency FmFm Time T2T1 12 Task T1 just completes in one unit creating holes

CprE 458/558: Real-Time Systems (G. Manimaran)24 Static voltage scaling: Example Task (Fmax): T1 = (3,6) and T2 = (6,12) U = 3/6 + 6/12 = (Fmax) T Frequency FmFm Time T2T1 12 Task T1 just completes in one unit creating holes New utilization = 1/6 + 6/12 = 0.67 Finding the right “k” (1*k)/6 + (6*k)/12 = 1 K = (1/0.67) New freq = (0.67) Fmax

CprE 458/558: Real-Time Systems (G. Manimaran)25 Cycle conserving EDF: Example Task (Fmax): T1 = (3,6) and T2 = (6,12) U = 3/6 + 6/12 = (Fmax) T Frequency FmFm Time T2 12 New utilization = 1/6 + 6/12 = 0.67 Finding the right “k” (1*k)/6 + (6*k)/12 = 1 K = (1/0.67) New freq = (0.67) Fmax T Frequency FmFm Time T2T1 12 Task T1 just completes in one unit creating holes

CprE 458/558: Real-Time Systems (G. Manimaran)26 Cycle Conserving EDF

CprE 458/558: Real-Time Systems (G. Manimaran)27 Look-Ahead EDF Defer as much work as possible. Sets the operating frequency to meet the minimum work that must be done now to ensure all future deadlines to be met. We are not covering this algorithm in detail. But, we encourage students to look into the reference [1].

CprE 458/558: Real-Time Systems (G. Manimaran)28 Relative performance schemes Energy savings Look Ahead EDF Cycle Conserving EDF Static Voltage Scaling EDF

CprE 458/558: Real-Time Systems (G. Manimaran)29 Compiler Level Energy Management Intra-task DVS: adjusts the voltage and clock speed within a task. Identifies the slack time generated within a task due to workload variation. Application code is preprocessed to enable the run-time clock/voltage adjustment.

CprE 458/558: Real-Time Systems (G. Manimaran)30 Compiler level energy optimization framework Compiler Task’s code Modified Task’s code Scheduler Add voltage Scheduling instructions

CprE 458/558: Real-Time Systems (G. Manimaran)31 Intra-task Voltage Scheduling (Why..) Inter task voltage scheduling: run- calculate-assign-run Requires OS modification Not suitable for ‘single task’ systems When the execution time of one task dominates total execution time, inter-task voltage scheduling may not be effective.

CprE 458/558: Real-Time Systems (G. Manimaran)32 Intra-task Voltage Scheduling (What..) Exploits all the slack time from runtime variations of different execution paths Voltage scaling decisions are made at compile time !!

CprE 458/558: Real-Time Systems (G. Manimaran)33 Different paths P1: B1, B2. P2: B1, B3, B4. P3: B1, B3, B5. B2 Intra-task DVS B1 B3 B4 B5 Deadline = 200 Voltage scheduling points Intra-task RT-DVS Intra-task DVS algorithms typically work with the control flow graph (CFG) of the real-time programs. Each node in the CFG denotes a basic block of computation. The edges in the CFG indicate the control dependency between the blocks. Objective is to assign proper clock frequency to each of the basic blocks so as to minimize the total energy consumption while meeting the task deadline.

CprE 458/558: Real-Time Systems (G. Manimaran)34 Simple Intra-task DVS: example B B1 B3 Deadline = 40 Fmax 40 Fmax At time = 20, We know the exact branch 30

CprE 458/558: Real-Time Systems (G. Manimaran)35 Simple Intra-task DVS: example B B1 B3 Deadline = 40 Fmax Fmax At time = 20, We know the exact branch

CprE 458/558: Real-Time Systems (G. Manimaran)36 Different paths P1: B1, B2. P2: B1, B3, B4. P3: B1, B3, B5. B2 Worst Case Execution Time (WCET) based scheme B1 B3 B4 B5 Deadline = 200 [150][10] [160] [20] [180] F1 =[ 180/(200 – t) * Fm] F3 =[ 160/(200 – t) * Fm]F2 =[ 20/(200 – t) * Fm] F5 =[ 150/(200 – t)* Fm] F4 =[ 10/(200 – t)* Fm] t = current time

CprE 458/558: Real-Time Systems (G. Manimaran)37 Conclusions RT-DVS schemes are designed to ensure predictability while saving as much energy as possible in real time systems. Related issues: - Cross-layer algorithms -Communication power management Other power management techniques –Dynamic Power Management (DPM) - processor –Dynamic Modulation Scaling (DMS) - radio

CprE 458/558: Real-Time Systems (G. Manimaran)38 References Power reduction techniques for microprocessor systems Vasanth Venkatachalam, Michael Franz, ACM Computing Surveys (CSUR), Volume 37 Issue 3, Sept Power reduction techniques for microprocessor systems Power management for energy-aware communication systems, ACM Transactions on Embedded Computing Systems (TECS), Volume 2, Issue 3 (August 2003), Pages: [1] Real-Time Dynamic voltage scaling for Low-Power Embedded Operating Systems, P. Pillai and K. G. Shin, in ACM SOSP, pages , [2] Intra-task Voltage Scheduling on DVS-Enabled Hard Real-Time Systems, D. Shin and J. kim, IEEE Design and Test of Computers, March [3] Enhanced fixed-priority scheduling with (m,k)-firm guarantee, G. Quan and X. ( Sharon ) Hu IEEE Real-Time Systems Symposium, pp 79-88, 2000.