570 likes | 704 Views
Introductory Seminar on Research CIS5935 Fall 2009. Ted Baker. Outline. Introduction to myself My past & current research areas Technical background for the remainder A recent paper, on Sustainable MP Scheduling What is it? Why do I want it? How do I get it?
E N D
Outline • Introduction to myself • My past & current research areas • Technical background for the remainder • A recent paper, on Sustainable MP Scheduling • What is it? • Why do I want it? • How do I get it? • Sustainability of specific algorithms & tests
My past research • Relative computability • Relativizations of the P=NP? question (1975-1979) • Algorithms • N-dim pattern matching (1978) • extended LR parsing (1981) • Compilers & PL implementation • Ada compiler and runtime systems (1979-1998) • Real-time runtime systems, multi-threading • FSU Pthreads & other RT OS projects (1985-1998) • Real-time scheduling & synch. • Stack Resource Protocol (1991) • Deadline Sporadic Server (1995) • RT Software standards • POSIX, Ada (1987-1999)
Recent/current research • Multiprocessor real-time scheduling (1998-…) • how to guarantee deadlines for task systems scheduled on multiprocessors? with M. Cirinei & M. Bertogna (Pisa), N. Fisher & S. Baruah (UNC) • Real-time device drivers (2006-…) • how to support schedulability analysis with an operating system? • how to get predictable I/O response times? with A. Wang & Mark Stanovich (FSU)
Background • Real-time scheduling goals & problems • Workload models • Scheduling algorithms & tests
Real-time scheduling Context = embedded systems, controllers Problems = • How to schedule a computational workload to meet timing constraints? (deadlines) • How to do this while meeting other constraints and goals? (energy, fault tolerance, etc.) • How to guarantee constraints will always be met, in the face of workload variations
Typical quality questions • Is a given system schedulable to meet deadlines? • Is a given system schedulable by a given algorithm? • If deadlines are missed, by how much? • How good is a given algorithm at finding a feasible schedule? • How sensitive is a schedulability guarantee to variations in parameters?
Workload models • job = schedulable unit of computation, with • arrival time • worst-case execution time (WCET) • deadline • task = sequence of jobs • task system = set of tasks • independent tasks: can be scheduled without consideration of interactions, precedence, coordination, etc.
Example: sporadic task i • Ti = minimum inter-arrival time • Ci = worst-case execution time • Di = relative deadline job completes deadline job released next release scheduling window
Multiprocessor scheduling • m identical processors (vs. uniform/hetero.) • shared memory (vs. distributed) • Kinds of algorithms: • preemptive vs. non-preemptive • on-line vs. off-line • global vs. partitioned
Optimality • There is no optimal on-line global scheduling algorithm for sporadic tasks [Fisher, 2007] • But there are some good algorithms
Some good scheduling algorithms • Fixed task-priority • global, or partitioned, hybrids, … • EDF • global or partitioned, hybrids, … • EDZL…
Example: Global EDF • m identical processors • global = • jobs can run on any processor • can be preempted, and migrated • EDF = “earliest deadline first” • earlier deadline implies higher priority • the top m jobs will execute • no processor is idle unless there are fewer than m jobs ready to run
Schedulability testing Global-EDF schedulability for sporadic task systems can be decided by brute-force state-space enumeration (in exponential time) [Baker, OPODIS 2007] but we don’t have any practical algorithm. We do have several practical sufficient conditions.
Sufficient Conditions for Global EDF • Varying degrees of complexity and accuracy • Examples: • Goossens, Funk, Baruah: density test (2003) • Baker: analysis of -busy interval (2003) • Bertogna, Cirinei: iterative slack time estimation (2007) • Difficult to compare quality, except by experimentation • All tests are very conservative
Example: Density Test Sporadic task system is schedulable on m unit-capacity processors if where
My recent researchon Sustainable Schedulabilty done with Sanjoy Baruah (UNC) presented by T. Baker at ECRTS July 2009 Dublin
General schedulability testing Will a will workload W meet all deadlines ifscheduled by algorithm A on platform P? exact test : “yes” ⇔ schedulable sufficient test : “yes” ⇒schedulable Goal: validate timing propertieson which correctness, reliability, safety depend. ECRTS 2009 (Dublin) - Ted Baker
Potential weakness • Real systems differ from models • clock and timer inaccuracies • blocking/non-preemption • execution time variation • Differences must not invalidate test • Solution: • pessimistic assumptions ECRTS 2009 (Dublin) - Ted Baker
What is pessimistic? • Should cover full range of possibilities. • How to validate over such a range? • People tend to assume system behavior is monotonic, and rely on boundary testing. • This can be dangerous. • For example, does WCET of individual jobs give worst-case behavior of the entire system? ECRTS 2009 (Dublin) - Ted Baker
Goals • Our notions of “pessimistic” should be consistent with the analysis that underlies the schedulability test. • The test should be monotonic with respect to any workload parameters that are considered to be bounds on actual values. ECRTS 2009 (Dublin) - Ted Baker
Predictability(Ha & Liu 1994) • For arbitrary job sets on multiprocessors, if scheduling algorithm is work-preserving, preemptive, global (migration), with fixed job priorities: • Job completions times are monotonically related to job execution times. • It is safe to consider only upper bounds for job execution times in schedulability tests. • Not true for non-preemptive scheduling ECRTS 2009 (Dublin) - Ted Baker
Sustainabilty(Baruah & Burns 2006) • Extends idea to a wider range of relaxations of workload parameters: • shorter execution times • longer periods • less release-time jitter • later deadlines • Relaxation should preserve schedulability • They considered single-processor systems • We consider multiprocessors ECRTS 2009 (Dublin) - Ted Baker
Why to relax? • Safety • Run-time behavior may fall short of pessimistic model parameters. • Modular design • Start with pessimistic parameters, relax as design evolves. • Efficiency • Revise estimates at job arrival, schedule more precisely. ECRTS 2009 (Dublin) - Ted Baker
How? • Actual/nominal? • actual max. job exec. time < Ci, or • value Ci used by scheduler is reduced • Per job/task? • Ci reduced differently for each job, or • Ci reduced for all jobs of task • Use in scheduling decisions, or not? These may or may not make a difference in sustainability, depending on context. ECRTS 2009 (Dublin) - Ted Baker
Getting specific • Sustainability depends on the platform and workload model as well as the scheduling algorithm. • Platform : SMP • Workload model : sporadic task set • Scheduling algorithms : global FTP, EDF, EDZL ECRTS 2009 (Dublin) - Ted Baker
SMP Platform • m identical processors • bounded cost for migration, context switch ECRTS 2009 (Dublin) - Ted Baker
Sporadic task workload • fixed set of tasks • each generates a sequence of jobs • each job of a task has parameters: • exec. time • Ci is an upper bound • inter-arrival time • Ti is a lower bound • deadline, relative to arrival time, Di ECRTS 2009 (Dublin) - Ted Baker
Where is pessimism? • Ti : lower bound • Ci : upper bound • Di : lower bound? So sustainability means allowing for the following relaxations: • Longer inter-arrival times • Shorter execution times • Longer deadlines ECRTS 2009 (Dublin) - Ted Baker
Global Scheduling • Fixed Task Priority (FTP):m tasks with highest task priority allowed to execute • EDF:m jobs with earliest deadlines allowed to execute • EDZL:same, except jobs with zero laxity preempt laxity = remaining-time-to-deadline – remaining-WCET Common property: Limit of one (or 2, for EDZL) preemption per job allows us to bundle worst-case preemption/migration overhead into WCET of jobs ECRTS 2009 (Dublin) - Ted Baker
Longer inter-arrival times • Sustainability is built into the sporadic workload model • per-job or per-task • actual, nominal too for algorithms that do not make use of Ti in scheduling decisions • So global FTP, EDF, EDZL are sustainable w.r.t. longer inter-arrival times ECRTS 2009 (Dublin) - Ted Baker
Shorter execution times • Depends on scheduling algorithm • Studied by Ha & Liu (1994) • Non-preemptive scheduling not sustainable • Preemptive work-conserving fixed-job-priority SMP scheduling with migration is sustainable • FTP and EDF are sustainable • Proved for job sets, covers sporadic tasks • actual/nominal, per job/task ECRTS 2009 (Dublin) - Ted Baker
EDZL & shorter exec. time • Difference from FTP & EDF:job priority can change(breaks Ha & Liu assumption) • EDZL is sustainable • per-job/task • nominal and actual, or just actual (Piao, Han, Kim et al. 2006; new proof here) ECRTS 2009 (Dublin) - Ted Baker
Longer deadlines? • FTP is sustainable, for sporadic tasks • EDF & EDZL sustainability open for sporadic tasks (not sustainable for job sets*) • exact test (if one exists) might be risky • or scheduler should ignore deadline changes • sustainable tests are of interest *Apparently also not sustainable for sporadic task sets, with respect to relaxation of a single job deadline (see appendix). However, it might be sustainable w.r.t. uniform relaxation of deadline over all jobs of a task. ECRTS 2009 (Dublin) - Ted Baker
Sustainable schedulability test • If the test says a task set is schedulable, then it remains schedulable if we reduce pessimism in our assumptions, e.g., • decrease task execution times • increase task periods • reduce release-time jitter • lengthen job deadlines ECRTS 2009 (Dublin) - Ted Baker
Relationships • Algorithm sustainable ⇒ test sustainable • Algorithm not sustainable ⇒ exact test not sustainable So an inexact test might be better,if it is sustainable and the algorithm is not. This might be true for global EDF. Do we know any sustainable tests? ECRTS 2009 (Dublin) - Ted Baker
Self-sustainable test(new) • If the test says a task set is schedulable, then the test still says it is schedulable if we reduce pessimism in our assumptions, e.g. • decrease task execution times • increase task periods • reduce release-time jitter • lengthen job deadlines Do we know any self-sustainable tests for global EDF? ECRTS 2009 (Dublin) - Ted Baker
BCL Test (Bertogna, Cirinei, Lipari ECRTS 2003) Sporadic task system is global EDF schedulable on m unit-capacity processors if for each or and there is some i≠k for which ECRTS 2009 (Dublin) - Ted Baker
Is it Sustainable? • We don’t know. • We have proven BCL test is notself-sustainable with respect to nominal deadline relaxation. ECRTS 2009 (Dublin) - Ted Baker
A load-based test (Baruah & Baker, ECRTS 2008) Sporadic task system t is global-EDF schedulable on m unit-capacity processors if where ECRTS 2009 (Dublin) - Ted Baker
Is it sustainable? • We don’t know, but it is not self-sustainable. • Is there a better test, that is sustainable? • Yes, this is self-sustainable: ECRTS 2009 (Dublin) - Ted Baker
Why one is sustainable and the other not Load not schedulable schedulable ECRTS 2009 (Dublin) - Ted Baker
Summary • Sustainability depends on workload modelas well as platform and scheduling algorithm • For sporadic tasks and SMP: • Global FTP is fully sustainable • Global EDF & EDZL are (only?)exec. time and inter-arrival time sustainable • Self-sustainability is a strong form of sustainability for tests • Not all tests are deadline self-sustainable • But at least one is ECRTS 2009 (Dublin) - Ted Baker
Suggestion • Papers on scheduling algorithms, and schedulability tests, should routinely address sustainability. ECRTS 2009 (Dublin) - Ted Baker
The End questions? ECRTS 2009 (Dublin) - Ted Baker
Appendix 1 A tentative proof that global EDF is not sustainable for sporadic task systems w.r.t. relaxation of individual job deadlines ECRTS 2009 (Dublin) - Ted Baker
Example A A m = 2 processors B B C C D 0 2 4 6 8 10 12 14 16 18 20 ECRTS 2009 (Dublin) - Ted Baker 6 6
Claim • This task appears to be global EDF schedulable. • This checks out for integer time values up to a scale factor of 3, using brute-force test. • But it still needs a careful proof. • If this task set is schedulable, it shows that global EDF is not sustainable for sporadic task systems w.r.t. single-job deadline relaxation. ECRTS 2009 (Dublin) - Ted Baker
If B’s first deadline is relaxed? A B A C D B D 0 2 4 6 8 10 12 14 16 18 20 D can be blocked for 6 time units, missing its deadline. This does not happen if both of B’s deadlines are relaxed equally. ECRTS 2009 (Dublin) - Ted Baker 6 6
If B is just released later? A B A B C D 0 2 4 6 8 10 12 14 16 18 20 D is blocked for only 4 time units, since the second B has later deadline than D. ECRTS 2009 (Dublin) - Ted Baker 6 6