Response-Time Analysis for globally scheduled Symmetric Multiprocessor Platforms Real-Time Systems Laboratory RETIS Lab Marko Bertogna, Michele Cirinei.

Slides:



Advertisements
Similar presentations
Fakultät für informatik informatik 12 technische universität dortmund Classical scheduling algorithms for periodic systems Peter Marwedel TU Dortmund,
Advertisements

Washington WASHINGTON UNIVERSITY IN ST LOUIS Real-Time: Periodic Tasks Fred Kuhns Applied Research Laboratory Computer Science Washington University.
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.
CS5270 Lecture 31 Uppaal, and Scheduling, and Resource Access Protocols CS 5270 Lecture 3.
REAL-TIME COMMUNICATION ANALYSIS FOR NOCS WITH WORMHOLE SWITCHING Presented by Sina Gholamian, 1 09/11/2011.
THE UNIVERSITY of TEHRAN Mitra Nasri Sanjoy Baruah Gerhard Fohler Mehdi Kargahi October 2014.
Multi-core Real-Time Scheduling for Generalized Parallel Task Models Abusayeed Saifullah, Kunal Agrawal, Chenyang Lu, Christopher Gill.
DP-F AIR : A Simple Model for Understanding Optimal Multiprocessor Scheduling Greg Levin † Shelby Funk ‡ Caitlin Sadowski † Ian Pye † Scott Brandt † †
RUN: Optimal Multiprocessor Real-Time Scheduling via Reduction to Uniprocessor Paul Regnier † George Lima † Ernesto Massa † Greg Levin ‡ Scott Brandt ‡
1 Deferrable Scheduling for Temporal Consistency: Schedulability Analysis and Overhead Reduction Ming Xiong : Lucent Bell Labs Song Han: City University.
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:
Module 2 Priority Driven Scheduling of Periodic Task
Soft Real-Time Semi-Partitioned Scheduling with Restricted Migrations on Uniform Heterogeneous Multiprocessors Kecheng Yang James H. Anderson Dept. of.
Real-Time Scheduling for Multiprocessor Platforms
Courseware Scheduling Uniprocessor Real-Time Systems Jan Madsen Informatics and Mathematical Modelling Technical University of Denmark Richard Petersens.
Computer Science Deadline Fair Scheduling: Bridging the Theory and Practice of Proportionate-Fair Scheduling in Multiprocessor Servers Abhishek Chandra.
Chapter 6 Dynamic Priority Servers
System-Wide Energy Minimization for Real-Time Tasks: Lower Bound and Approximation Xiliang Zhong and Cheng-Zhong Xu Dept. of Electrical & Computer Engg.
Fakultät für informatik informatik 12 technische universität dortmund Classical scheduling algorithms for periodic systems Peter Marwedel TU Dortmund,
Embedded Systems Exercise 3: Scheduling Real-Time Periodic and Mixed Task Sets 18. May 2005 Alexander Maxiaguine.
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,
Technische Universität Dortmund Classical scheduling algorithms for periodic systems Peter Marwedel TU Dortmund, Informatik 12 Germany 2007/12/14.
Real-Time Scheduling Analysis for Multiprocessor Platforms Marko Bertogna PhD dissertation Scuola Superiore S.Anna, Pisa, Italy.
End-to-End Delay Analysis for Fixed Priority Scheduling in WirelessHART Networks Abusayeed Saifullah, You Xu, Chenyang Lu, Yixin Chen.
New Schedulability Tests for Real- Time task sets scheduled by Deadline Monotonic on Multiprocessors Marko Bertogna, Michele Cirinei, Giuseppe Lipari Scuola.
Embedded System Design Framework for Minimizing Code Size and Guaranteeing Real-Time Requirements Insik Shin, Insup Lee, & Sang Lyul Min CIS, Penn, USACSE,
The Design of an EDF- Scheduled Resource-Sharing Open Environment Nathan Fisher Wayne State University Marko Bertogna Scuola Superiore Santa’Anna of Pisa.
Introductory Seminar on Research CIS5935 Fall 2009 Ted Baker.
Non-Preemptive Access to Shared Resources in Hierarchical Real-Time Systems Marko Bertogna, Fabio Checconi, Dario Faggioli CRTS workshop – Barcelona, November,
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:
1 Reducing Queue Lock Pessimism in Multiprocessor Schedulability Analysis Yang Chang, Robert Davis and Andy Wellings Real-time Systems Research Group University.
Multiprocessor Real-time Scheduling Jing Ma 马靖. Classification Partitioned Scheduling In the partitioned approach, the tasks are statically partitioned.
Real-Time Scheduling CS4730 Fall 2010 Dr. José M. Garrido Department of Computer Science and Information Systems Kennesaw State University.
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.
The 32nd IEEE Real-Time Systems Symposium Meeting End-to-End Deadlines through Distributed Local Deadline Assignment Shengyan Hong, Thidapat Chantem, X.
6. Application mapping 6.1 Problem definition
A Deferrable Scheduling Algorithm for Real-Time Transactions Maintaining Data Freshness Ming Xiong Bell Labs Research, Lucent Technologies Song Han, Kam-yiu.
Scheduling Real-Time tasks on Symmetric Multiprocessor Platforms Real-Time Systems Laboratory RETIS Lab Marko Bertogna Research Area: Multiprocessor Systems.
CprE 458/558: Real-Time Systems (G. Manimaran)1 CprE 458/558: Real-Time Systems RMS and EDF Schedulers.
Special Class on Real-Time Systems
CSE 522 Real-Time Scheduling (2)
Module 2 Overview of Real Time System Scheduling
Real-Time Scheduling CS 3204 – Operating Systems Lecture 13 10/3/2006 Shahrooz Feizabadi.
1 Real-Time Scheduling. 2Today Operating System task scheduling –Traditional (non-real-time) scheduling –Real-time scheduling.
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.
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.
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.
Lecture 6: Real-Time Scheduling
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.
Embedded System Scheduling
ECE 720T5 Fall 2012 Cyber-Physical Systems
Multiprocessor Real-Time Scheduling
Wayne Wolf Dept. of EE Princeton University
Houssam-Eddine Zahaf, Giuseppe Lipari, Luca Abeni RTNS’17
Elastic Task Model For Adaptive Rate Control
Limited-Preemption Scheduling of Sporadic Tasks Systems
Ch 4. Periodic Task Scheduling
Presentation transcript:

