1 / 47

Energy Efficient Scheduling Techniques For Real-Time Embedded Systems

Energy Efficient Scheduling Techniques For Real-Time Embedded Systems. Rabi Mahapatra. Outline. Introduction Motivation Related Work Single Processor Systems Distributed Multiprocessor Systems Experiments & Results Summary. Introduction. Sample Embedded Systems.

hchristie
Télécharger la présentation

Energy Efficient Scheduling Techniques For Real-Time Embedded Systems

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Energy Efficient Scheduling Techniques For Real-Time Embedded Systems Rabi Mahapatra

  2. Outline • Introduction • Motivation • Related Work • Single Processor Systems • Distributed Multiprocessor Systems • Experiments & Results • Summary

  3. Introduction Sample Embedded Systems audio/video entertainment devices robots Handheld computer PDA Mobile Phone Network Camera Wireless presentation Gateway Cerfcube

  4. t1 t5 t2 t3 Sporadic Task, Deadline =30 t4 Period =90, Deadline =90 Typical Input Specification of Embedded Systems Application Specification for Embedded Systems • Periodic Task graphs • Each task characterized by: • Period • Execution time • Deadline • Sporadic Tasks • Invoked at any time • Hard deadline • Soft Aperiodic • Invoked at any time • No deadline

  5. 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. Power Management • Processor power dissipation is a function of α . Cl . V2dd . f • Various Low-Power Techniques • System-Level • Architecture-Level • Circuit-Level • System-Level power reduction techniques: • Dynamic Voltage Scaling • Dynamic Power Management

  7. System Level Power Management Taxonomy SLPM – System Level Power Management DPM – Dynamic Power Management LPS – Low power Scheduling

  8. System Level Power Management Taxonomy (contd …)

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

  11. 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. Energy Efficient Scheduling Techniques for Single Processor

  13. 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. 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. STEP 1 : Priority Assignment Arrange the task graphs & EX. Slots in increasing order Of their period Remove the task graph with smallest period no no If all nodes in the Graph are Assigned priorities Assign the node next highest priority yes List is empty yes Remove the node with no Predecessor and least slack time END

  16. STEP 2 : Task Speed Determination 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 Find the task with largest speed, ‘s’. Mark the speed for this task and all other high priority tasks as ‘s’ Remove all these tasks from the list no List is empty END yes

  17. Task Schedulability • Let  = {T1,T2,…,TN} be the task set arranged in decreasing order of priorities. • Characteristics of Ti : {Pi, ei, Di}. A task set is feasible if the deadline of all tasks are always met. • 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. In other words, the task set  = {T1,T2,…,TN} is schedulable if and only ti  Di  i =1,..n, where • otherwise ti,j Di,j i =1,..n, and ‘j’ instances of • ti, where ti,j = R(ti,j + (j-1)Pi) – (j-1)Pi , where • R(ti,j) = + j*ei …………… (2) + ei  ti if Pi  Di ………….. (1) Task Schedulability (Contd … )

  19. STEP 2 : Task Speed Determination 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 Find the task with largest speed, ‘s’. Mark the speed for this task and all other high priority tasks as ‘s’ Remove all these tasks from the list List is empty no yes END

  20. 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). 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. 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 • If feasible, put the processor in the power down mode.

  22. Experimental Setup • Event driven simulator • Intel Strong Arm SA-1100 Embedded Processor Specifications • Real-world test cases (CNC controller, INS, avionics,…)

  23. Benchmarks Characteristics of various test cases

  24. % Energy savings Various low power techniques Comparison of % Energy savings with various Low power techniques

  25. % Energy Savings with the proposed technique on various test cases

  26. Energy Efficient Scheduling Techniques for Multi-Processor Embedded Systems

  27. Overview • Preliminaries • System model • Slack distribution heuristic • Periodical determination of service rate • Experiments & Results

  28. 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 • Hard deadlines • Exchange of messages during execution • Admitting task set (Connection establishment) : Key Issues • Traffic descriptor [6] • Worst-case delay analysis • Power Reduction approaches • slack distribution • Clock speed adaptation during system run-time

  29. ≡ PE1 PE2 M1 M2 PE3 System Model • A task set is described by a vector triplet where A distributed system with 3 nodes & 2 task sets

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

  31. 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. 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. Service Rate Determination • Key Issues: • Monitoring the traffic pattern • Feedback incorporation while determining service rate. • Periodical service rate determination • guarantees processing of messages of outstanding intervals by their delay bounds • guarantees processing of messages of upcoming interval by their delay bounds • Scheduling policies considered: FCFS & WRR

  34. The new service rate at the beginning of every interval is determined according to and the corresponding queue is determined according to where k = 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., (dfcfs - j). FCFS Scheduling Policy

  35. 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 WRR Scheduling Policy

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

  37. Benchmarks Characteristics of various test cases

  38. Benchmarks (Contd …) Mode configurations for Multimedia and Synthetic test cases

  39. Energy Saving versus Slack distributation

  40. Energy Saving at different Modes

  41. Service rate at intervals

  42. Service rate vs MI

  43. Overhead due to number of task sets on service

  44. Summary • Energy Efficient Scheduling technique for Single Processor that: • handles Sporadic and periodic task graphs with precedence constraints • takes into account tasks with arbitrary response times • determines minimum speed for each task • 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. • periodically adjusts the clock speed to take advantage of run-time variations. • Experimental results indicate that the proposed techniques yield significant energy savings.

  45. References • 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. • 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. 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. THANK YOU

More Related