End-To-End Scheduling Angelo Corsaro & Venkita Subramonian Department of Computer Science Washington University Distributed Systems Seminar, Spring 2003.

Slides:



Advertisements
Similar presentations
A DISTRIBUTED CSMA ALGORITHM FOR THROUGHPUT AND UTILITY MAXIMIZATION IN WIRELESS NETWORKS.
Advertisements

Simulation of Feedback Scheduling Dan Henriksson, Anton Cervin and Karl-Erik Årzén Department of Automatic Control.
EE5900 Advanced Embedded System For Smart Infrastructure
REAL TIME SYSTEM Scheduling.
Hadi Goudarzi and Massoud Pedram
Resource Management §A resource can be a logical, such as a shared file, or physical, such as a CPU (a node of the distributed system). One of the functions.
CS5270 Lecture 31 Uppaal, and Scheduling, and Resource Access Protocols CS 5270 Lecture 3.
Courseware Scheduling of Distributed Real-Time Systems Jan Madsen Informatics and Mathematical Modelling Technical University of Denmark Richard Petersens.
Undoing the Task: Moving Timing Analysis back to Functional Models Marco Di Natale, Haibo Zeng Scuola Superiore S. Anna – Pisa, Italy McGill University.
Mehdi Kargahi School of ECE University of Tehran
Real-Time Scheduling CIS700 Insup Lee October 3, 2005 CIS 700.
Is It Time Yet? Wing On Chan. Distributed Systems – Chapter 18 - Scheduling Hermann Kopetz.
Tasks Periodic The period is the amount of time between each iteration of a regularly repeated task Time driven The task is automatically activated by.
Soft Real-Time Semi-Partitioned Scheduling with Restricted Migrations on Uniform Heterogeneous Multiprocessors Kecheng Yang James H. Anderson Dept. of.
Abhijit Davare 1, Qi Zhu 1, Marco Di Natale 2, Claudio Pinello 3, Sri Kanajan 2, Alberto Sangiovanni-Vincentelli 1 1 University of California, Berkeley.
Scheduling for Embedded Real-Time Systems Amit Mahajan and Haibo.
1 of 14 1/15 Schedulability Analysis and Optimization for the Synthesis of Multi-Cluster Distributed Embedded Systems Paul Pop, Petru Eles, Zebo Peng Embedded.
Fault-tolerant Adaptive Divisible Load Scheduling Xuan Lin, Sumanth J. V. Acknowledge: a few slides of DLT are from Thomas Robertazzi ’ s presentation.
1 of 14 1 Analysis and Synthesis of Communication-Intensive Heterogeneous Real-Time Systems Paul Pop Computer and Information Science Dept. Linköpings.
Fakultät für informatik informatik 12 technische universität dortmund Classical scheduling algorithms for periodic systems Peter Marwedel TU Dortmund,
Scheduling Algorithms for Multiprogramming in a Hard-Real-Time Environment Presented by Pete Perlegos C.L. Liu and James W. Layland.
By Group: Ghassan Abdo Rayyashi Anas to’meh Supervised by Dr. Lo’ai Tawalbeh.
1 of 16 June 21, 2000 Schedulability Analysis for Systems with Data and Control Dependencies Paul Pop, Petru Eles, Zebo Peng Department of Computer and.
CprE 458/558: Real-Time Systems
Spring 2002Real-Time Systems (Shin) Rate Monotonic Analysis Assumptions – A1. No nonpreemptible parts in a task, and negligible preemption cost –
Misconceptions About Real-time Computing : A Serious Problem for Next-generation Systems J. A. Stankovic, Misconceptions about Real-Time Computing: A Serious.
Real-Time Operating System Chapter – 8 Embedded System: An integrated approach.
Technische Universität Dortmund Classical scheduling algorithms for periodic systems Peter Marwedel TU Dortmund, Informatik 12 Germany 2007/12/14.
Multiprocessor Real- Time Scheduling Aaron Harris CSE 666 Prof. Ganesan.
Real-time Scheduling Review Venkita Subramonian Research Seminar on Software Systems February 2, 2004.
Distributed Real-Time systems 1 By: Mahdi Sadeghizadeh Website: Sadeghizadeh.ir Advanced Computer Networks.
REAL-TIME SOFTWARE SYSTEMS DEVELOPMENT Instructor: Dr. Hany H. Ammar Dept. of Computer Science and Electrical Engineering, WVU.
Module 2 Clock-Driven Scheduling
A Unified Modeling Framework for Distributed Resource Allocation of General Fork and Join Processing Networks in ACM SIGMETRICS
Task Scheduling By Dr. Amin Danial Asham.
Real Time Operating Systems Scheduling & Schedulers Course originally developed by Maj Ron Smith 8-Oct-15 Dr. Alain Beaulieu Scheduling & Schedulers- 7.
Practical Schedulability Analysis for Generalized Sporadic Tasks in Distributed Real-Time Systems Yuanfang Zhang 1, Donald K. Krecker 2, Christopher Gill.
© Oxford University Press 2011 DISTRIBUTED COMPUTING Sunita Mahajan Sunita Mahajan, Principal, Institute of Computer Science, MET League of Colleges, Mumbai.
Scheduling policies for real- time embedded systems.
Real-Time Systems Mark Stanovich. Introduction System with timing constraints (e.g., deadlines) What makes a real-time system different? – Meeting timing.
REAL-TIME SOFTWARE SYSTEMS DEVELOPMENT Instructor: Dr. Hany H. Ammar Dept. of Computer Science and Electrical Engineering, WVU.
Hard Real-Time Scheduling for Low- Energy Using Stochastic Data and DVS Processors Flavius Gruian Department of Computer Science, Lund University Box 118.
5 May CmpE 516 Fault Tolerant Scheduling in Multiprocessor Systems Betül Demiröz.
Module 2 Overview of Real Time System Scheduling
CSCI1600: Embedded and Real Time Software Lecture 24: Real Time Scheduling II Steven Reiss, Fall 2015.
Introduction to Embedded Systems Rabie A. Ramadan 5.
Static Process Scheduling
Classical scheduling algorithms for periodic systems Peter Marwedel TU Dortmund, Informatik 12 Germany 2012 年 12 月 19 日 These slides use Microsoft clip.
CS Spring 2009 CS 414 – Multimedia Systems Design Lecture 31 – Process Management (Part 1) Klara Nahrstedt Spring 2009.
Introduction to Real-Time Systems
Real-Time Operating System Design
For a good summary, visit:
1.  System Characteristics  Features of Real-Time Systems  Implementing Real-Time Operating Systems  Real-Time CPU Scheduling  An Example: VxWorks5.x.
Undergraduate course on Real-time Systems Linköping University TDDD07 Real-time Systems Lecture 2: Scheduling II Simin Nadjm-Tehrani Real-time Systems.
Determining Optimal Processor Speeds for Periodic Real-Time Tasks with Different Power Characteristics H. Aydın, R. Melhem, D. Mossé, P.M. Alvarez University.
Unit - I Real Time Operating System. Content : Operating System Concepts Real-Time Tasks Real-Time Systems Types of Real-Time Tasks Real-Time Operating.
CS Spring 2010 CS 414 – Multimedia Systems Design Lecture 32 – Multimedia OS Klara Nahrstedt Spring 2010.
Operating Systems Scheduling. Scheduling Short term scheduler (CPU Scheduler) –Whenever the CPU becomes idle, a process must be selected for execution.
Distributed Process Scheduling- Real Time Scheduling Csc8320(Fall 2013)
Real-Time Operating Systems RTOS For Embedded systems.
Embedded System Scheduling
ECE 720T5 Fall 2012 Cyber-Physical Systems
Scheduling and Resource Access Protocols: Basic Aspects
Lecture 4 Schedulability and Tasks
CprE 458/558: Real-Time Systems
Flavius Gruian < >
زمان‌بندی پردازه‌ها در سیستم‌های توزیع‌شده استاد درس:
Networked Real-Time Systems: Routing and Scheduling
On-line Routing of Real-Time Messages on Computer Networks
Ch 4. Periodic Task Scheduling
Presentation transcript:

