The Design of an EDF- Scheduled Resource-Sharing Open Environment Nathan Fisher Wayne State University Marko Bertogna Scuola Superiore Santa’Anna of Pisa.

Slides:



Advertisements
Similar presentations
Real-Time Competitive Environments: Truthful Mechanisms for Allocating a Single Processor to Sporadic Tasks Anwar Mohammadi, Nathan Fisher, and Daniel.
Advertisements

Priority Inheritance and Priority Ceiling Protocols
Washington WASHINGTON UNIVERSITY IN ST LOUIS Resource and Resource Access Control Fred Kuhns Applied Research Laboratory Computer Science and Engineering.
Priority INHERITANCE PROTOCOLS
Real-Time Mutli-core Scheduling Moris Behnam. Introduction Single processor scheduling – E.g., t 1 (P=10,C=5), t 2 (10, 6) – U= >1 – Use a faster.
1 EE5900 Advanced Embedded System For Smart Infrastructure RMS and EDF Scheduling.
CSE 522 Real-Time Scheduling (3)
Explicit Preemption Placement for Real- Time Conditional Code via Graph Grammars and Dynamic Programming Bo Peng, Nathan Fisher, and Marko Bertogna Department.
CSE 522 Real-Time Scheduling (4)
1 Enhanced EDF Scheduling Algorithms for Orchestrating Network-wide Active Measurements Prasad Calyam, Chang-Gun Lee Phani Kumar Arava, Dima Krymskiy OARnet,
THE UNIVERSITY of TEHRAN Mitra Nasri Sanjoy Baruah Gerhard Fohler Mehdi Kargahi October 2014.
Real-Time Scheduling CIS700 Insup Lee October 3, 2005 CIS 700.
Task Allocation and Scheduling n Problem: How to assign tasks to processors and to schedule them in such a way that deadlines are met n Our initial focus:
Soft Real-Time Semi-Partitioned Scheduling with Restricted Migrations on Uniform Heterogeneous Multiprocessors Kecheng Yang James H. Anderson Dept. of.
Preemptive Behavior Analysis and Improvement of Priority Scheduling Algorithms Xiaoying Wang Northeastern University China.
26 April A Compositional Framework for Real-Time Guarantees Insik Shin and Insup Lee Real-time Systems Group Systems Design Research Lab Dept. of.
CSE 421 Algorithms Richard Anderson Lecture 6 Greedy Algorithms.
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.
Spring 2002Real-Time Systems (Shin) Rate Monotonic Analysis Assumptions – A1. No nonpreemptible parts in a task, and negligible preemption cost –
Embedded System Design Framework for Minimizing Code Size and Guaranteeing Real-Time Requirements Insik Shin, Insup Lee, & Sang Lyul Min CIS, Penn, USACSE,
Evolving Real-Time Systems using Hierarchical Scheduling and Concurrency Analysis John Regehr Alastair Reid Kirk Webb Michael Parker Jay Lepreau School.
October 3, 2005CIS 7001 Compositional Real-Time Scheduling Framework Insik Shin.
New Schedulability Tests for Real- Time task sets scheduled by Deadline Monotonic on Multiprocessors Marko Bertogna, Michele Cirinei, Giuseppe Lipari Scuola.
Minimizing Cache Overhead via Loaded Cache Blocks and Preemption Placement John Cavicchio, Corey Tessler, and Nathan Fisher Department of Computer Science.
Embedded System Design Framework for Minimizing Code Size and Guaranteeing Real-Time Requirements Insik Shin, Insup Lee, & Sang Lyul Min CIS, Penn, USACSE,
Composability and Schedulability of Real-Time Applications in Open Environments Nathan Fisher Department of Computer Science Wayne State University.
Introductory Seminar on Research CIS5935 Fall 2009 Ted Baker.
Real Time Operating Systems Scheduling & Schedulers Course originally developed by Maj Ron Smith 8-Oct-15 Dr. Alain Beaulieu Scheduling & Schedulers- 7.
Non-Preemptive Access to Shared Resources in Hierarchical Real-Time Systems Marko Bertogna, Fabio Checconi, Dario Faggioli CRTS workshop – Barcelona, November,
Quantifying the sub-optimality of uniprocessor fixed priority non-pre-emptive scheduling Robert Davis 1, Laurent George 2, Pierre Courbin 3 1 Real-Time.
Probabilistic Preemption Control using Frequency Scaling for Sporadic Real-time Tasks Abhilash Thekkilakattil, Radu Dobrin and Sasikumar Punnekkat.
Quantifying the Sub-optimality of Non-preemptive Real-time Scheduling Abhilash Thekkilakattil, Radu Dobrin and Sasikumar Punnekkat.
Efficient Admission Control for Enforcing Arbitrary Real-Time Demand-Curve Interfaces Farhana Dewan and Nathan Fisher RTSS, December 6 th, 2012 Sponsors:
Real-Time Scheduling CS4730 Fall 2010 Dr. José M. Garrido Department of Computer Science and Information Systems Kennesaw State University.
1 Reducing Queue Lock Pessimism in Multiprocessor Schedulability Analysis Yang Chang, Robert Davis and Andy Wellings Real-time Systems Research Group University.
DESIGNING VM SCHEDULERS FOR EMBEDDED REAL-TIME APPLICATIONS Alejandro Masrur, Thomas Pfeuffer, Martin Geier, Sebastian Drössler and Samarjit Chakraborty.
National Taiwan University Department of Computer Science and Information Engineering 1 Optimal Real-Time Scheduling for Uniform Multiprocessors 薛智文 助理教授.
Real-Time Systems Mark Stanovich. Introduction System with timing constraints (e.g., deadlines) What makes a real-time system different? – Meeting timing.
Analysis of Real-Time Multi-Modal FP-Scheduled Systems with Non-Preemptible Regions Authors: Masud Ahmed (presenting) Pradeep Hettiarachchi Nathan Fisher.
Real Time Scheduling Telvis Calhoun CSc Outline Introduction Real-Time Scheduling Overview Tasks, Jobs and Schedules Rate/Deadline Monotonic Deferrable.
CS Spring 2011 CS 414 – Multimedia Systems Design Lecture 31 – Multimedia OS (Part 1) Klara Nahrstedt Spring 2011.
The Global Limited Preemptive Earliest Deadline First Feasibility of Sporadic Real-time Tasks Abhilash Thekkilakattil, Sanjoy Baruah, Radu Dobrin and Sasikumar.
Real-time Virtual Resource: a Timely Abstraction for Embedded Systems Aloysius K. Mok Alex Xiang Feng Dept. of Computer Sciences University of Texas at.
KUKUM Real Time System 1/21 Module 2 Real Time System Scheduling Lecture 05.
Special Class on Real-Time Systems
12/19/2015COSC , Lecture 31 Real-Time Systems, COSC , Lecture 3 Stefan Andrei.
CSCI1600: Embedded and Real Time Software Lecture 24: Real Time Scheduling II Steven Reiss, Fall 2015.
Real-Time Scheduling II: Compositional Scheduling Framework Insik Shin Dept. of Computer Science KAIST.
Common Approaches to Real-Time Scheduling Clock-driven (time-driven) schedulers Priority-driven schedulers Examples of priority driven schedulers Effective.
Multiprocessor Fixed Priority Scheduling with Limited Preemptions Abhilash Thekkilakattil, Rob Davis, Radu Dobrin, Sasikumar Punnekkat and Marko Bertogna.
1 Semi-partitioned Model on Dual-core Mixed Criticality System Hao Xu.
Introduction to Real-Time Systems
Mok & friends. Resource partition for real- time systems (RTAS 2001)
Silberschatz, Galvin and Gagne ©2011 Operating System Concepts Essentials – 8 th Edition Chapter 2: The Linux System Part 3.
Task Mapping and Partition Allocation for Mixed-Criticality Real-Time Systems Domițian Tămaș-Selicean and Paul Pop Technical University of Denmark.
1.  System Characteristics  Features of Real-Time Systems  Implementing Real-Time Operating Systems  Real-Time CPU Scheduling  An Example: VxWorks5.x.
Introductory Seminar on Research CIS5935 Fall 2008 Ted Baker.
THE DEADLINE-BASED SCHEDULING OF DIVISIBLE REAL-TIME WORKLOADS ON MULTIPROCESSOR PLATFORMS Suriayati Chuprat Supervisors: Professor Dr Shaharuddin Salleh.
Istituto di Tecnologie della Comunicazione dell’Informazione e della Percezione Explicit Preemption Point (EPP) placement for conditional code Marko Bertogna.
Improved Conditions for Bounded Tardiness under EPDF Fair Multiprocessor Scheduling UmaMaheswari Devi and Jim Anderson University of North Carolina at.
Distributed Process Scheduling- Real Time Scheduling Csc8320(Fall 2013)
Tardiness Bounds for Global EDF Scheduling on a Uniform Multiprocessor Kecheng Yang James H. Anderson Dept. of Computer Science UNC-Chapel Hill.
Multiprocessor Real-Time Scheduling
EEE Embedded Systems Design Process in Operating Systems 서강대학교 전자공학과
Houssam-Eddine Zahaf, Giuseppe Lipari, Luca Abeni RTNS’17
Sanjoy Baruah The University of North Carolina at Chapel Hill
Limited-Preemption Scheduling of Sporadic Tasks Systems
CHAPTER 8 Resources and Resource Access Control
Ch.7 Scheduling Aperiodic and Sporadic Jobs in Priority-Driven Systems
Presentation transcript:

