Optimal number of processors in parallel processing of a single doacross loop for different execution times of iterations
暂无分享,去创建一个
In most of the past theoretical studies of the parallel processing of the loop, the discussion developed assuming that all execution times of the iterations are the same. Especially, the discussion is always developed under such an assumption for the doacross loop, which is the general loop processing model, including the doall and doserial loops. Considering the multiprocessor memory architectures at present and in the future, however, the following assumption seems more adequate.
In each of the processors participating in the loop processing, the execution times of the second and the following iterations are shorter than that of the first. Under this assumption, there exists the number of processors (called the optimal number of processors) that minimizes the loop processing time.
This paper considers the single doacross loop, and discusses the following loop processing: (1) after the delay time of d from the start of execution of the i-th iteration Ii, the next iteration Ii+1 is permitted; (2) the iteration that once started its execution is never preempted until the execution is completed; (3) for each processor participating in the loop processing, let the execution time for the first iteration be B, and that of the second and the following iterations be b. Then, d < b < B. This paper derives the optimal number of processors for the forementioned model.
[1] CONSTANTINE D. POLYCHRONOPOULOS,et al. Guided Self-Scheduling: A Practical Scheduling Scheme for Parallel Supercomputers , 1987, IEEE Transactions on Computers.
[2] Constantine D. Polychronopoulos,et al. Speedup Bounds and Processor Allocation for Parallel Programs on Multiprocessors , 1986, ICPP.