End-To-End Scheduling Angelo Corsaro & Venkita Subramonian Department of Computer Science Washington University Distributed Systems Seminar, Spring 2003

Prolog

Distributed Real-Time Systems  The key characteristics of Distributed Real-Time Systems (DRTS) are:  Tasks in the system require service from several “processors” (Resource are Distributed)  The correctness of a Task depends on its timely completion (Tasks are Real-Time)  Usually a task in a DRTS can be thought as a set of sub-tasks, where each sub-task represent the work needed from a given resource  Execution on a processor  Transmission over a link  etc.  A DRTS Task is characterized by  End-to-End deadline: Time at which the last sub-task has to complete  End-to-End release time: Time after which the first sub-task can start its execution

Narrowing the Scope  The general case of a Distributed Real-Time System is too hard  There are some sub-classes which impose some restriction on the general case and are easier to reason about  An interesting sub-class is that of DRTS which can be characterized as Flow-Shop or Generalized Flow- Shop problems  The Flow-Shop is one of the abstraction used to model Manufacturing Systems like the following  A key characteristic of the flow-shop is that all task execute on all the “processors” on the same order  Traditional Flow-Shop problems don’t have to cope with timeliness, but simply try to minimize the completion time  If a DRTS is modeled as a flow shop, each node and each communication link can be modeled as a “processor”

