Introductory Seminar on Research CIS5935 Fall 2009 Ted Baker.

Slides:



Advertisements
Similar presentations
EE5900 Advanced Embedded System For Smart Infrastructure
Advertisements

1 EE5900 Advanced Embedded System For Smart Infrastructure RMS and EDF Scheduling.
THE UNIVERSITY of TEHRAN Mitra Nasri Sanjoy Baruah Gerhard Fohler Mehdi Kargahi October 2014.
Mehdi Kargahi School of ECE University of Tehran
Response-Time Analysis for globally scheduled Symmetric Multiprocessor Platforms Real-Time Systems Laboratory RETIS Lab Marko Bertogna, Michele Cirinei.
RUN: Optimal Multiprocessor Real-Time Scheduling via Reduction to Uniprocessor Paul Regnier † George Lima † Ernesto Massa † Greg Levin ‡ Scott Brandt ‡
Module 2 Priority Driven Scheduling of Periodic Task
Chapter 5 CPU Scheduling. CPU Scheduling Topics: Basic Concepts Scheduling Criteria Scheduling Algorithms Multiple-Processor Scheduling Real-Time Scheduling.
Soft Real-Time Semi-Partitioned Scheduling with Restricted Migrations on Uniform Heterogeneous Multiprocessors Kecheng Yang James H. Anderson Dept. of.
Chapter 6: CPU Scheduling. 5.2 Silberschatz, Galvin and Gagne ©2005 Operating System Concepts – 7 th Edition, Feb 2, 2005 Chapter 6: CPU Scheduling Basic.
Silberschatz, Galvin and Gagne  Operating System Concepts Chapter 6: CPU Scheduling Basic Concepts Scheduling Criteria Scheduling Algorithms.
By Group: Ghassan Abdo Rayyashi Anas to’meh Supervised by Dr. Lo’ai Tawalbeh.
CprE 458/558: Real-Time Systems
Technische Universität Dortmund Classical scheduling algorithms for periodic systems Peter Marwedel TU Dortmund, Informatik 12 Germany 2007/12/14.
New Schedulability Tests for Real- Time task sets scheduled by Deadline Monotonic on Multiprocessors Marko Bertogna, Michele Cirinei, Giuseppe Lipari Scuola.
The Design of an EDF- Scheduled Resource-Sharing Open Environment Nathan Fisher Wayne State University Marko Bertogna Scuola Superiore Santa’Anna of Pisa.
Real Time Operating Systems Scheduling & Schedulers Course originally developed by Maj Ron Smith 8-Oct-15 Dr. Alain Beaulieu Scheduling & Schedulers- 7.
Silberschatz, Galvin and Gagne  Operating System Concepts Chapter 6: CPU Scheduling Basic Concepts Scheduling Criteria Scheduling Algorithms.
Quantifying the Sub-optimality of Non-preemptive Real-time Scheduling Abhilash Thekkilakattil, Radu Dobrin and Sasikumar Punnekkat.
1 Reducing Queue Lock Pessimism in Multiprocessor Schedulability Analysis Yang Chang, Robert Davis and Andy Wellings Real-time Systems Research Group University.
Scheduling policies for real- time embedded systems.
Multiprocessor Real-time Scheduling Jing Ma 马靖. Classification Partitioned Scheduling In the partitioned approach, the tasks are statically partitioned.
Real-Time Systems Mark Stanovich. Introduction System with timing constraints (e.g., deadlines) What makes a real-time system different? – Meeting timing.
Silberschatz and Galvin  Operating System Concepts Module 5: CPU Scheduling Basic Concepts Scheduling Criteria Scheduling Algorithms Multiple-Processor.
Real-Time Scheduling CS 3204 – Operating Systems Lecture 20 3/3/2006 Shahrooz Feizabadi.
The Global Limited Preemptive Earliest Deadline First Feasibility of Sporadic Real-time Tasks Abhilash Thekkilakattil, Sanjoy Baruah, Radu Dobrin and Sasikumar.
CS244-Introduction to Embedded Systems and Ubiquitous Computing Instructor: Eli Bozorgzadeh Computer Science Department UC Irvine Winter 2010.
1 11/29/2015 Chapter 6: CPU Scheduling l Basic Concepts l Scheduling Criteria l Scheduling Algorithms l Multiple-Processor Scheduling l Real-Time Scheduling.
CS244-Introduction to Embedded Systems and Ubiquitous Computing Instructor: Eli Bozorgzadeh Computer Science Department UC Irvine Winter 2010.
Special Class on Real-Time Systems
CSE 522 Real-Time Scheduling (2)
Real-Time Scheduling CS 3204 – Operating Systems Lecture 13 10/3/2006 Shahrooz Feizabadi.
CSCI1600: Embedded and Real Time Software Lecture 24: Real Time Scheduling II Steven Reiss, Fall 2015.
6.1 CPU Scheduling Basic Concepts Scheduling Criteria Scheduling Algorithms Multiple-Processor Scheduling Real-Time Scheduling Algorithm Evaluation.
Multiprocessor Fixed Priority Scheduling with Limited Preemptions Abhilash Thekkilakattil, Rob Davis, Radu Dobrin, Sasikumar Punnekkat and Marko Bertogna.
CSCI1600: Embedded and Real Time Software Lecture 23: Real Time Scheduling I Steven Reiss, Fall 2015.
Dynamic Priority Driven Scheduling of Periodic Task
Classical scheduling algorithms for periodic systems Peter Marwedel TU Dortmund, Informatik 12 Germany 2012 年 12 月 19 日 These slides use Microsoft clip.
Introduction to Real-Time Systems
Undergraduate course on Real-time Systems Linköping University TDDD07 Real-time Systems Lecture 2: Scheduling II Simin Nadjm-Tehrani Real-time Systems.
Introductory Seminar on Research CIS5935 Fall 2008 Ted Baker.
CS Spring 2010 CS 414 – Multimedia Systems Design Lecture 32 – Multimedia OS Klara Nahrstedt Spring 2010.
Chapter 4 CPU Scheduling. 2 Basic Concepts Scheduling Criteria Scheduling Algorithms Multiple-Processor Scheduling Real-Time Scheduling Algorithm Evaluation.
Lecture 4 CPU scheduling. Basic Concepts Single Process  one process at a time Maximum CPU utilization obtained with multiprogramming CPU idle :waiting.
CPU scheduling.  Single Process  one process at a time  Maximum CPU utilization obtained with multiprogramming  CPU idle :waiting time is wasted 2.
Basic Concepts Maximum CPU utilization obtained with multiprogramming
Distributed Process Scheduling- Real Time Scheduling Csc8320(Fall 2013)
EEE Embedded Systems Design Process in Operating Systems 서강대학교 전자공학과
Networks and Operating Systems: Exercise Session 2
Chapter 6: CPU Scheduling
Process Scheduling B.Ramamurthy 11/18/2018.
CPU Scheduling G.Anuradha
Module 5: CPU Scheduling
3: CPU Scheduling Basic Concepts Scheduling Criteria
Chapter5: CPU Scheduling
CSCI1600: Embedded and Real Time Software
Chapter 5: CPU Scheduling
Chapter 6: CPU Scheduling
Outline Scheduling algorithms Multi-processor scheduling
Chapter 6: CPU Scheduling
Chapter 5: CPU Scheduling
Process Scheduling B.Ramamurthy 2/23/2019.
CSCI1600: Embedded and Real Time Software
Operating System , Fall 2000 EA101 W 9:00-10:00 F 9:00-11:00
Shortest-Job-First (SJR) Scheduling
Chapter 6: CPU Scheduling
Module 5: CPU Scheduling
Chapter 6: CPU Scheduling
Chapter 6: CPU Scheduling
Module 5: CPU Scheduling
Presentation transcript:

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? – Sustainability of specific algorithms & tests