The Design of an EDF- Scheduled Resource-Sharing Open Environment Nathan Fisher Wayne State University Marko Bertogna Scuola Superiore Santa’Anna of Pisa Sanjoy Baruah The University of North Carolina at Chapel Hill

Outline Background: Open Environments. Motivation. Challenge. Prior Work. Our Results: System Model. Resource-Sharing Framework: Formal Properties. Summary & Future Work. System Scheduler. Validation Tests. Techniques for Minimizing “Blocking.”

Outline Background: Open Environments. Motivation. Challenge. Prior Work. Our Results: System Model. Resource-Sharing Framework: Formal Properties. Summary & Future Work.

Motivation: Traditional Real-Time System Design Application A: 11 22 33 Application B: ’1’1 ’2’2 Real-Time Tasks Background – Prior Work– Our Results– Summary

Motivation: Traditional Real-Time System Design Application A: 11 22 33 Application B: ’1’1 ’2’2 CPU Scheduler Schedulability Test Task Specifications Background – Prior Work– Our Results– Summary

Motivation: Traditional Real-Time System Design Application A: 11 22 33 Application B: ’1’1 ’2’2 CPU Scheduler Each task submits jobs directly to CPU scheduler. Assumption: All tasks of all real- time applications are known at system-validation time. Background – Prior Work– Our Results– Summary

