Sorting with Linear Speedup on a Pipelined Hypercube

The authors formally define a distributed-memory parallel architecture called the pipelined hypercube. A coarse-grained parallel sorting algorithm that can be mapped efficiently on such an architecture is also presented. The pipelined hypercube has a more powerful communication mechanism than the traditional binary code architecture, in that it permits communication of blocks of data between processing elements (PEs) to be performed in a pipelined manner. Certain data communication problems which would probably be serialized on the binary code architecture, can be performed optimally on the pipelined hypercube. The sorting algorithm can be mapped efficiently onto a pipelined hypercube of P PEs. It sorts N data items, initially distributed among the PEs, in time O((N log N/P)+log/sup 2/ P), thereby achieving linear speedup when P is O(N/log N). >

[1]  .. G. Plaxton Load Balancing , Selection and Sorting on the HypercubeC , 1989 .

[2]  Selim G. Akl,et al.  Parallel Sorting Algorithms , 1985 .

[3]  Daniel S. Hirschberg Fast parallel sorting algorithms , 1978, CACM.

[4]  H. T. Kung,et al.  Sorting on a mesh-connected parallel computer , 1977, CACM.

[5]  Franco P. Preparata,et al.  New Parallel-Sorting Schemes , 1978, IEEE Transactions on Computers.

[6]  Leslie G. Valiant,et al.  Parallelism in Comparison Problems , 1975, SIAM J. Comput..

[7]  Clyde P. Kruskal,et al.  Searching, Merging, and Sorting in Parallel Computation , 1983, IEEE Transactions on Computers.

[8]  Franco P. Preparata,et al.  A Minimum Area VLSI Network for O(log n) Time Sorting , 1985, IEEE Transactions on Computers.

[9]  S. Lakshmivarahan,et al.  Parallel Sorting Algorithms , 1984, Adv. Comput..

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

[11]  Franco P. Preparata,et al.  The cube-connected-cycles: A versatile network for parallel computation , 1979, 20th Annual Symposium on Foundations of Computer Science (sfcs 1979).

[12]  Yousef Saad,et al.  Data Communication in Hypercubes , 1989, J. Parallel Distributed Comput..

[13]  János Komlós,et al.  An 0(n log n) sorting network , 1983, STOC.

[14]  Leslie G. Valiant,et al.  A logarithmic time sort for linear size networks , 1982, STOC.

[15]  Charles L. Seitz,et al.  Concurrent VLSI Architectures , 1984, IEEE Transactions on Computers.

[16]  Harold S. Stone,et al.  Parallel Processing with the Perfect Shuffle , 1971, IEEE Transactions on Computers.

[17]  Uzi Vishkin,et al.  Finding the maximum, merging and sorting in a parallel computation model , 1981, CONPAR.

[18]  Richard Cole,et al.  Parallel merge sort , 1988, 27th Annual Symposium on Foundations of Computer Science (sfcs 1986).

[19]  S. Lennart Johnsson,et al.  Algorithms for Matrix Transposition on Boolean n-Cube Configured Ensemble Architectures , 1988, ICPP.

[20]  C. Greg Plaxton,et al.  Pipelined Parallel Prefix Computations, and Sorting on a Pipelined Hypercube , 1989, J. Parallel Distributed Comput..

[21]  Allan Borodin,et al.  Routing, merging and sorting on parallel models of computation , 1982, STOC '82.

[22]  E. Szemerédi,et al.  Sorting inc logn parallel steps , 1983 .

[23]  Larry Rudolph,et al.  The power of parallel prefix , 1985, IEEE Transactions on Computers.

[24]  Sartaj Sahni,et al.  Bitonic Sort on a Mesh-Connected Parallel Computer , 1979, IEEE Transactions on Computers.

[25]  Kenneth E. Batcher,et al.  Sorting networks and their applications , 1968, AFIPS Spring Joint Computing Conference.

[26]  Uzi Vishkin,et al.  Finding the Maximum, Merging, and Sorting in a Parallel Computation Model , 1981, J. Algorithms.

[27]  Frank Thomson Leighton,et al.  Tight Bounds on the Complexity of Parallel Sorting , 1985, IEEE Trans. Computers.

[28]  Alok Aggarwal,et al.  Network Complexity of Sorting and Graph Problems and Simulating CRCW PRAMS by Interconnection Networks , 1988, AWOC.

[29]  C. Greg Plaxton Load balancing, selection sorting on the hypercube , 1989, SPAA '89.

[30]  Lennart Johnsson,et al.  Combining Parallel and Sequential Sorting on a Boolean n–cube , 1984 .

[31]  Selim G. Akl,et al.  Optimal Parallel Merging and Sorting Without Memory Conflicts , 1987, IEEE Transactions on Computers.