My past research Relative computability – Relativizations of the P=NP? question ( ) Algorithms – N-dim pattern matching (1978) – extended LR parsing (1981) Compilers & PL implementation – Ada compiler and runtime systems ( ) Real-time runtime systems, multi-threading – FSU Pthreads & other RT OS projects ( ) Real-time scheduling & synch. – Stack Resource Protocol (1991) – Deadline Sporadic Server (1995) RT Software standards – POSIX, Ada ( )

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 T i = minimum inter-arrival time C i = worst-case execution time D i = relative deadline job released job completesdeadline 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 where Sporadic task system  is schedulable on m unit-capacity processors if

My recent research on Sustainable Schedulabilty done with Sanjoy Baruah (UNC) presented by T. Baker at ECRTS July 2009 Dublin

7/3/2009ECRTS 2009 (Dublin) - Ted Baker18 General schedulability testing Will a will workload W meet all deadlines if scheduled by algorithm A on platform P? exact test : “yes” ⇔ schedulable sufficient test: “yes” ⇒  schedulable Goal: validate timing properties on which correctness, reliability, safety depend.

7/3/2009ECRTS 2009 (Dublin) - Ted Baker19 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

7/3/2009ECRTS 2009 (Dublin) - Ted Baker20 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?

7/3/2009ECRTS 2009 (Dublin) - Ted Baker21 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.

7/3/2009ECRTS 2009 (Dublin) - Ted Baker22 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

7/3/2009ECRTS 2009 (Dublin) - Ted Baker23 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

7/3/2009ECRTS 2009 (Dublin) - Ted Baker24 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.

7/3/2009ECRTS 2009 (Dublin) - Ted Baker25 How? Actual/nominal? – actual max. job exec. time < C i, or – value C i used by scheduler is reduced Per job/task? – C i reduced differently for each job, or – C i 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.

7/3/2009ECRTS 2009 (Dublin) - Ted Baker26 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

7/3/2009ECRTS 2009 (Dublin) - Ted Baker27 SMP Platform m identical processors bounded cost for migration, context switch

7/3/2009ECRTS 2009 (Dublin) - Ted Baker28 Sporadic task workload fixed set of tasks each generates a sequence of jobs each job of a task has parameters: – exec. time C i is an upper bound – inter-arrival time T i is a lower bound – deadline, relative to arrival time, D i

