Linköping University, IDA, ESLAB

Slides:



Advertisements
Similar presentations
Feedback Control Real- time Scheduling James Yang, Hehe Li, Xinguang Sheng CIS 642, Spring 2001 Professor Insup Lee.
Advertisements

Feedback Control Real-Time Scheduling: Framework, Modeling, and Algorithms Chenyang Lu, John A. Stankovic, Gang Tao, Sang H. Son Presented by Josh Carl.
Real Time Scheduling.
CPE555A: Real-Time Embedded Systems
Towards Feasibility Region Calculus: An End-to-end Schedulability Analysis of Real- Time Multistage Execution William Hawkins and Tarek Abdelzaher Presented.
Simulation Where real stuff starts. ToC 1.What, transience, stationarity 2.How, discrete event, recurrence 3.Accuracy of output 4.Monte Carlo 5.Random.
AQM for Congestion Control1 A Study of Active Queue Management for Congestion Control Victor Firoiu Marty Borden.
1 of 12 May 3, 2000 Performance Estimation for Embedded Systems with Data and Control Dependencies Paul Pop, Petru Eles, Zebo Peng Department of Computer.
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.
Performance Analysis of Applications with Stochastic Task Execution Times Sorin Manolache, Petru Eles, Zebo Peng University of Linköping, Sweden {sorma,
1 Real-Time Queueing Network Theory Presented by Akramul Azim Department of Electrical and Computer Engineering University of Waterloo, Canada John P.
1 Memory and Time-Efficient Schedulability Analysis of Task Sets with Stochastic Execution Times Sorin Manolache, Petru Eles, Zebo Peng Department of Computer.
VOLTAGE SCHEDULING HEURISTIC for REAL-TIME TASK GRAPHS D. Roychowdhury, I. Koren, C. M. Krishna University of Massachusetts, Amherst Y.-H. Lee Arizona.
1 Performance Evaluation of Computer Networks: Part II Objectives r Simulation Modeling r Classification of Simulation Modeling r Discrete-Event Simulation.
Pipelines for Future Architectures in Time Critical Embedded Systems By: R.Wilhelm, D. Grund, J. Reineke, M. Schlickling, M. Pister, and C.Ferdinand EEL.
 1  Outline  stages and topics in simulation  generation of random variates.
Adaptive CSMA under the SINR Model: Fast convergence using the Bethe Approximation Krishna Jagannathan IIT Madras (Joint work with) Peruru Subrahmanya.
1 Performance Evaluation of Computer Systems and Networks Introduction, Outlines, Class Policy Instructor: A. Ghasemi Many thanks to Dr. Behzad Akbari.
Chapter 101 Multiprocessor and Real- Time Scheduling Chapter 10.
Real-Time Systems Mark Stanovich. Introduction System with timing constraints (e.g., deadlines) What makes a real-time system different? – Meeting timing.
Resource Mapping and Scheduling for Heterogeneous Network Processor Systems Liang Yang, Tushar Gohad, Pavel Ghosh, Devesh Sinha, Arunabha Sen and Andrea.
Generalized stochastic Petri nets (GSPN)
Modeling and Analysis of Printer Data Paths using Synchronous Data Flow Graphs in Octopus Ashwini Moily Under the supervision of Dr. Lou Somers, Prof.
OPERATING SYSTEMS CS 3530 Summer 2014 Systems and Models Chapter 03.
Introduction to Embedded Systems Rabie A. Ramadan 5.
Introductory Seminar on Research CIS5935 Fall 2008 Ted Baker.
1 Schedulability Analysis of Multiprocessor Real-Time Applications with Stochastic Task Execution Times Sorin Manolache, Petru Eles, Zebo Peng {sorma,
Distributed Process Scheduling- Real Time Scheduling Csc8320(Fall 2013)
Traffic Simulation L2 – Introduction to simulation Ing. Ondřej Přibyl, Ph.D.
Adding Dynamic Nodes to Reliability Graph with General Gates using Discrete-Time Method Lab Seminar Mar. 12th, 2007 Seung Ki, Shin.
Marilyn Wolf1 With contributions from:
CHaRy Software Synthesis for Hard Real-Time Systems
ECE 720T5 Fall 2012 Cyber-Physical Systems
OPERATING SYSTEMS CS 3502 Fall 2017
Learning Deep Generative Models by Ruslan Salakhutdinov
Introduction to Load Balancing:
Introduction to parallel programming
The Impact of Replacement Granularity on Video Caching
TÆMS-based Execution Architectures
A Study of Group-Tree Matching in Large Scale Group Communications
Wayne Wolf Dept. of EE Princeton University
Parallel Programming By J. H. Wang May 2, 2017.
CTMCs & N/M/* Queues.
Paul Pop, Petru Eles, Zebo Peng
Advanced Topic: Alternative Architectures Chapter 9 Objectives
Period Optimization for Hard Real-time Distributed Automotive Systems
Flavius Gruian < >
Gabor Madl1, Nikil Dutt1, Sherif Abdelwahed2
Fault and Energy Aware Communication Mapping with Guaranteed Latency for Applications Implemented on NoC Sorin Manolache, Petru Eles, Zebo Peng {sorma,
Optimizing Expected Time Utility in Cyber-Physical Systems Schedulers
 Real-Time Scheduling via Reinforcement Learning
Objective of This Course
Buffer Space Optimisation with Communication Mapping and Traffic Shaping for NoCs Sorin Manolache, Petru Eles, Zebo Peng Linköping University, Sweden.
Modeling and Simulation of TTEthernet
Networked Real-Time Systems: Routing and Scheduling
Multiprocessor and Real-Time Scheduling
COMP60621 Fundamentals of Parallel and Distributed Systems
CSE 373 Data Structures and Algorithms
 Real-Time Scheduling via Reinforcement Learning
Buffer Management for Shared-Memory ATM Switches
Sorin Manolache, Petru Eles, Zebo Peng {sorma, petel,
Javad Ghaderi, Tianxiong Ji and R. Srikant
{sorma, petel, Performance Analysis of Applications with Stochastic Task Execution Times Sorin Manolache, Petru Eles, Zebo Peng University.
Department of Electrical Engineering Joint work with Jiong Luo
Chapter 10 Multiprocessor and Real-Time Scheduling
{sorma, petel, Performance Analysis of Applications with Stochastic Task Execution Times Sorin Manolache, Petru Eles, Zebo Peng University.
CS703 - Advanced Operating Systems
Optimization of Real-Time Systems with Deadline Miss Ratio Constraints
CSE 373: Data Structures and Algorithms
COMP60611 Fundamentals of Parallel and Distributed Systems
Presentation transcript:

Linköping University, IDA, ESLAB Schedulability Analysis of Real-Time Systems with Stochastic Task Execution Times Sorin Manolache Linköping University, IDA, ESLAB

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

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

Outline Stochastic execution time model Contribution Problem formulation Exact solution Approximate solution Extensions Conclusions and future work

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

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

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

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)

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

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

Problem Formulation (2) Output: Ratio of missed deadlines per task graph Limitations: Non-preemption 15% 3%

Outline Stochastic execution time model Contribution Problem formulation Exact solution Approximate solution Extensions Conclusions and future work

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

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

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}

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

Analysis (1) [0, 3) [3, 5) [5, 6) [6, 9) [9, 10) [10, 12) [12, 15)

Influence of the Number of Tasks

Sliding Window Size

Influence of the Data Dependencies

Influence of the Instantiations

Outline Stochastic execution time model Contribution Problem formulation Exact solution Approximate solution Extensions Conclusions and future work

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

Approach Outline (2) Task graphs Modelling GSPN Approximation Coxian distribs CTMC constr. CTMC Results Analysis

Application Modelling (1) Task graphs Modelling Approximation GSPN Coxian distribs CTMC constr. CTMC Results Analysis

Application Modelling (2) B C F D

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

Approximation (1) Task graphs Modelling GSPN Approximation Coxian distribs CTMC constr. CTMC Results Analysis

Approximation (2) a1l1 a2l2 a3l3 (1-a1)l1 (1-a2)l2

CTMC Construction (1) Task graphs Modelling GSPN Approximation Coxian distribs CTMC constr. CTMC Results Analysis

CTMC Construction (2) X, Y X, Y X SMP Approximation of the SMP X Approximation of X

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

Analysis Time vs. Number of Tasks

Analysis Time vs. Number of Procs

Growth with Number of Stages

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%

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

Stochastic process size Individual Task Periods (2) Tasks Stochastic process size Increase Identical Individual 12 922.14 1440.42 56.20% 15 2385.85 3153.47 32.17% 18 2034.00 4059.42 99.57% 21 14590.66 17012.80 16.60% 24 19840.19 35362.85 78.23% 27 42486.28 64800.19 52.52%

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

Stochastic process size Deadlines < Periods (2) Tasks Stochastic process size Increase d=p d<p 12 1440.42 2361.38 63.93% 15 3153.37 3851.90 22.14% 18 4059.42 5794.33 42.73% 21 11636.29 24024.35 106.46% 24 35142.60 48964.80 39.33% 27 35044.30 40218.60 14.76%

Stochastic process size Rejection vs. Discarding (1) Tasks Stochastic process size Increase Discarding Rejection 12 2223.52 95789.23 42.07 15 7541.00 924548.19 121.60 18 4864.60 364146.60 73.85 21 18425.43 1855073.00 99.68 24 14876.16 1207253.83 80.15 27 55609.54 5340827.45 95.04

Stochastic process size Rejection vs. Discarding (2) Tasks Stochastic process size Increase Discarding Rejection 12 8437.85 18291.23 1.16 15 27815.28 90092.47 2.23 18 24089.19 194300.66 7.06 21 158859.21 816296.36 4.13 24 163593.31 845778.31 4.17 27 223088.90 1182925.81 4.30

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

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)

Analysis (2) [0, 2) [2, 4) [4, 6) [6, 8)

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