Static determination of probabilistic execution times

Most previous research done in probabilistic schedulability analysis assumes a known distribution of execution times for each task of a real-time application. This is however not trivial to determine it with a high level of confidence. Methods based on measurements are often biased since not in general exhaustive on all the possible execution paths, whereas methods based on static analysis are mostly worst-case execution time - WCET-oriented. Using static analysis, this work proposes a method to obtain probabilistic distributions of execution times. It assumes that the given real time application is divided into multiple tasks, whose source code is known. Ignoring in this paper hardware considerations and based only on the source code of the tasks, the proposed technique allows designers to associate to any execution path an execution time and a probability to go through this path. A source code example is presented to illustrate the method.

[1]  Wa Halang,et al.  REAL-TIME SYSTEMS .1. , 1990 .

[2]  David B. Whalley,et al.  Integrating the timing analysis of pipelining and instruction caching , 1995, Proceedings 16th IEEE Real-Time Systems Symposium.

[3]  Per Stenström,et al.  An Integrated Path and Timing Analysis Method based on Cycle-Level Symbolic Execution , 1999, Real-Time Systems.

[4]  Lee C. Potter,et al.  Statistical prediction of task execution times through analytic benchmarking for scheduling in a heterogeneous environment , 1999, Proceedings. Eighth Heterogeneous Computing Workshop (HCW'99).

[5]  Frank Müller,et al.  Timing Analysis for Instruction Caches , 2000, Real-Time Systems.

[6]  Guillem Bernat,et al.  Scope-tree: a program representation for symbolic worst-case execution time analysis , 2002, Proceedings 14th Euromicro Conference on Real-Time Systems. Euromicro RTS 2002.

[7]  Chang-Gun Lee,et al.  Stochastic analysis of periodic real-time systems , 2002, 23rd IEEE Real-Time Systems Symposium, 2002. RTSS 2002..

[8]  Jane W.-S. Liu Real-Time Systems , 2000, Encyclopedia of Algorithms.

[9]  Isabelle Puaut,et al.  Worst Case Execution Time Analysis for a Processor with Branch Prediction , 2004, Real-Time Systems.

[10]  Isabelle Puaut,et al.  A modular and retargetable framework for tree-based WCET analysis , 2001, Proceedings 13th Euromicro Conference on Real-Time Systems.

[11]  Oded Goldreich,et al.  On the theory of average case complexity , 1989, STOC '89.

[12]  Alan Burns,et al.  A Probabilistic Framework for Schedulability Analysis , 2003, EMSOFT.

[13]  Arnold O. Allen Probability, Statistics, and Queueing Theory , 1978 .

[14]  Peter P. Puschner,et al.  Calculating the maximum execution time of real-time programs , 1989, Real-Time Systems.

[15]  Alan Burns,et al.  Guest Editorial: A Review of Worst-Case Execution-Time Analysis , 2000, Real-Time Systems.

[16]  Guillem Bernat,et al.  WCET analysis of probabilistic hard real-time systems , 2002, 23rd IEEE Real-Time Systems Symposium, 2002. RTSS 2002..

[17]  Alan Burns,et al.  Statistical analysis of WCET for scheduling , 2001, Proceedings 22nd IEEE Real-Time Systems Symposium (RTSS 2001) (Cat. No.01PR1420).

[18]  Petru Eles,et al.  Memory and time-efficient schedulability analysis of task sets with stochastic execution time , 2001, Proceedings 13th Euromicro Conference on Real-Time Systems.

[19]  Nimal Nissanke,et al.  Probabilistic Analysis of Multi-processor Scheduling of Tasks with Uncertain Parameters , 2003, RTCSA.