1 / 51

Using (m,k)-Guarantees in DVS Real-Time Systems

Using (m,k)-Guarantees in DVS Real-Time Systems. Julie A. Rursch CprE 545 March 29, 2007. DVS. Dynamic Voltage Scaling Reduce voltage Reduce energy consumption Increase amount of time to process Still make deadlines for tasks

cuyler
Download Presentation

Using (m,k)-Guarantees in DVS Real-Time 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. Using (m,k)-Guarantees in DVS Real-Time Systems Julie A. Rursch CprE 545 March 29, 2007

  2. DVS • Dynamic Voltage Scaling • Reduce voltage • Reduce energy consumption • Increase amount of time to process • Still make deadlines for tasks • Takes advantage of slack or early completion of instances to reduce the processor voltage

  3. Why DVS? • World is moving to portable environment • Run off batteries • Limited amount of energy in battery • Some studies talk about judicious use of this limited energy over “mission time” • Reduce voltage, gain energy savings • Daily • NASA-style

  4. Today’s Presentation • Using (m,k)-guarantee with DVS • NP-hard problem • Two similar papers to be discussed • “Energy-Constrained Scheduling for Weakly-Hard Real-Time Systems” • “A Hybrid Static/Dynamic DVS Scheduling for Real-time Systems with (m,k)-Guarantee”

  5. Basic Concepts • (m,k)-firm • m out of k instances of a periodic task meet their deadline • m number of tasks is called mandatory • k – m number of tasks is called optional • QoS concept for real-time systems • When (m,k)-guarantees missed system goes into dynamic failure

  6. Basic Concepts, Continued • Patterns for determining which tasks are mandatory and which are optional • E-pattern • Evenly spaced mandatory task instances throughout k instances • R-pattern (deeply red) • First m instances are mandatory • Next k – m instances are optional • E pattern easier to schedule than R-pattern

  7. Basic Concepts, Continued • ER-pattern • Reversed evenly spaced E-pattern • Horizontally reversed

  8. Overall Problem Statement • Find a way to • chose the mandatory jobs, • schedule them • and select the most beneficial running speed

  9. “Weakly-Hard” RT Systems • Motivated by observation that many real-time systems can stand occasional deadline misses • Used this concept and apply it to energy aware systems • Audio, video, multimedia, RT communications work well under (m,k)-firm deadlines

  10. Goals of Their Paper • Compute a safe CPU speed to complete all mandatory jobs before their deadlines • Apply dynamic (on-line) speed adjustment techniques to reclaim slack time of skipped and completed jobs

  11. Their DVS Algorithm • Uses EDF scheduling policy • Pre-emptive scheduling technique • Inter-task DVS model (only change CPU speed at task completion or preemption points) • Utilizes R-pattern (deeply-red) • Therefore, mandatory jobs executed early in schedule

  12. Early completions of mandatory jobs provide slack that can be reclaimed to reduce the CPU speed for subsequent jobs

  13. DFR • Use the dynamic failure ratio (DFR) to measure system performance n DFR =  wiDFi /DFmax i=1 • DFi for specific task • DFmax for all tasks – total failures allowed • Weight can be used if need to indicate the impact of a specific task miss on overall system performance

  14. Greedy Schemes • Set mandatory workload a priori • Try to minimize dynamic failures on-line • Select all mandatory jobs of all tasks for execution to meet (m,k)-constraints

  15. Must compute a global nominal speed for all tasks • Safe nominal speed is to assume all tasks including optional ones will be executed • Other alternatives

  16. Example • S = all Ui, in this example S = 1.0

  17. Example • Select all mandatory jobs and schedule them according to the R-pattern • Maximum number of dynamic failures (number of failures experienced during same interval) is 7 • (0 + 1 + 5 + 1) • Total energy consumption is 33 • (6 + 9 + 18)

  18. Example • Get this schedule

  19. If there is only 23 units (68%) instead of 33, then task T31 and T21 execute but T11 fails. • If use the slack time from T32, which gets skipped, then reduce the CPU speed at which T21 executes • Same for T11

  20. Schedule Using Slack Time • Reclamation algorithm is DRA-OTE

  21. This type of slack reclamation is possible even if all selected mandatory jobs run at worst-case execution time • Why? We can skip all the optional jobs

  22. A Lower Nominal Speed? • Using knowledge that optional jobs are skipped, can we start with a lower nominal speed in the static analysis? • Need the processor demand • The summation of the computation times for number of mandatory jobs released after time 1 and having deadlines ≤ time 2

  23. Toward Lower Nominal Speed • Workload maximum at [0,30] • Processor Demand D(0,30) =21 • 6 + 9 + 6 • Speed = 21/30 = .7

  24. Toward Lower Nominal Speed • Allows all to run with energy as low as 16.49 (50% of original 33)

  25. Additional gains can be made through mandatory jobs completing earlier than their worst case execution times • In other words, there’s still slack to be gained here

  26. Energy Density Schemes • Energy density schemes prioritize mandatory jobs by energy cost and contribution to overall system performance metric • Remember, greedy schemes do not consider energy budget – assumes all mandatory jobs will be run

  27. Calculate Energy Density • EDi = Ei / wi DFimax • Ei - energy of the mandatory instances of task • wi - weight to indicate the relative impact of the task’s dynamic failures on overall system performance • DFimax - number of dynamic failures for the task

  28. Their Energy Density Algo • Sort tasks by ED • Start with mandatory jobs of the tasks of lowest ED • Keep adding tasks until energy budget is depleted. • At every step have to calculate nominal speed based upon subset of tasks

  29. Sharply contrasts with first greedy scheme where entire mandatory task set considered when first selecting nominal speed • Now “selected” mandatory workload • Can use slack times from instances included in subset

  30. If enough excess energy accumulated at run-time due to dynamic CPU slow down, additional mandatory instances included • Called job promotion • Promotion only at start of new hyperperiod • Recalculate nominal speed for new subset

  31. Greedy Scheme Results • Compared four different greedy schemes, to distance based scheduling (not energy aware = carefully select nominal speed) • Under worst case execution time • Best schemes set nominal speed based on skipping optional jobs • Under “actual” workload where could reclaim • Reclamation more important than nominal speed

  32. Energy Density Scheme Results • Four energy density schemes and best greedy scheme (nominal speed by skipping optionals, used reclaiming) • Under worst case workloads • Of course, all energy density much better than greedy scheme • Nominal speed calculated based upon utilization of processor better than utilization of selected tasks

  33. Energy Density Scheme Results • Under “actual” workload • Use of low nominal speed more significant than use of reclamation • Overall claim – use energy density algorithms when system is significantly energy constrained

  34. Static/Dynamic RT DVS • Statically set schedule • Advantage • Schedulability check done off-line • Easier to guarantee QoS • Disadvantage • Dynamic nature of RT so potentially more energy savings opportunities

  35. Static/Dynamic RT DVS • Dynamically set schedule • Advantage • Utilize system resources more efficiently • Disadvantage • Ensuring schedulability/QoS

  36. Hybrid Approach Proposed • Mandatory jobs sets statically determined, but dynamically updated at run-time • Utilize a dual priority scheduler designed to determine mandatory/optional and the corresponding processor speed

  37. Use EDF scheduling algorithm • Use three job queues – explained later • Because an optional job may run at the lower speed and meet its deadline, running a mandatory job at a higher speed may become unnecessary. Their problem then was how to dynamically update the pattern of (m,k)-constraints

  38. How to find those patterns? • Argued that E-patterns may allow schedulability to degrade significantly if a large greatest common divisor (gcd) exists – all jobs will have same arrival time • In E-patterns, first job is always mandatory

  39. They modified E-pattern by basically flipping bits (reversing E-pattern horizontally) • 0 when E-pattern gives 1 • 1 when E-pattern gives 0 • Called ER-pattern or reverse evenly distributed pattern • If schedule under E, also ER schedule

  40. Static Partitioning

  41. Dynamic Partitioning Note: Delays the mandatory job

  42. Off-line Processor Speed • One processor speed is assigned to each task off-line to start • Computes worst case response time to be used in on-line phase

  43. On-line Processor Speed • Adopt dual priority scheduling • Three job queues • High mandatory queue (HMQ) • Highest priority, uses EDF • Use speed calculated off-line • Optional queue (OPQ) • Middle priority • Low mandatory queue (LMQ) • Always use lowest possible speed

  44. At arrival job is determined to be mandatory or optional based upon its current ER-pattern • Optional jobs go in OPQ • Mandatory jobs go in LMQ and promoted to HMQ after promotion time • fixed time offset (deadline – response time)

  45. If HMQ not empty then Run jobs in HMQ use EDF Else if OPQ not empty then Select the jobs with max energy savings If job completes by deadline Restart ER-pattern End if If no more jobs Run jobs in LMQ End if Else Run jobs in LMQ End if

  46. Their algorithm adjusts mandatory/optional partition adaptively with run-time conditions • Can exploit reclamation to further reduce energy consumption

  47. Results for Hybrid • Four approaches • E-pattern with highest processor speed • E-pattern with processor slow down • R-pattern (deeply red) • Hybrid based on ER-pattern • Hybrid approach 55% energy savings over static 1, 40% over approach 2 • QoS guarantee of ER better than R

  48. My Project • Different type of energy savings technique • Dynamic Power Management • Transitions components and peripherals to low-power states • (active, idle, standby, off) • Work has been done to combine DVS and DPM, but not include QoS guarantees • Uses DVS in the active machine state

  49. References L. Niu, G. Quan. “A Hybrid Static/Dynamic DVS Scheduling for Real-time Systems with (m,k)-Guarantee,” 26th IEEE International Real-Time Systems Symposium, 2005. December 5-8, 2005. T. AlEnawy, H. Aydin. “Energy-Constrained Scheduling for Weakly-Hard Real-Time Systems,” 26th IEEE International Real-Time Systems Symposium, 2005. December 5-8, 2005. G. Quan, X. Hu. “Enhanced Fixed-Priority Scheduling with (m,k)-Firm Guarantee,” Proceedings of the 21st IEEE Real-Time Systems Symposium, 2000. November 27-30, 2000, pages 79-88. L. Niu, G. Quan. “Energy Minimization for Real-Time Systems with (m,k)-Guarantee,” IEEE Transactions on Very Large Scale Integration (VLSI) Systems, Vol. 14, No. 7, July 2006, pages 717-729.

  50. N. Jha. “Low-Power System Scheduling, Synthesis and Displays,” IEE Proceedings of Computers and Digital Techniques, Vol. 152, Issue 3, May 6, 2005, pages 344-352. N. Jha. “Low Power System Scheduling and Synthsis,” IEEE/ACM International Conference on Computer Aided Design, 2001, November 4-8, 2001, pages 259-263. V. Raghunathan, C. Pereira, M. Srivastava, R. Gupta. “Energy-Aware Wireless Systems with Adaptive Power-Fidelity Tradeoffs,” IEEE Transactions on Very Large Scale Integration (VLSI) Systems, Vol. 13, No. 2, February 2005, pages 211-225. T. Simunic, L. Benini, A. Acquaviva, P. Glynn, G. DeMichell. “Dynamic Voltage Scaling and Power Management for Portable Systems,” Proceedings of Design Automation Conference, 2001, pages 524-529.

More Related