Examples  The flow-shop model is a good abstraction to represent several classes of DRTS  Examples are  Distributed Control System  Multimedia Systems  Multi-Hop real-time networks  Interconnected Field-Buses  etc.etc  In a video server the sub-task of each stream could be modeled as:  Access and Delivery  Transmission  Acquisition and Display  Further decomposition is possible

Notice That…  End-to-End timing constraints are not necessarily limited to distributed systems  For instance, task accessing a non- sharable resource can be thought as temporarily “executing” on that resource  This type of task can be characterized as a chain of three sub-tasks with an end-to-end deadline  A system may contains many classes of tasks  Tasks in each class execute on different processors on the same order  Tasks in different classes execute on different processors on different order  Multiple classes can be scheduled by statically partitioning the resources so to create virtual processors  Warning: Static partitioning might lead to poor utilization Also Applies to Single Processor We can avoid to consider multiple flow-shop at the same time

PART I

System Model

The Flow Shop

Task Models & General Results  A task is preemptable if its execution can be interrupted and, at a later point in time, resumed  A task is non-preemptable if its execution cannot be interrupted  Schedulers that make use of the fact that a task is preemptable are called preemptive schedulers.

The Flow Shop with Recurrence

Visit Graph

Periodic Flow-Shop

Scheduling Algorithms for Flow-Shop

Identical-Length Task Sets

Algorithm

Optimality

Homogeneous Tasks Sets

Algorithm

Optimality

Example

Removing Idle Time

Arbitrary Task Sets

Algorithms

Example

Bottleneck Processor

Example Bottleneck Processor

PART II

Synchronization Protocols in End-To-End Scheduling

Scope  Job-shop model  Each task needs to execute on a set of processors in a certain order  Each task may require a different order  Problems in End-to-End scheduling  Priority assignment  Assign fixed priorities to tasks so that the system is schedulable  Synchronization of tasks  Control the releases of subtask instances (non-first subtasks)  Schedulability analysis  For a given priority assignment and a given synchronization protocol, whether every instance of each task meets its deadline

The Synchronization Problem  Given that  Priorities are assigned to subtasks in a task chain using some fixed priority assignment algorithm  How do we coordinate the release of subtasks in a task chain so that  Precedence constraints among subtasks are satisfied  subtask deadlines are met  end-to-end deadlines are met

Synchronization Protocols  Direct Synchronization (DS) Protocol  Simple and straightforward  Phase Modification (PM) Protocol  Proposed by Bettati  Used by flow-shop tasks  Extension called Modified Phase Modification (MPM) Protocol  Release Guard Protocol  Proposed by Sun

Synchronization Protocol - Example P1P2 (4,2) T1T1 (6,2) T 2,1 (6,2) T 2,2 (6,3) T3T3 T i,j – j th subtask of task T i (period,execution time) Period = relative deadline of parent task Task T3 has a phase of 4 time units

Direct Synchronization Protocol  Greedy strategy  On completion of subtask  A synchronization signal sent to the next processor  Successor subtask competes with other tasks/subtasks on the next processor