Response-Time Analysis for globally scheduled Symmetric Multiprocessor Platforms Real-Time Systems Laboratory RETIS Lab Marko Bertogna, Michele Cirinei RTSS’07

Overview Multiprocessor global scheduling Existing schedulability tests for global schedulers Limits of existing techniques Extending Response Time Analysis to multiprocessor systems: Generic work-conserving schedulers Global EDF Global FP Simulations and conclusions

Global scheduling on SMP CPU1 CPU2 CPU3 Global queue (ordered according to a given policy)    The first m tasks are scheduled upon the m CPUs     

 Global scheduling on SMP CPU1 CPU2 CPU3   When a task finishes its execution, the next one in the queue is scheduled on the available CPU            Global queue (ordered according to a given policy)

Global scheduling on SMP CPU1 CPU2 CPU3   When a higher priority task arrives, it preempts the task with lowest priority among the executing ones               Global queue (ordered according to a given policy)

Global scheduling on SMP CPU1 CPU2 CPU3   When another task ends its execution, the preempted task can resume its execution                Task    “migrated” from CPU3 to CPU1 Global queue (ordered according to a given policy)

Single system-wide queue instead of multiple per-processor queues: CPU1 CPU2 CPU3         Global scheduling properties CPU1 CPU2 CPU3        Global schedulingPartitioned approach

Global scheduling advantages Advantages of global schedulers w.r.t. partitioning algorithms: Load automatically balanced More efficient handling of overload conditions More flexible reclaiming of unused bandwidth Easier re-scheduling Lower number of preemptions (but need to limit migration cost)

On-line scheduling problem for global schedulers Limited performances of classical algorithms (EDF, RM, etc.) Pfair optimal only for implicit deadlines (D i = T i ) No optimal algorithm known for more general task models Many hybrid solutions proposed (EDF-US, RM- US, fpEDF, EDZL, etc.)

Schedulability problem for global scheduling All known exact tests are computationally intractable for non-trivial task sets Many different sufficient schedulability tests Big gap from necessary and sufficient conditions  difficult to “compare” the various scheduling policies Need to reduce this schedulability gap

Considered task model Periodic and sporadic tasks: = (C i,D i,T i ) Constrained deadlines: D i ≤ T i Platform composed by m identical processors Work-conserving global schedulers Work-conserving scheduling policy: a processor is never idled when a task is ready to execute.

