This Article 
 Bibliographic References 
 Add to: 
Balanced Parallel Sort on Hypercube Multiprocessors
May 1993 (vol. 4 no. 5)
pp. 572-581

A parallel sorting algorithm for sorting n elements evenly distributed over 2/sup d/ p nodes of a d-dimensional hypercube is presented. The average running time of the algorithm is O((n log n)/p+p log 2n). The algorithm maintains a perfect load balance in the nodes by determining the (kn/p)th elements (k1,. . ., (p-1)) of the final sorted list in advance. These p-1 keys are used to partition the sorted sublists in each node to redistribute data to the nodes to be merged in parallel. The nodes finish the sort with an equal number of elements (n/p) regardless of the data distribution. A parallel selection algorithm for determining the balanced partition keys in O(p log2n) time is presented. The speed of the sorting algorithm is further enhanced by the distance-d communication capability of the iPSC/2 hypercube computer and a novel conflict-free routing algorithm. Experimental results on a 16-node hypercube computer show that the sorting algorithm is competitive with the previous algorithms and faster for skewed data distributions.

[1] D. E. Knuth,The Art of Computer Programming, Vol. 3, Reading, MA: Addison-Wesley, 1973.
[2] B. Wagar, "Hyperquicksort," inHypercube Multiprocessors 1987. Philadelphia, PA: SIAM, 1987, pp. 292-299.
[3] G. Fox, M. Johnson, G. Lyzenga, S. O. J. Salmon, and D. Walker,Solving Problems on Concurrent Processors, Vol I. Englewood, Cliffs, NJ: Prentice-Hall, 1988.
[4] S. R. Seidel and W. L. George, "Binsorting on hypercubes with d-port communication," inProc. Third Conf. Hypercube Concurrent Comput. and Appl., Jan. 1988, pp. 1455-1461.
[5] Y. Won and S. Sahni, "A balanced bin sort for hypercube multicomputers,"J. Supercomput., vol. 2, pp. 435-448, 1988.
[6] S. L. Johnsson, "Combining parallel and sequential sorting on a boolean n-cube," inProc. Int. Conf. Parallel Processing, 1984, pp. 444-448.
[7] G. Plaxton, "Load balancing, selection and sorting on the hypercube," inProc. 1st ACM Symp. Parallel Algorithms and Architectures, June 1989, pp. 64-73.
[8] K. E. Batcher, "Sorting networks and their applications," inProc. AFIPS 1968 SJCC, 1968, pp. 307-314.
[9] R. Sedgewick, "Implementing quicksort programs,"Commun. ACM, vol. 21, pp. 847-856, Oct. 1978.
[10] G. C. Fox and W. Furmanski, "Optimal communication algorithms on hypercube," Tech. Rep. CCCP-314, California, Inst. of Tech., Pasadena, CA, July 1986.
[11] S. L. Johnsson and C.-T. Ho, "Spanning graphs for optimum broadcasting and personalized communication in hypercubes,"IEEE Trans. Comput., vol. 38, pp. 1249-1268, Sept. 1989.
[12] Y. Saad and M. H. Schultz, "Data communication in hypercubes," Tech. Rep. YALEU/DCS/RR-428, Dept. Comput. Sci., Yale Univ., New Haven, CT, Oct. 1985.
[13] Q. F. Stout and B. Wagar, "Passing messages in link-bound hypercubes," inHypercube Multiprocessors 1987. Philadelphia, PA: SIAM, 1987.
[14] C. Aykanat, F. Ozguner, F. Ercal, and P. Sadayappan, "Iterative algorithms for solution of large sparse systems of linear equations on hypercubes,"IEEE Trans. Comput., vol. 37, pp. 1554-1568, Dec. 1988.
[15] Z. Galil and N. Megiddo, "A fast selection algorithm and the problem of optimum distribution of effort,"J. ACM, vol. 26, pp. 58-64, 1979.
[16] G. N. Frederickson and D. B. Johnson, "The complexity of selection and ranking inX + Yand matrices with sorted columns,"J. Comput. and Syst. Sci., vol. 24, pp. 197-208, 1982.
[17] T. Ibaraki and N. Katoh,Resource Allocation Problems. Cambridge, MA: MIT Press, 1988.
[18] S. F. Nugent, "The iPSC/2 Direct-Connect communications technology," inProc. Third Conf. Hypercube Comput. Appl., Pasadena, CA, Jan. 1988, pp. 56-60.
[19] D. H. Lawrie, "Access and alignment of data in an array processor,"IEEE Trans. Comput., vol. C-24, pp. 1145-1155, Dec. 1975.
[20] M. C. Pease, "The indirect binary n-cube microprocessor array,"IEEE Trans. Comput., vol. C-26, pp. 458-473, May 1977.
[21] H. J. Siegel and R. J. McMillen, "The multistage cube: A versatile interconnection network,"IEEE Comput. Mag., pp. 65-76, Dec. 1981.

Index Terms:
Index Termsparallel sort; hypercube multiprocessors; hypercube; parallel selection algorithm;conflict-free routing; 16-node hypercube; computational complexity; hypercubenetworks; parallel algorithms; sorting
B. Abali, F. özgü, A. Bataineh, "Balanced Parallel Sort on Hypercube Multiprocessors," IEEE Transactions on Parallel and Distributed Systems, vol. 4, no. 5, pp. 572-581, May 1993, doi:10.1109/71.224220
Usage of this product signifies your acceptance of the Terms of Use.