Measurement based analysis of temporal behaviour as support for scheduling problems in parallel and distributed real-time systems

Static analysis, based on scheduling techniques, provides the most typical approach for validation of real-time systems. However, in the case of complex real-time systems such as parallel and distributed systems, many simplifications are made in order to make analysis tractable. This means that even if the system can be statically validated, the real behaviour of the system in execution may be different enough from its theoretical behaviour to make it invalid. In these cases, an analysis based on measurement of the system in execution constitutes an invaluable aid to the static analysis. This article describes a methodology for the analysis of the temporal behaviour of parallel and distributed real-time systems with end-to-end constraints. The analysis is based on the measurement of a prototype of the system in execution and is supported by a behavioural model. The main components of the model are the sequences of activities throughout the system tasks (transactions), which are carried out in response to input events, causing the corresponding output events. Thus, the temporal behaviour of the system is viewed as a set of real-time transactions competing for the available resources. This article also includes experimental results of applying the methodology to the analysis of a well-known case study.

[1]  Tadao Murata,et al.  Petri nets: Properties, analysis and applications , 1989, Proc. IEEE.

[2]  Francisco J. Suárez,et al.  Behavioural Analysis Methodology Oriented to Configuration of Parallel, Real-Time and Embedded Systems , 1998, VECPAR.

[3]  Kang G. Shin,et al.  Modeling of Concurrent Task Execution in a Distributed System for Real-Time Control , 1987, IEEE Transactions on Computers.

[4]  C. Murray Woodside,et al.  A Three-View Model for Performance Engineering of Concurrent Software , 1995, IEEE Trans. Software Eng..

[5]  Derek J. Hatley,et al.  Strategies for Real-Time System Specification , 1987 .

[6]  R. Puigjaner,et al.  Performance issues of real-time systems design , 1994 .

[7]  Krishna M. Kavi,et al.  Real-time systems design methodologies: An introduction and a survey , 1992, J. Syst. Softw..

[8]  Kwei-Jay Lin,et al.  Distributed pinwheel scheduling with end-to-end timing constraints , 1995, Proceedings 16th IEEE Real-Time Systems Symposium.

[9]  Thomas E. Anderson,et al.  Quartz: a tool for tuning parallel program performance , 1990, SIGMETRICS '90.

[10]  Richard Gerber,et al.  Guaranteeing Real-Time Requirements With Resource-Based Calibration of Periodic Processes , 1995, IEEE Trans. Software Eng..

[11]  Gerhard Fohler,et al.  Static scheduling of pipelined periodic tasks in distributed real-time systems , 1997, Proceedings Ninth Euromicro Workshop on Real Time Systems.

[12]  Jun Sun,et al.  Bounding the end-to-end response time in multiprocessor real-time systems , 1995, Proceedings of Third Workshop on Parallel and Distributed Real-Time Systems.

[13]  David A. Poplawski Synthetic Models of Distributed-Memory Parallel Programs , 1991, J. Parallel Distributed Comput..

[14]  Connie U. Smith,et al.  Software Performance Engineering: A Case Study Including Performance Comparison with Design Alternatives , 1993, IEEE Trans. Software Eng..

[15]  Connie U. Smith,et al.  Performance Engineering of Software Systems , 1990, SIGMETRICS Perform. Evaluation Rev..

[16]  J. van Leeuwen,et al.  Vector and Parallel Processing – VECPAR’98 , 1998, Lecture Notes in Computer Science.

[17]  Nick Roussopoulos,et al.  Performance Comparison of Three Modern DBMS Architectures , 1993, IEEE Trans. Software Eng..

[18]  Ken Shumate,et al.  Designing large real-time systems with Ada , 1988, CACM.

[19]  Seongsoo Hong,et al.  An engineering approach to decomposing end-to-end delays on a distributed real-time system , 1996, Proceedings of the 4th International Workshop on Parallel and Distributed Real-Time Systems.

[20]  John A. Stankovic Real-time and embedded systems , 1996, CSUR.

[21]  C. A. R. Hoare,et al.  Communicating sequential processes , 1978, CACM.