Presentation is loading. Please wait.

Presentation is loading. Please wait.

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

Similar presentations


Presentation on theme: "Response-Time Analysis for globally scheduled Symmetric Multiprocessor Platforms Real-Time Systems Laboratory RETIS Lab Marko Bertogna, Michele Cirinei."— Presentation transcript:

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

2 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

3 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     

4  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)

5 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)

6 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)

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

8 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)

9 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.)

10 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

11 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.

12 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)

13 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)

14 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

15 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

16 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:

17 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

18 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

19 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

20 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.

21 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)

22 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

23 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)

24 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

25 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.

26 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

27 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

28 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.

29 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 :

30 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.

31 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.

32 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

33 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

34 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

35 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)

36 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.

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

38 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)

39 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?

40 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


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

Similar presentations


Ads by Google