Optimal distribution and scheduling of parallel workloads with synchronization delays

Optimal program module distributions are determined for a parallel workload to be run on the processors of a homogeneous multiple-processor system. The optimization minimizes a weighted combination of cost and performance metrics: workload completion time, processors total idle time, execution cost, communication cost and load imbalance. The time-related metrics are formulated based on a realistic modeling of the serial and concurrent time activities of the system processors including synchronisation delays. Exact analysis leads to closed-form analytical criteria and efficient algorithms for determining the optimal load distributions which are found to be of four types: balancing all modules over all processors, assigning all modules to one processor, balancing all modules over some processors, and balancing all modules over all except one processor with a peak load. The algorithms have linear time-complexity. For a given optimal load distribution, further optimization leads to the elimination of sync delay for the busiest processor by selecting a specific module assignment.<<ETX>>

[1]  Emile Haddad Optimizing the Parallel Execution Time of Homogeneous Random Workloads , 1991, ICPP.

[2]  Jacob A. Abraham,et al.  Load Balancing in Distributed Systems , 1982, IEEE Transactions on Software Engineering.

[3]  E. K. Haddad A criterion for the optimal assignment of program modules in parallel and distributed systems , 1990 .

[4]  E. K. Haddad Optimal partitioning of random workloads in homogeneous multiprocessor and distributed systems , 1990, Proceedings of the Second IEEE Symposium on Parallel and Distributed Processing 1990.

[5]  Emile Haddad Partitioned Load Allocation for Minimum Parallel Processing Execution Time , 1989, ICPP.

[6]  Bipin Indurkhya,et al.  Optimal partitioning of randomly generated distributed programs , 1986, IEEE Transactions on Software Engineering.

[7]  David M. Nicol,et al.  Optimal Partitioning of Random Programs Across two Processors , 1989, IEEE Trans. Software Eng..

[8]  Harold S. Stone,et al.  Multiprocessor Scheduling with the Aid of Network Flow Algorithms , 1977, IEEE Transactions on Software Engineering.

[9]  Emile Haddad Optimal Distribution of Random Workloads Over Heterogeneous Processors with Loading Constraints , 1992, ICPP.

[10]  Emile Haddad,et al.  Variation of Parallel Processing Time with Continuously Partitioned Load Allocation , 1989, PPSC.

[11]  Virginia Mary Lo,et al.  Heuristic Algorithms for Task Assignment in Distributed Systems , 1988, IEEE Trans. Computers.

[12]  Shahid H. Bokhari,et al.  Partitioning Problems in Parallel, Pipelined, and Distributed Computing , 1988, IEEE Trans. Computers.