Existing schedulability tests for work- conserving global policies Fixed task priority: Andersson et al.: utilization bound (RTSS’01), later improved and extended for constrained deadlines by Bertogna et al. (OPODIS’05) Baker: demand-based polynomial test (RTSS’03, JTCC’06 and JEC’07) Fisher, Baruah: load-based pseudo-polynomial tests (IASTED’06, OPODIS’07, ICDCN’08) Dynamic task priority: Goossens et al.: EDF utilization bound (RTSJ’03) (U tot ≤ m(1-U max )+U max )) later extended for arbitrary deadlines Baker: demand-based polynomial test (RTSS’03 and TPDS’07) Bertogna et al.: demand-based ploynomial test (ECRTS’05) Fisher, Baruah: load-based tests (ECRTS’07, RTSS’07)

Existing schedulability tests for work- conserving global policies Hybrid algorithms: Srinivasan, Baruah: bound for EDF-US (IPL’02) generalized by Baruah’s bound for fpEDF (U tot ≤ ) valid for implicit deadlines (TC’04) Cirinei, Baker: EDZL demand-based polynomial test (ECRTS’07) Dynamic job priority: Pfair (U tot ≤ m, valid only for implicit deadlines) Andersson, Tovar: EKG for implicit deadlines (RTCSA’06) Feasibility results: Fisher, Baruah: load based pseudo-polynomial test (ECRTS’06 improved in ECRTS’07) Baker, Cirinei: load-based pseudo-polynomial necessary test (RTSS’06)

Our approach All existing schedulability tests have poor performances A better analysis of worst-case situations is needed Refine the estimation of the maximum interference a task can impose on other taks Apply Response Time Analysis (RTA) to multiprocessor systems; then check if WCRT i ≤ D i for all tasks

RTA for Uniprocessors The synchronous arrival of all tasks is a critical instant: we can compute the worst-case interferences considering that situation. ……… Synchronous arrivals Jobs released as soon as permitted

RTA for Uniprocessors For FP, the worst-case response time of a task is given by the first instance released at a critical instant For EDF, it is given by an instance in a busy interval starting with a critical instant With these observations it is possible to compute the WCRT of all tasks. Example: for FP, the WCRT of a task k is given by the fixed point of:

And for Multiprocessor? For global schedulers, things are much more difficult: The synchronous arrival of tasks doesn’t represent a critical instant. Difficult to find a worst-case situation in which to compute the maximum response times. Need to introduce some pessimistic assumptions to make things easier

Introducing the interference I k = Total interference suffered by task  k I k i = Interference of task  i on task  k kk kk kk CPU1 CPU2 CPU3 rkrk r k +R k Ik2Ik2 Ik1Ik1 Ik2Ik2 Ik3Ik3 Ik4Ik4 Ik5Ik5 Ik6Ik6 Ik8Ik8 Ik5Ik5 Ik3Ik3 Ik7Ik7 Ik3Ik3

Limiting the interference IDEA: It is sufficient to consider at most the portion R k -C k +1 of each term I i,k in the sum It can be proved that WCRT k is given by the fixed point of: kk kk kk CPU1 CPU2 CPU3 rkrk r k +R k Ik2Ik2 Ik1Ik1 Ik2Ik2 Ik3Ik3 Ik4Ik4 Ik5Ik5 Ik6Ik6 Ik8Ik8 Ik5Ik5 Ik3Ik3 Ik7Ik7 Ik3Ik3

Bounding the interference Exactly computing the interference is complex Pessimistic assumptions: 1.Bound the interference of a task with the workload:. 2.Use an upper bound on the workload.