Motivation: Traditional Real-Time System Design Drawbacks: 1.All tasks in the system need to be validated together and known to system designer, a priori. Monolithic system design. 2.Each application on shared platform must use same scheduling algorithm. 3.Temporally-bad behavior of one task may affect other tasks. Violation of System Design Principles: Encapsulation & Abstraction. Modularity & Hierarchical Design. Fault-containment. Solution? Background – Prior Work– Our Results– Summary

Virtual Processor B Local Scheduler Virtual Processor A Local Scheduler Motivation: Real-Time Open Environments CPU Scheduler Application Interface: VP Speed. Jitter tolerance. … Application A: 11 22 33 Application B: ’1’1 ’2’2 IAIA IBIB Global Background – Prior Work– Our Results– Summary

Motivation: Real-Time Open Environments CPU Scheduler Application A: 11 22 33 Virtual Processor A Application B: ’1’1 ’2’2 Virtual Processor B Local Scheduler Local Scheduler IAIA IBIB Application-Level Schedulability Test Global Background – Prior Work– Our Results– Summary

Motivation: Real-Time Open Environments CPU Scheduler Application A: 11 22 33 Virtual Processor A Application B: ’1’1 ’2’2 Virtual Processor B Local Scheduler Local Scheduler IAIA IBIB Application-Level Schedulability Test Each application independently developed & validated. Global Background – Prior Work– Our Results– Summary

