The Community for Technology Leaders
Green Image
Issue No. 02 - February (1996 vol. 45)
ISSN: 0018-9340
pp: 220-229
<p><b>Abstract</b>-Complete Exchange requires each of <it>N</it> processors to send a unique message to each of the remaining <it>N</it>− 1 processors. For a circuit switched hypercube with <it>N</it> = 2<super><it>d</it></super> processors, the Direct and Standard algorithms for Complete Exchange are time optimal for very large and very small message sizes, respectively. For intermediate sizes, a hybrid Multiphase algorithm is better. This carries out Direct exchanges on a set of subcubes whose dimensions are a partition of the integer <it>d</it>. The best such algorithm for a given message size <it>m</it> could hitherto only be found by enumerating all partitions of <it>d</it>.</p><p>The Multiphase algorithm is analyzed assuming a high performance communication network. It is proved that only algorithms corresponding to <it>equipartitions</it> of <it>d</it> (partitions in which the maximum and minimum elements differ by at most one) can possibly be optimal. The run times of these algorithms plotted against <it>m</it> form a hull of optimality. It is proved that, although there is an exponential number of partitions, 1) the number of faces on this hull is <tmath>$\Theta \left( {\sqrt d} \right)$,</tmath> 2) the hull can be found in <tmath>$\Theta \left( {\sqrt d} \right)$</tmath> time, and 3) once it has been found, the optimal algorithm for any given <it>m</it> can be found in Θ(log <it>d</it>) time.</p><p>These results provide a very fast technique for minimizing communication overhead in many important applications, such as matrix transpose, fast Fourier transform, and alternating directions implicit (ADI).</p>
Circuit switching, complete exchange, communication overhead, hypercube, multiphase algorithm, parallel computing.
Shahid H. Bokhari, "Multiphase Complete Exchange: A Theoretical Analysis", IEEE Transactions on Computers, vol. 45, no. , pp. 220-229, February 1996, doi:10.1109/12.485374
87 ms
(Ver )