Improving the estimation of the workload using slack values Consider a situation in which: The first job executes as close as possible to its deadline Successive jobs execute as soon as possible where: CiCi L DiDi CiCi CiCi CiCi TiTi εiεi (# jobs excluded the last one) (last job)

RTA for generic global schedulers An upper bound on the WCRT of task k is given by the fixed point of R k in the iteration: The slack of task k is at least: RkRk SkSk

Improving the estimation of the workload using slack values Consider a situation in which: The first job executes as close as possible to its deadline Successive jobs execute as soon as possible where: CiCi L DiDi CiCi CiCi CiCi TiTi εiεi (# jobs excluded the last one) (last job)

Improving the estimation of the workload using slack values Consider a situation in which: The first job executes as close as possible to its deadline Successive jobs execute as soon as possible where: CiCi L DiDi CiCi CiCi CiCi TiTi SiSi

RTA for generic global schedulers An upper bound on the WCRT of task k can be given by the fixed point of R k in the iteration: If a fixed point R k ≤ D k is reached for every task k in the system, the task set is schedulable with any work- conseving global scheduler.

Iterative schedulability algorithm 1.All slacks initialized to zero 2.Compute slack lower bound for tasks 1,…,n –if higher than old value  update slack bound –If lower, do nothing 3.If all tasks have a positive slack lower bound  return success 4.If no slack has been updated for tasks 1,…,n  return fail 5.Otherwise, return to point 2

Refining the analysis for particular policies We can exploit further information on the scheduling algorithm in use to tighten the bounds on interference and workload Refined analysis for: –Fixed Priority –EDF

RTA for Fixed Priority The interference on higher priority tasks is always null: For a system scheduled with FP, an upper bound on the WCRT of task k can be given by the fixed point of R k in the iteration: 2. 1.

RTA for EDF Still valid the bound: A different bound can be derived analyzing the worst-case workload in a situation in which: The interfering and interfered tasks have a common deadline All jobs execute as late as possible CiCi DkDk DiDi CiCi CiCi TiTi SiSi with: and :

RTA for EDF For a system scheduled with EDF, an upper bound on the WCRT of task k can be given by the fixed point of R k in the iteration: If a fixed point R k ≤ D k is reached for every task k in the system, the task set is schedulable with global EDF.

Complexity Pseudo-polynomial complexity. Depends on the order in which the slack lower bounds are updated. We verified the schedulability of millions of task sets in a few minutes on a normal device. Test particularly fast for Fixed Priority systems: at most one slack update per task, if slacks are updated in decreasing priority order.

Experimental results for EDF 2 processors Constrained deadlines task sets generated Our test is constantly superior at all utilizations generated task sets our test Improvement over existing solutions Task set utilization task sets Bertogna et al.’05 Baker et al.’07 Goossens et al.’03 RTA-EDF Total task sets

Experimental results for FP 2 processors Constrained deadlines task sets generated Our test is constantly superior at all utilizations generated task sets our test Task set utilization task sets Density bound Baker et al.’07 Bertogna et al.’05 RTA-FP Total task sets

FP vs EDF 4 processors Constrained deadlines task sets generated our FP test is constantly superior to all tests at every utilization generated task sets our FP test Task set utilization task sets our EDF test Goossens et al.’03 RTA-EDF Baker et al.’07 RTA-FP Total task sets

Evaluations Our test behaves better than any existing polynomial and pseudo-polynomial schedulability test in literature However, it doesn’t dominate all of them Resource augmentation bound needed The test is also sustainable (probably a non- trivial resource augmentation bound can be achieved)

Conclusions Multiprocessor Real-Time systems are a promising field to explore. Still few existing results far from tight conditions. We contributed filling this gap. Future work: –Find tighter schedulability tests. –Use our techniques to analyze the efficiency of other scheduling algorithms (EDZL, EDF-US, FP-DS, etc). –Take into account exclusive resources access. –Integrate into Resource Reservation framework.

Marko Bertogna PhD student Real-Time Systems Laboratory RETIS Lab Thank you

Moore’s law effects Pentium P1 P2 P4 Pentium Tejas cancelled! P3 Hot-plate Nuclear Reactor STOP Clock speed limited to less than 4 GHz Leakage current 90nm Year Power (W)

Motivations Improve computing performances at reasonable power consumption. Multiprocessor-based architectures: –High-level computing: Intel’s Pentium D, Core 2 Duo, Itanium and Xeon; AMD’s Opteron, Quad FX and Athlon64 X2; etc. –Embedded market: TI’s OMAP, NXP’s Nexperia, STM’s Nomadik, ARM’s MPCore, Sony-IBM- Toshiba’s Cell, and many others. How to program these devices?

T Multiprocessor scheduling anomalies Scheduling problem is in general NP-hard. Schedulability problem is as well NP-hard. Dhall’s effect significantly degrades perfromances of classical scheduling algorithms. Synchronous instant is not “critical”. Only sufficient schedulability conditions. DEADLINE MISS U tot 1