7/3/2009ECRTS 2009 (Dublin) - Ted Baker29 Where is pessimism? T i : lower bound C i : upper bound D i : lower bound? So sustainability means allowing for the following relaxations: Longer inter-arrival times Shorter execution times Longer deadlines

7/3/2009ECRTS 2009 (Dublin) - Ted Baker30 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

7/3/2009ECRTS 2009 (Dublin) - Ted Baker31 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 T i in scheduling decisions So global FTP, EDF, EDZL are sustainable w.r.t. longer inter-arrival times

7/3/2009ECRTS 2009 (Dublin) - Ted Baker32 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

7/3/2009ECRTS 2009 (Dublin) - Ted Baker33 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)

7/3/2009ECRTS 2009 (Dublin) - Ted Baker34 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.

7/3/2009ECRTS 2009 (Dublin) - Ted Baker35 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

7/3/2009ECRTS 2009 (Dublin) - Ted Baker36 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?

7/3/2009ECRTS 2009 (Dublin) - Ted Baker37 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?

7/3/2009ECRTS 2009 (Dublin) - Ted Baker38 BCL Test or Sporadic task system  is global EDF schedulable on m unit-capacity processors if for each (Bertogna, Cirinei, Lipari ECRTS 2003) and there is some i≠k for which

7/3/2009ECRTS 2009 (Dublin) - Ted Baker39 We don’t know. We have proven BCL test is not self- sustainable with respect to nominal deadline relaxation. Is it Sustainable?

7/3/2009ECRTS 2009 (Dublin) - Ted Baker40 A load-based test Sporadic task system  is global-EDF schedulable on m unit-capacity processors if where (Baruah & Baker, ECRTS 2008)

7/3/2009ECRTS 2009 (Dublin) - Ted Baker41 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:

7/3/2009ECRTS 2009 (Dublin) - Ted Baker42 Why one is sustainable and the other not Load not schedulable schedulable

7/3/2009ECRTS 2009 (Dublin) - Ted Baker43 Summary Sustainability depends on workload model as 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

7/3/2009ECRTS 2009 (Dublin) - Ted Baker44 Suggestion Papers on scheduling algorithms, and schedulability tests, should routinely address sustainability.

7/3/2009ECRTS 2009 (Dublin) - Ted Baker45 The End questions?

7/3/2009ECRTS 2009 (Dublin) - Ted Baker46 Appendix 1 A tentative proof that global EDF is not sustainable for sporadic task systems w.r.t. relaxation of individual job deadlines

7/3/2009ECRTS 2009 (Dublin) - Ted Baker47 Example TaskWCET (C i )Deadline (D i )Period (T i ) A248 B248 C488 D813 B D A C m = 2 processors A B C

7/3/2009ECRTS 2009 (Dublin) - Ted Baker48 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.

7/3/2009ECRTS 2009 (Dublin) - Ted Baker49 If B’s first deadline is relaxed? B D A A BC D can be blocked for 6 time units, missing its deadline. This does not happen if both of B’s deadlines are relaxed equally. D

7/3/2009ECRTS 2009 (Dublin) - Ted Baker50 If B is just released later? B D A AB C D is blocked for only 4 time units, since the second B has later deadline than D.

7/3/2009ECRTS 2009 (Dublin) - Ted Baker51 Appendix 2 Another self-sustainable test for global EDF on sporadic task sets.

7/3/2009ECRTS 2009 (Dublin) - Ted Baker52 Density Test for Global EDF* where Sporadic task system  is schedulable on m unit-capacity processors if (Goossens, Funk, Baruah RTS 2003) 7/3/200952ECRTS 2009 (Dublin) - Ted Baker This is another test for global EDF that is fully self-sustainable.

7/3/2009ECRTS 2009 (Dublin) - Ted Baker53 Appendix 3 Discussion of Sustainability & Workload Models

7/3/2009ECRTS 2009 (Dublin) - Ted Baker54 Job Workload models A job has an arrival time, deadline, and execution time. The execution time may depend on how the job’s execution is scheduled, but there is an upper bound. A workload model specifies a collection of possible sets of jobs. It is schedulable by an algorithm if every set of jobs that conforms to the model is scheduled to meet all deadlines.

7/3/2009ECRTS 2009 (Dublin) - Ted Baker55 Kinds of sustainability 1.With respect to differences between actual run-time behavior and model. – e.g., actual execution time is less than nominal WCET. – a property of the model 2.With respect to changes in the model. – e.g., nominal WCET is reduced – a property of the model and scheduling algorithm

7/3/2009ECRTS 2009 (Dublin) - Ted Baker56 Sustainability of Model Sustainability can be built into a workload model, e.g., specify for each task – maximum job execution time, C i – minimum inter-arrival time, T i – shortest relative deadline, D i Otherwise, it may be imposed by the scheduling algorithm.

7/3/2009ECRTS 2009 (Dublin) - Ted Baker57 Sustainable scheduling algorithm If all job sets satisfying a model are schedulable, then sets of jobs that falls short of the model’s assumptions are also schedulable, e.g., – shorter execution times – longer periods – less release-time jitter – later deadlines