Presentation is loading. Please wait.

Presentation is loading. Please wait.

9/23/20151 Energy Efficient Scheduling Techniques For Real-Time Embedded Systems Rabi Mahapatra.

Similar presentations


Presentation on theme: "9/23/20151 Energy Efficient Scheduling Techniques For Real-Time Embedded Systems Rabi Mahapatra."— Presentation transcript:

1 9/23/20151 Energy Efficient Scheduling Techniques For Real-Time Embedded Systems Rabi Mahapatra

2 9/23/20152 Outline Introduction Motivation Related Work Single Processor Systems Distributed Multiprocessor Systems Experiments & Results Summary

3 9/23/20153 Introduction PDA audio/video entertainment devices robotsHandheld computer Mobile Phone Network CameraWireless presentation GatewayCerfcube Sample Embedded Systems

4 9/23/20154 Application Specification for Embedded Systems Application Specification for Embedded Systems Periodic Task graphsPeriodic Task graphs Each task characterized by:Each task characterized by: PeriodPeriod Execution timeExecution time DeadlineDeadline Sporadic TasksSporadic Tasks Invoked at any timeInvoked at any time Hard deadlineHard deadline Soft AperiodicSoft Aperiodic Invoked at any timeInvoked at any time No deadlineNo deadline t1t1 t3t3 t2t2 t4t4 t5t5 Period =90, Deadline =90 Sporadic Task, Deadline =30 Typical Input Specification of Embedded Systems

5 9/23/20155 Why Low Power ?   High Power dissipation causes Chip failures   Expensive Cooling & Packaging overheads   High Manufacturing Costs   Portable Systems, User convenience limited by:   Battery Size   Recharging Interval

6 9/23/20156 Power Management  Processor power dissipation is a function of α. C l. V 2 dd. f  Various Low-Power Techniques System-Level System-Level Architecture-Level Architecture-Level Circuit-Level Circuit-Level  System-Level power reduction techniques: Dynamic Voltage Scaling Dynamic Voltage Scaling Dynamic Power Management Dynamic Power Management

7 9/23/20157 System Level Power Management Taxonomy SLPM DPM Fixed Tasks Single Processor Multiprocessors Variable Tasks Single processor Multiprocessors LPS (DVS) Fixed Task set Single Processor D≤P (contd..) No Restrictions Multiprocessors Tolerance DL Hard Realtime Variable Task set Single Processor Multiprocessors SLPM – System Level Power Management DPM – Dynamic Power Management LPS – Low power Scheduling

8 9/23/20158 System Level Power Management Taxonomy (contd …) D≤P Tolerance DL Hard Real time No Precedence Periodic Periodic + Sporadic With Precedence Periodic Periodic + Sporadic

9 9/23/20159 Our Objective Given Embedded system and its application task graphs with library functions (i.e. period, execution time, Deadline etc.), our goal is to Reduce the system wide power consumption while guaranteeing the deadlines

10 9/23/201510 Related Work Multi-Processor  J.Luo and N.K.Jha, 2001 “Battery-Aware static scheduling” “Battery-Aware static scheduling” Global shifting scheme & local schedule transformationsGlobal shifting scheme & local schedule transformations More suitable to small scale systemsMore suitable to small scale systems  R.Mishra, N.Rastogi, and D.Zhu, 2003 “Energy aware scheduling for distributed” “Energy aware scheduling for distributed” Greedy and gap-filling dynamic power management techniquesGreedy and gap-filling dynamic power management techniques Limited to task graphs with equal deadlineLimited to task graphs with equal deadline  D. Zhu, R. Melhem, and B. Childers, 2003 “Scheduling with Dynamic Voltage/Speed” “Scheduling with Dynamic Voltage/Speed” Slack sharing among processors, global queueSlack sharing among processors, global queue Limited homogenous systems with shared memoryLimited homogenous systems with shared memory Single Processor:  G.Quan, and X. HU, 2001 Minimum constant voltage for each interval Minimum constant voltage for each interval Assumes deadline less than or equal to period. Assumes deadline less than or equal to period.  V.Swaminathan, and K.Chakrabarty, 2000 Low-energy earliest deadline first heuristic Low-energy earliest deadline first heuristic No guarantee on required maximum processor speed No guarantee on required maximum processor speed

11 9/23/201511 Contributions   Provides a framework for single processor that consider tasks Whose response time is greater than the period. With Precedence constraints   Introduced chain of task set based execution approach to model low-power in distributed embedded systems.

12 9/23/201512 Energy Efficient Scheduling Techniques for Single Processor

13 9/23/201513 Proposed Approach “A 3-step approach to reduce power in single processor embedded systems with arbitrary response times and precedence constraints.”   Step1: Task priority assignment that guarantees precedence constraints.   Step 2: Determination of task speed that guarantees deadlines. reduces power consumption.   Step 3: Dynamic power management Idle Intervals. Run-time variations in task execution time.