Motivation: Real-Time Open Environments CPU Scheduler Application A: 11 22 33 Virtual Processor A Application B: ’1’1 ’2’2 Virtual Processor B Local Scheduler Local Scheduler IAIA IBIB Composability Test Global Background – Prior Work– Our Results– Summary

Motivation: Real-Time Open Environments CPU Scheduler Application A: 11 22 33 Virtual Processor A Application B: ’1’1 ’2’2 Virtual Processor B Local Scheduler Local Scheduler IAIA IBIB Global Background – Prior Work– Our Results– Summary

Motivation: Real-Time Open Environments Advantages: 1.Application’s temporal constraints may be validated independently and need not be known a priori. Component-based design. Service-oriented design. 2.Each application on shared platform may use different scheduling algorithm. 3.Virtual processors isolate temporally-bad behavior of an application. Adherence to System Design Principles: Encapsulation & Abstraction. Modularity & Hierarchical Design. Fault-containment. Background – Prior Work– Our Results– Summary

Challenge: Real-Time Open Environments CPU Scheduler Application A: 11 22 33 Application Server A Application B: ’1’1 ’2’2 Application Server B Local Scheduler Local Scheduler IAIA IBIB Global R1R1R1R1 R2R2R2R2 RmRmRmRm … Challenge: Tasks may access shared global resources. Implication: Applications not completely independent. Background – Prior Work– Our Results– Summary

Prior Work: Real-Time Open Environments “First Generation” Open Environments: Examples: Resource Kernels [Rajkumar et al., MMCM 1998]. Resource Partitions [Mok, Feng, & Chen, RTAS 2001]. Periodic Resource Model [Shin & Lee, RTSS 2003]. … Periodic tasks. Not all consider shared resources. [Deng & Liu, RTSS 1997] Background – Prior Work– Our Results– Summary

Prior Work: Real-Time Open Environments “Second Generation” Open Environments: Recent Work: Davis & Burns [RTSS 2006]. Behnam et al. [RTSS-WiP 2006]. … Sporadic tasks. Non-preemptive sharing of global resources. [Deng & Liu, RTSS 1997] Drawback: May cause blocking among & within applications. Our Work: Allow for preemptive sharing (when needed). Background – Prior Work– Our Results– Summary

Our Results: System Model Applications: A 1, A 2, …, A q. Global Resources: R 1, R 2, …, R m. Application Interface for A k : I A = (  k,  k, H k (  ))  k : virtual processor speed.  k : jitter tolerance. H k (R ℓ ): A k ’s resource-hold time of R ℓ. Each application A k comprised of sporadic tasks system  (A k ). Background – Prior Work– Our Results– Summary k Maximum continuous interval that A k may lock R ℓ.

(e i ) 0 pipi 2p i 3p i 4p i  i = (e i,d i,p i ) time Our Results: System Model Sporadic Task Model Relative Deadline Period Worst case Execution Requirement Task Systems for A k :  (A k ) = {  1,…,  n }

Our Results: System Model Applications: A 1, A 2, …, A q. Global Resources: R 1, R 2, …, R m. Each application comprised of sporadic tasks. Application Interface for A k : I A = (  k,  k, H k (  ))  k : virtual processor speed.  k : jitter tolerance. H k (R ℓ ): A k ’s resource-hold time of R ℓ. k

