Title :
Parallel processor balance through loop spreading
Author :
Wu, Youfeng ; Lewis, Ted
Author_Institution :
Sequent Computer Systems, Inc, Beaverton, OR
Abstract :
When the number of processors P is less than the number of tasks N in a parallel loop, the loop has to be executed in N/P rounds and the last round executes only (N mod P) tasks. In many cases, in the last round all but a few processors are idle, which causes a significant drop in performance. This performance drop becomes more and more detrimental as the number of processors increases. Loop spreading is a technique for restructuring parallel loops so as to balance parallel tasks on multiple processors. A spread loop runs at least as fast as the non-spread loop even when N mod P = 0, and shows no performance drop when N changes. We show how the method keeps the performance of the matrix multiplication and a simplex algorithm from decreasing as the size of input changes.
Conference_Titel :
Supercomputing, 1989. Supercomputing '89. Proceedings of the 1989 ACM/IEEE Conference on
Conference_Location :
Reno, NV, United States
Print_ISBN :
0-89791-341-8
DOI :
10.1145/76263.76338