Efficient Parallel Divide-and-Conquer for a Class of Interconnection Topologies

In this paper, we propose an efficient scheduling algorithm for expanding any divide-and-conquer (D&C) computation tree on k-dimensional mesh, hypercube, and perfect shuffle networks with p processors. Assume that it takes tn time steps to expand one node of the tree and tc time steps to transmit one datum or convey one node. For any D&C computation tree with N nodes, height h, and degree d (maximal number of children of any node), our algorithm requires at most (N/p+h)tn+ϕdhtc time steps, where ϕ is O(log2p) on a hypercube or perfect shuffle network and is \(O\left( {\sqrt[k]{p}} \right)\) on a nk−1x···xn0 mesh network, where \(n_{k - 1} = \cdot \cdot \cdot = n_0 = \sqrt[k]{p}\). This algorithm is general in the sense that it does not know the values of N, h, and d, and the shape of the computation tree as well, a priori. Most importantly, we can easily obtain a linear speedup by nearly a factor of p, especially when N ≫ ph(1+ϕdt c /t n ).

[1]  Sartaj Sahni,et al.  Parallel permutation and sorting algorithms and a new generalized connection network , 1982, JACM.

[2]  Robert M. Haralick,et al.  Increasing Tree Search Efficiency for Constraint Satisfaction Problems , 1979, Artif. Intell..

[3]  J. Ortega,et al.  Solution of Partial Differential Equations on Vector and Parallel Computers , 1987 .

[4]  Frank Thomson Leighton,et al.  Dynamic tree embeddings in butterflies and hypercubes , 1989, SPAA '89.

[5]  Michael Ian Shamos,et al.  Computational geometry: an introduction , 1985 .

[6]  H. T. Kung,et al.  Communication complexity for parallel divide-and-conquer , 1991, [1991] Proceedings 32nd Annual Symposium of Foundations of Computer Science.

[7]  John P. Hayes,et al.  A Microprocessor-based Hypercube Supercomputer , 1986, IEEE Micro.

[8]  Ernst W. Mayr,et al.  Efficient computation on sparse interconnection networks , 1989 .

[9]  Henri E. Bal The shared data-object model as a paradigm for programming distributed systems , 1989 .

[10]  Udi Manber,et al.  DIB—a distributed implementation of backtracking , 1987, TOPL.

[11]  Charles L. Seitz,et al.  The cosmic cube , 1985, CACM.

[12]  R. Karp,et al.  Parallel Algorithms for Combinatorial Search Problems , 1989 .

[13]  Laxmikant V. Kalé,et al.  A dynamic scheduling strategy for the Chare-Kernel system , 1989, Proceedings of the 1989 ACM/IEEE Conference on Supercomputing (Supercomputing '89).

[14]  Richard E. Korf,et al.  Distributed Tree Search and Its Application to Alpha-Beta Pruning , 1988, AAAI.

[15]  Hanan Samet,et al.  Applications of spatial data structures , 1989 .

[16]  Shekhar Y. Borkar,et al.  iWarp: an integrated solution to high-speed parallel computing , 1988, Proceedings. SUPERCOMPUTING '88.

[17]  H. T. Kung,et al.  The design of nectar: a network backplane for heterogeneous multicomputers , 1989, ASPLOS III.