Specification of deterministic execution timing schema for parallel programs on a multiprocessor
Debashis Saha, S.K. Dutta · 2002
To guarantee the correctness of hard real-time software systems, it is necessary to have a priori knowledge of the deterministic execution times of the system components. Timing schema are formulae based on source program elements to calculate the execution time of programs. Deterministic timing schema or formulae are proposed in this paper for predicting the best and worst case execution times of parallel and distributed programs. The total execution time is computed from the schema provided for a variety of parallel program constructs for shared variable interactions through critical sections and, general semaphores for distributed message passing and remote procedure calls. As an initial attempt to validate the proposition, we have conducted a series of experiments on a shared memory multiprocessor (tightly coupled) system. In one of such experiments involving simplest process structures, where no process interactions occur except to synchronize the initiation and termination of processes, the timing schema based approach has been shown to exhibit safe and reasonably tight predictions. The representative implementations that obey the schema and the methods of incorporating some of the underlying hardware contentions and indeterminacies have also been studied. Predictable timing behaviour in concurrent systems is indeed a possibility using the schema approach.>