Distributed Pipeline Scheduling: A Framework for Distributed, Heterogeneous Real-Time System Design

This paper describes the distributed pipeline scheduling framework that provides a systematic approach to designing distributed, heterogeneous real-time systems. This paper formalizes distributed pipelining scheduling by providing a set of abstractions and transformations to map real-time applications to system resources, to create highly efficient and predictable systems, and to decompose the very complex multiresource system timing analysis problem into a set of simpler application stream and single-resource schedulability problems to ascertain that all real-time application timing requirements are met. Distributed pipeline scheduling includes support for distributed, heterogeneous system resources and diverse local scheduling policies, global scheduling policies for efficient resource utilization, flow-control mechanisms for predictable system behaviour, and a range of system reconfiguration options to meet application timing requirements. An audio/video example is used in this paper to demonstrate the power and utility of distributed pipeline scheduling. 1. INTRODUCTIO N It is not uncommon for serious performance problems to arise in the development of distributed, heterogeneous real-time systems. Part of the problem has been due to the lack of a systematic approach for designing these systems. Discrete-event simulation and timeline construction approaches tend to scale poorly, with the complexity of the model approaching the complexity of the system under development. These models become unwieldy, insufficiently maintained and are then discarded. As a result, the performance properties of the final system diverge greatly from initial goals. This paper presents a framework, denoted the distributed pipeline scheduling framework, for designing distributed, heterogeneous real-time systems that execute in a pipelined, efficient and predictable manner. Furthermore, analysis techniques presented in the framework decompose the very complex multi-resource system-timing analysis problem into a set of simpler single-resource, single-application stream problems that can accurately predict the performance properties of the resulting system design and can be used to determine that all real-time application timing requirements are met. If application timing requirements are not met, the framework also delineates how manipulating system configuration parameters can attempt to meet the timing requirements. Figure 1 provides an overview of the distributed pipeline scheduling framework. Each logical application stream model (LASM) and optional parameters list (OP) capture a real-time application's timing and processing requirements. The LASM is composed of a set of precedence-constraint processing steps. Each processing step is an unit of execution on any resource, e.g. a thread is a processing step executing on a processor-type resource. The target platform model (TPM) represents a connected set of system resources, each of which can be found in the library of single-resource scheduling models.

[1]  Jay K. Strosnider,et al.  Engineering and analysis of real-time operating systems , 1993 .

[2]  Riccardo Bettati,et al.  Algorithms for end-to-end scheduling to meet deadlines , 1990, Proceedings of the Second IEEE Symposium on Parallel and Distributed Processing 1990.

[3]  Ding-Zhu Du,et al.  Resource management for continuous multimedia database applications , 1994, 1994 Proceedings Real-Time Systems Symposium.

[4]  Srinivasan Keshav,et al.  Comparison of rate-based service disciplines , 1991, SIGCOMM '91.

[5]  Dinesh C Verma,et al.  Guaranteed Performance Communication in High Speed Networks , 1991 .

[6]  Srinivasan Keshav,et al.  Rate controlled servers for very high-speed networks , 1990, [Proceedings] GLOBECOM '90: IEEE Global Telecommunications Conference and Exhibition.

[7]  Shirish Sharad Sathaye Scheduling real-time traffic in packet-switched networks , 1993 .

[8]  Jay K. Strosnider,et al.  Engineering and Analysis of Fixed Priority Schedulers , 1993, IEEE Trans. Software Eng..

[9]  Wei Zhao,et al.  Guaranteeing synchronous messages with arbitrary deadline constraints in an FDDI network , 1993, 1993 18th Conference on Local Computer Networks.

[10]  Kevin Jeffay The real-time producer/consumer paradigm: a paradigm for the construction of efficient, predictable real-time systems , 1993, SAC '93.

[11]  Jay K. Strosnider,et al.  Distributed pipeline scheduling: end-to-end analysis of heterogeneous, multi-resource real-time systems , 1995, Proceedings of 15th International Conference on Distributed Computing Systems.

[12]  Jay K. Strosnider,et al.  A generalized admissions control strategy for heterogeneous, distributed multimedia systems , 1995, MULTIMEDIA '95.

[13]  S. Jamaloddin Golestani Congestion-free transmission of real-time traffic in packet networks , 1990, Proceedings. IEEE INFOCOM '90: Ninth Annual Joint Conference of the IEEE Computer and Communications Societies@m_The Multiple Facets of Integration.

[14]  John A. Stankovic,et al.  Dynamic end-to-end guarantees in distributed real time systems , 1994, 1994 Proceedings Real-Time Systems Symposium.

[15]  Domenico Ferrari,et al.  Rate-Controlled Service Disciplines , 1994, J. High Speed Networks.

[16]  Richard Gerber,et al.  Guaranteeing end-to-end timing constraints by calibrating intermediate processes , 1994, 1994 Proceedings Real-Time Systems Symposium.

[17]  Domenico Ferrari,et al.  Rate-controlled static-priority queueing , 1993, IEEE INFOCOM '93 The Conference on Computer Communications, Proceedings.

[18]  John P. Lehoczky,et al.  Fixed priority scheduling periodic tasks with varying execution priority , 1991, [1991] Proceedings Twelfth Real-Time Systems Symposium.