Download presentation
Presentation is loading. Please wait.
1
Linköping University, IDA, ESLAB
Schedulability Analysis of Real-Time Systems with Stochastic Task Execution Times Sorin Manolache Linköping University, IDA, ESLAB
2
System-Level Design Process
Informal specification ok ok Modelling System model Estimation Functional simulation Formal verification Simulation Analysis Mapping System architecture Architecture selection P1 P2 Scheduling Mapped and scheduled model Lower levels of design
3
Real-Time Systems Soft RTS Hard RTS
Occasionally missing a deadline is not desired but accepted Analysis Can be based on other execution time models Provides a feasibility degree Focus of this thesis Hard RTS Missing a deadline is unaccaptable Analysis Is based on the WCET Provides yes-no answers Established methods
4
Outline Stochastic execution time model Contribution
Problem formulation Exact solution Approximate solution Extensions Conclusions and future work
5
Task Execution Time Variability
Application characteristics (data dependent loops and branches) Architectural factors (pipeline hazards, cache misses) External factors (network load) Insufficient knowledge Alternative Models: Average Interval Stochastic
6
Why not WCET? Soft real-time applications (missing a deadline is acceptable) WCET becomes pessimistic Leads to processor under-utilization fast WCET probability density computation time slow WCET computation time
7
Related Work L. Abeni and G. Butazzo, “Integrating Multimedia Applications in Hard Real-Time Systems”, 1998 J. Kim and K.G. Shin, “Execution Time Analysis of Communicating Tasks in Distributed Systems”, 1996 A. Kalavade, P. Moghe, “A Tool for Performance Estimation for Networked Embedded Systems”, 1998 J. Lehoczky, “Real Time Queueing Systems”, 1996 T. Tia et al., “Probabilistic Performance Guarantee for Real-Time Tasks with Varying Computation Times”, 1995 T. Zhou et al., “A Probabilistic Performance Metric for Real-Time System Design”, 1999
8
Limitation of Previous Work
Monoprocessor systems Particular classes of task execution time probability density functions (exponential) Discrete sets of possible execution times Particular scheduling policies (FIFO, fixed priority) Restricted application classes (independent tasks) Analysis applicable under particular circumstances (heavy traffic)
9
Contribution An exact method for schedulability analysis, efficiently applicable but no limited to monoprocessor systems An approximate method for schedulability analysis, trading analysis efficiency for result accuracy Both methods are applicable on systems with as unrestricted assumptions as possible Experiments and method-specific extensions
10
Problem Formulation (1)
Input: Set of task graphs, periodic tasks, deadlines less than or equal to the periods, statically mapped Set of execution times probability density functions (continuous) Scheduling policy Designer controlled discarding (rejection) execution time probab
11
Problem Formulation (2)
Output: Ratio of missed deadlines per task graph Limitations: Non-preemption 15% 3%
12
Outline Stochastic execution time model Contribution
Problem formulation Exact solution Approximate solution Extensions Conclusions and future work
13
Analysis Method Relies on the analysis of the underlying stochastic process A state of the process should capture enough information to be able to generate the next states and to compute the corresponding transition probabilities
14
Group as many states as possible in equivalent states
Naive Stochastic Process 3 5 A, 0, {B} B, t0, {} B, tk, {A} B, tk+1, {A} B, t1, {} Number of next states equals the number of possible execution times (infinitely many) Group as many states as possible in equivalent states
15
PMIs A PMI is delimited by the arrival times and deadlines
The sorting of the tasks according to their priorities is unique inside of a PMI t0 t1 tk tk+1 3 5 6 9 10 12 15 A, 0, {B} B, tk, {A} B, tk+1, {A} B, t0, {} B, t1, {} B, [0, 3), {} B, [3, 5), {A}
16
Stochastic Process s1 execA s2 s3 s6 s4 s5 execB 3 5 3 A, [0, 3), {B}
A, [0, 3), {B} s1 execA B, [0, 3), {} s2 B, [3, 5), {A} s3 A, [5, 6), {B} s6 -, [0, 3), {} s4 A, [3, 5), {} s5 5 3 execB
17
Analysis (1) [0, 3) [3, 5) [5, 6) [6, 9) [9, 10) [10, 12) [12, 15)
18
Influence of the Number of Tasks
19
Sliding Window Size
20
Influence of the Data Dependencies
21
Influence of the Instantiations
22
Outline Stochastic execution time model Contribution
Problem formulation Exact solution Approximate solution Extensions Conclusions and future work
23
Approximate the ETPDFs by functions of exponential distributions
Limitations of the Exact Solution The number of states increases dramatically in the case of multiprocessor systems It has to perform as many convolutions as there exist states in the stochastic process (time) It has to store as many probability distributions as there exist states in the sliding window (memory) Approximate the ETPDFs by functions of exponential distributions A much larger Markov chain is obtained, but it requires less resources to solve
24
Approach Outline (2) Task graphs Modelling GSPN Approximation
Coxian distribs CTMC constr. CTMC Results Analysis
25
Application Modelling (1)
Task graphs Modelling Approximation GSPN Coxian distribs CTMC constr. CTMC Results Analysis
26
Application Modelling (2)
B C F D
27
Firing delay equals execution time
Application Modelling (3) A E B C D F A C F D B E firing delay probab Firing delay equals execution time
28
Approximation (1) Task graphs Modelling GSPN Approximation
Coxian distribs CTMC constr. CTMC Results Analysis
29
Approximation (2) a1l1 a2l2 a3l3 (1-a1)l1 (1-a2)l2
30
CTMC Construction (1) Task graphs Modelling GSPN Approximation
Coxian distribs CTMC constr. CTMC Results Analysis
31
CTMC Construction (2) X, Y X, Y X SMP Approximation of the SMP X
Approximation of X
32
Construction of the CTMC
The global generator of the Markov chain becomes then M is expressed in terms of small matrices and can be generated on the fly – memory savings
33
Analysis Time vs. Number of Tasks
34
Analysis Time vs. Number of Procs
35
Growth with Number of Stages
36
Accuracy Stages 2 3 4 5 Relative error 8.7% 4.1% 1.04% 0.4%
Accuracy vs analysis complexity compared to an exact approach presented in previous work Stages 2 3 4 5 Relative error 8.7% 4.1% 1.04% 0.4%
37
Individual Task Periods (1)
360 120 A 2 15 9 B 4 C 6 G 3 H 5 J 9 D 12 I 15 E 60 F 24
38
Stochastic process size
Individual Task Periods (2) Tasks Stochastic process size Increase Identical Individual 12 922.14 56.20% 15 32.17% 18 99.57% 21 16.60% 24 78.23% 27 52.52%
39
Deadlines < Periods (1)
Deadlines shorter than periods lead to an increase in the number of PMIs 3 5 6 9 10 12 15 2 3 4 5 6 8 9 10 11 12 14 15
40
Stochastic process size
Deadlines < Periods (2) Tasks Stochastic process size Increase d=p d<p 12 63.93% 15 22.14% 18 42.73% 21 106.46% 24 39.33% 27 14.76%
41
Stochastic process size
Rejection vs. Discarding (1) Tasks Stochastic process size Increase Discarding Rejection 12 42.07 15 121.60 18 73.85 21 99.68 24 80.15 27 95.04
42
Stochastic process size
Rejection vs. Discarding (2) Tasks Stochastic process size Increase Discarding Rejection 12 1.16 15 2.23 18 7.06 21 4.13 24 4.17 27 4.30
43
Conclusions Exact solution for the schedulability analysis. Mainly applicable to monoprocessors systems Approximation approach to performance analysis of multiprocessor real-time applications Larger scale applications can be analysed due to the PMI and sliding window approache (exact solution) and due to an efficient scheme to store the underlying stochastic process (approximate solution) Provides the possibility to trade-off analysis speed and memory demand with analysis accuracy
44
Future Work Better support for design space exploration (more performance indicators for diagnosis) More efficient extraction of the performance indicators (exploiting symetries at the application and modelling level) Relaxation of the assumptions (inspecting different mapping possibilities)
45
Analysis (2) [0, 2) [2, 4) [4, 6) [6, 8)
46
Stochastic Process execA execB z2 z3 s1 s2 s3 z2*execB s6 s4 s5 3 5 3
5 3 3 5 execA execB 3 z2 3 z3 A, [0, 3), {B} s1 B, [0, 3), {} s2 B, [3, 5), {A} s3 3 5 8 z2*execB A, [5, 6), {B} s6 -, [0, 3), {} s4 A, [3, 5), {} s5
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.