Issue No. 04 - April (1998 vol. 9)
DOI Bookmark: http://doi.ieeecomputersociety.org/10.1109/71.667896
<p><b>Abstract</b>—The way the processes in a parallel program are scheduled on the processors of a multiprocessor system affects the performance significantly. Finding a schedule of processes to processors which results in minimum completion time is NP-hard. Therefore, one has to resort to heuristic schedules. However, it is often difficult to determine if a specific schedule is close to the optimal case or if it is worthwhile to look for other schedules.</p><p>Based on information from previous executions of the parallel program, we present a formula for an upper bound on the minimum completion time of the program. The bound is a function of a set of parameters. Some of these parameters are obtained from the previous executions of the program and the others describe the target multiprocessor architecture for which we want to bound the minimum completion time. The bound is optimal when it is based on information from one previous execution. Using these results, we are able to decide if a certain schedule is close to optimal or if it is worthwhile to look for other schedules. This is demonstrated by evaluating the completion time of a specific schedule of a particular program. The proofs used for obtaining the bound are based on program transformations and combinatorial mathematics.</p>
Parallel program scheduling, optimal performance bounds, multiprocessors with clusters, synchronizing processes, information from previous executions.
H. Lennerstad and L. Lundberg, "Using Recorded Values for Bounding the Minimum Completion Time in Multiprocessors," in IEEE Transactions on Parallel & Distributed Systems, vol. 9, no. , pp. 346-358, 1998.