14 9/23/201514 Task Modeling   Periodic task graphs Scheduled according to their priorities   Sporadic task Invoked at any time Hard deadline Execution slot is needed Let ‘  ’ be the worst-case execution time and ‘d’ be the deadline   Execution Slots are defined with   Period : d -    Deadline: d - 

15 9/23/201515 STEP 1 : Priority Assignment Remove the node with no Predecessor and least slack time END Arrange the task graphs & EX. Slots in increasing order Of their period Remove the task graph with smallest period Assign the node next highest priority If all nodes in the Graph are Assigned priorities no List is empty yes no

16 9/23/201516 STEP 2 : Task Speed Determination yes Find the task with largest speed, ‘s’. Mark the speed for this task and all other high priority tasks as ‘s’ Arrange tasks in decreasing order of priority For each task in the list, determine the speed at which the task and all high priority tasks in the list can be run Remove all these tasks from the list List is empty END no

17 9/23/201517 Task Schedulability   Let  = {T 1,T 2,…,T N } be the task set arranged in decreasing order of priorities.   Characteristics of T i : {P i, e i, D i }. A task set is feasible if the deadline of all tasks are always met.  Critical Instant Theorem (  Critical Instant Theorem ( Liu and Layland, 1973) “Scheduling algorithms for multiprogramming” if a task meets its deadline whenever the task is requested simultaneously with all the high priority tasks, then the deadline will always be met for all task phasing.

18 9/23/201518 In other words, the task set  = {T 1,T 2,…,T N } is schedulable if and only t i  D i  i =1,..n, where otherwise t i,j  D i,j  i =1,..n, and ‘j’ instances of t i, where t i,j = R(t i,j + (j-1)P i ) – (j-1)P i, where R(t i,j ) = + j*e i …………… (2) + e i  t i if P i  D i ………….. (1) Task Schedulability (Contd … )

19 9/23/201519 STEP 2 : Task Speed Determination yes Find the task with largest speed, ‘s’. Mark the speed for this task and all other high priority tasks as ‘s’ Arrange tasks in decreasing order of priority For each task in the list, determine the speed at which the task and all high priority tasks in the list can be run Remove all these tasks from the list List is empty END no

20 9/23/201520 Step 3: Dynamic Power Management  During System operation, idle intervals arise when: Actual task execution time is less than the worst-case execution time. (that is assumed at the time of fixed priority scheduling). Actual task execution time is less than the worst-case execution time. (that is assumed at the time of fixed priority scheduling). Since these Idle intervals can not be exploited by off-line methods.  An on-line method that adapts the clock speed to take advantage of idle intervals is needed.

21 9/23/201521 DPM (Contd..)  Schedule the tasks according to their pre- determined speeds in a preemptive manner.  If the current task has finished and the queue of ready tasks is empty, then: Determine the length of idle interval Determine the length of idle interval If feasible, put the processor in the power down mode. If feasible, put the processor in the power down mode.

22 9/23/201522 Experimental Setup  Event driven simulator  Intel Strong Arm SA-1100 Embedded Processor Specifications  Real-world test cases (CNC controller, INS, avionics,…)

23 9/23/201523Benchmarks Test cases# Periodic task graphs # sporadic tasks # tasks with D > P Utilization Synthetic I3120.52 Synthetic II5340.61 Synthetic III10580.737 CNC [1]8--- 0.488 INS [2]6-----0.72 Avionics [3]141---0.692 Characteristics of various test cases

24 9/23/201524 Various low power techniques % Energy savings Comparison of % Energy savings with various Low power techniques

25 9/23/201525 % Energy Savings with the proposed technique on various test cases

26 9/23/201526 Energy Efficient Scheduling Techniques for Multi-Processor Embedded Systems

27 9/23/201527 Overview  Preliminaries  System model  Slack distribution heuristic  Periodical determination of service rate  Experiments & Results

28 9/23/201528 Preliminaries  Command and control systems that comprise of hard real-time applications in a distributed environment.  An application comprises of: Chain(s) of tasks or Task sets Chain(s) of tasks or Task sets Hard deadlines Hard deadlines Exchange of messages during execution Exchange of messages during execution  Admitting task set (Connection establishment) : Key Issues Traffic descriptor [6] Traffic descriptor [6] Worst-case delay analysis Worst-case delay analysis  Power Reduction approaches slack distribution slack distribution Clock speed adaptation during system run-time Clock speed adaptation during system run-time

29 9/23/201529 System Model  A task set is described by a vector triplet where ≡ ≡ A distributed system with 3 nodes & 2 task sets PE1PE2 PE3 M 1 M 2

30 9/23/201530 Admission of Task Set  Task set admission: Key Phases Setting up task set Setting up task set Reply task set Reply task set  Setting up task set : Key Issues local worst-case delay < local deadline local worst-case delay < local deadline end-to-end worst-case delay < end-to-end deadline end-to-end worst-case delay < end-to-end deadline  Reply task set : Key Issues Slack distribution Slack distribution Service rate < 1 (periodic service rate determination) Service rate < 1 (periodic service rate determination)

31 9/23/201531 Observations   Processing of messages at a node can be extended up to their delay bounds.   This slack can be utilized to increase the worst-case delay tolerable at the computational nodes involved in processing the task set.   The actual processing time demanded by the messages of a task set during the run-time varies and is less than the worst-case specification.   A technique to adapt the clock speed periodically is introduced to take advantage of run-time variations

32 9/23/201532 Slack Distribution  The slack in a task set is the difference between the end- to-end deadline and the sum of the worst-case delays suffered at each node.  This slack can be distributed among the nodes serving task set to reduce the system energy consumption.  The slack is distributed among the nodes according to the service rate of the nodes.

33 9/23/201533 Service Rate Determination  Key Issues: Monitoring the traffic pattern Monitoring the traffic pattern Feedback incorporation while determining service rate. Feedback incorporation while determining service rate. Periodical service rate determination Periodical service rate determination guarantees processing of messages of outstanding intervals by their delay boundsguarantees processing of messages of outstanding intervals by their delay bounds guarantees processing of messages of upcoming interval by their delay boundsguarantees processing of messages of upcoming interval by their delay bounds Scheduling policies considered: FCFS & WRR Scheduling policies considered: FCFS & WRR

34 9/23/201534 FCFS Scheduling Policy and the corresponding queue is determined according to The service rate should be such that it must process the outstanding messages that arrived during the interval (t-j ,t-(j-1)  ) by their remaining delay bound. i.e., (d fcfs - j  ). The new service rate at the beginning of every interval is determined according to where k =

35 9/23/201535 WRR Scheduling Policy The new service rate at the beginning of every interval is determined according to and the corresponding queue is determined according to The service rate and the corresponding processing time demanded by the outstanding messages that arrived during the interval (t-j ,t-(j-1)  ) are given by

36 9/23/201536 Experimental Setup  Event driven simulator  Socket interface for communication  Intel PXA250 XScale Embedded Processor  Real-life test cases (DSP, Multimedia,..)

37 9/23/201537 Benchmarks Test Cases Number Of Nodes Number Of Connections Number Of Modes Synthetic I 3102 Synthetic II 5202 Synthetic III 10303 Multimedia443 DSP [4] 16311 Characteristics of various test cases

38 9/23/201538 Test Cases Mode 1 (nodes, connections) Mode 2 (nodes,connecti ons) Mode 3 (nodes,connectio ns) Synthetic (10,30) (9,20)(9,25)(10,30) Multimedia( 4,4) (3,2)(3,3)(4,4) Mode configurations for Multimedia and Synthetic test cases Benchmarks (Contd …)

39 9/23/201539 Energy Saving versus Slack distributation

40 9/23/201540 Energy Saving at different Modes

41 9/23/201541 Service rate at intervals

42 9/23/201542 Service rate vs MI

43 9/23/201543 Overhead due to number of task sets on service

44 9/23/201544 Summary  Energy Efficient Scheduling technique for Single Processor that: handles Sporadic and periodic task graphs with precedence constraints handles Sporadic and periodic task graphs with precedence constraints takes into account tasks with arbitrary response times takes into account tasks with arbitrary response times determines minimum speed for each task determines minimum speed for each task adapts clock speed to take advantage of idle intervals. adapts clock speed to take advantage of idle intervals.  A connection based task execution approach for distributed embedded systems that: effectively distributes the slack available in the connection to reduce system wide power consumption. effectively distributes the slack available in the connection to reduce system wide power consumption. periodically adjusts the clock speed to take advantage of run-time variations. periodically adjusts the clock speed to take advantage of run-time variations.  Experimental results indicate that the proposed techniques yield significant energy savings.

45 9/23/201545 References 1. 1.N. Kim, M. Ryu, S. Hong, M. Saksena, C. Choi, and H. Shin, “Visual assessment of a real time system design: A case study on a CNC controller,” in Proc. IEEE Real-Time Systems Symposium, December. 1996. 2. 2.A. Burns, K. Tindell, and A. Wellings, “Effective analysis for engineering real-time fixed priority schedulers,” IEEE Trans. on Software Eng., vol. 21, no. 5, pp. 475–480, May 1995. 3.C. Locke, D. Vogel, and T. Mesler, “Building a predictable avionics platform in Ada: A casestudy,” in Proc. IEEE Real-Time Systems Symposium, December. 1991. 4. C. M. Woodside and G. G. Monforton, “Fast allocation of processes in distributed and parallel systems,” Proc. IEEE Trans. Parallel & Distr. Systems., vol. 4, no. 2, pp. 164-174, Feb. 1993.

46 9/23/201546 References (Contd..) 5. G.Quan, and X.Hu, “Energy efficient fixed priority scheduling for real-time systems on variable voltage processors,” In Proc. Design Automation Conference, June 2001. 6. A.Raha, N.Malcom, and W.Zhao, “Guaranteeing end-to-end deadlines in ATM networks,” In Proc. International conference on Distributed Computing Systems, May 1995.

47 9/23/201547 THANK YOU


Download ppt "9/23/20151 Energy Efficient Scheduling Techniques For Real-Time Embedded Systems Rabi Mahapatra."

Similar presentations


Ads by Google