Our Results: Resource-Sharing Framework Bounded-delay Resource Open Environment (BROE) Server: Application virtual processor. Maintains 3 server variables for A k : E k : budget. P k : replenishment period. D k : server deadline. BROE Servers are scheduled by EDF plus Stack Resource Protocol (SRP) [Baker, 1991] w.r.t. server deadline and period. Background – Prior Work– Our Results– Summary

Our Results: Resource-Sharing Framework I A = (  k,  k, H k (  )) BROE Server Rules: 1. Initialize to “normal” replenishment values: Period: Maximum Budget: Deadline: kk For all intervals of size t >  k, execution over interval should be at least (t-  k )  k k P k = kk 2(1-  k ) E k = kkkk 2(1-  k ) D k = + t cur kk 2(1-  k ) Task system  (A k ) scheduled within server allocation by A k ’s local scheduler. Earlier-deadline applications are executing. Background – Prior Work– Our Results– Summary

Our Results: Resource-Sharing Framework BROE Server Rules: 1. Initialize to “normal” replenishment values. 2. If server is executing, budget is decremented at rate 1. Budget time 0 E k = -1, if A k executing, 0, otherwise. d dt I A = (  k,  k, H k (  )) k Background – Prior Work– Our Results– Summary

Our Results: Resource-Sharing Framework BROE Server Rules: 1. Initialize to “normal” replenishment values. 2. If server is executing, budget is decremented at rate If task of  (A k ) requests resource R ℓ when E k < H k (R ℓ ), then defer execution and update replenishment time & next deadline: Task requests R ℓ, but E k < H k (R ℓ ) Access to R ℓ is granted here  k Execution over interval > (t-  k )  k I A = (  k,  k, H k (  )) k Background – Prior Work– Our Results– Summary

Our Results: Formal Properties Composability Test: B k : largest H i (R ℓ ) value that can block A k. Theorem: Applications A 1, A 2, …, A q composable on a unit-speed processor if for all k  {1,…, q}:   j +  1 BkBk PkPk P j  P k Background – Prior Work– Our Results– Summary

Our Results: Formal Properties Composability Test: Local-Scheduler “Optimality”: Theorem: If A k independently validated on processor of speed  k and each job completes  k prior to its deadline, then it will meet all deadlines on BROE server with interface I A  (  k,  k, H k (  )) when using EDF + SRP. Theorem: Applications A 1, A 2, …, A q composable on a unit-speed processor if for all k  {1,…, q}:   j +  1 BkBk PkPk P j  P k Background – Prior Work– Our Results– Summary k

Our Results: Resource-Hold Times How do you determine H k (R ℓ )? 1.If  (A k ) feasible when non-preemptively executing R ℓ on VP, execute non-preemptively on BROE server. H k (R ℓ ) equals duration of longest critical section of  (A k ) on R ℓ. Background – Prior Work– Our Results– Summary

Our Results: Resource-Hold Times How do you determine H k (R ℓ )? 1.If  (A k ) feasible when non-preemptively executing R ℓ on VP, execute non-preemptively on BROE server. 2.If  (A k ) infeasible on VP using EDF+SRP, then by “optimality” theorem,  (A k ) cannot be scheduled on server of speed  k. 3.If neither above hold: devise local scheduling technique for minimizing application resource hold time. Previous paper [RTAS 2007] describes H k (R ℓ ) minimization for EDF+SRP. Background – Prior Work– Our Results– Summary

Our Results: Blocking Reduction Intra-application preemption + SRP: reduces blocking of “higher-priority” tasks. Deferring resource execution: prevents blocking after budget exhausted. Minimization of resource-hold times: reduces an application’s impact on other applications. Background – Prior Work– Our Results– Summary

Summary & Future Work Open Environments: System design benefits. Composability of independently-validated applications. Challenge: Shared Resources. Our Contributions: “Clean” interface. Simple composability test. Resource-hold times (allowing preemption, if needed). Future Work: Interface selection. General task models & different schedulers. Multiprocessor platforms.

Thank You!