Direct Synchronization Illustrated On P1 On P2 T1T1 T 2,1 T 2,2 T3T Phase of T 3 T 3 misses deadline P1P2 (4,2) T1T1 (6,2) T 2,1 (6,2) T 2,2 (6,3) T3T3

Phase Modification Protocol  Proposed by Bettati  Release subtasks periodically  According to the periods of their parent tasks  Each subtask given its own phase  Phase determined by subtask precedence constraints

Phase Modification Protocol Illustrated (1/2) T 1,1 T 1,2 T 1,3 T 1,1 T 1,2 T 1,3 Actual response time Estimated worst case response time Phase of T 1,2 Phase of T 1,3 p1p1 p1p1 p1p1

Phase Modification Protocol Illustrated (2/2) On P1 On P2 T1T1 T 2,1 T 2,2 T3T Phase of T 3 P1P2 (4,2) T1T1 (6,2) T 2,1 (6,2) T 2,2 (6,3) T3T3 Phase of T 2,2

Phase Modification Protocol - Analysis  Periodic Timer interrupt to release subtasks  Centralized clock or strict clock synchronization  Task overruns could cause Precedence constraint violations

Modified PM Protocol Illustrated (1/2) T 1,1 T 1,2 T 1,1 T 1,2 T 1,3 Actual response time Estimated worst case response time p1p1 Overrun ∆ p 1 + ∆

Modified PM Protocol Illustrated (2/2) On P1 On P2 T1T1 T 2,1 T 2,2 T3T Phase of T 3 P1P2 (4,2) T1T1 (6,2) T 2,1 (6,2) T 2,2 (6,3) T3T3 Synch signal delayed

Modified PM Protocol - Analysis  MPM protocol behavior the same as PM under ideal conditions  Ideal conditions – Clocks synchronized, no overrun  MPM protocol does not need clock synchronization  Precedence constraints preserved even in the case of overruns  Upper bound on End-to-End Response time of task T i R i,k is the response time of the k th subtask of T i n i is the number of subtasks for the task T i  Lower bound on End-to-End Response time of task T i + Actual Response time of n i th subtask  Lower bound high, hence high average EER time

Release Guard Protocol  Proposed by Sun  A guard variable – release guard - associated with each subtask  Release guard used to control release of each subtask  Contains next release time of subtask  Synchronization signals just like MPM  Release guard updated  On getting synchronization signal  During idle time

Release Guard Protocol Illustrated On P1 On P2 T1T1 T 2,1 T 2,2 T3T Phase of T 3 P1P2 (4,2) T1T1 (6,2) T 2,1 (6,2) T 2,2 (6,3) T3T3 g 1,2 = 4+6=10g 1,2 = 9 Idle time detected

Release Guard Protocol - Analysis  Shares the same advantages as MPM  Upper bound on EER still the same as MPM  Since upper bound on release time enforced by release guard R i,k is the response time of the k th subtask of T i n i is the number of subtasks for the task T i  Lower bound on EER less than that of MPM  If there are idle times  Results in lower average EER

Comparison of Protocols DSPMMPMRG Implementation complexity synch interrupts Timer interrupts clock synchronization Synch & timer interrupts Run-time overhead Average EER Estimated worst case EER Inherently missed deadlines YesNo

Classification of Protocols Synchronization Protocols Without execution control With execution control DSPM Phase modification MPM Task release controlled by predecessor processor by delaying the synch signal RG Task release controlled by same processor by using guard variables

Epilogue

Concluding Remarks  Flow-Shop can be used to model a series of real-world systems  The Flow-Shop approach assumes that the task set is fully characterized i.e. it is amenable to off-line analysis, but it’s not ideal for on-line analysis  Optimal algorithms exists for some easy cases, yet some classes of real systems (e.g. some control systems, real-time networks) usually fits these cases

References  “End-To-End Scheduling to meet deadlines in Distributed Systems“, Riccardo Bettati, Jane Liu  Synchronization Protocols in Distributed Real-Time Systems, Jun Sun and Jane Liu, ICDCS ’96  Fixed Priority End-to-End Scheduling in Distributed Real-Time Systems, Jun Sun, PhD Thesis