Skip to main content
Log in

Efficient algorithms for parallel sorting on mesh multicomputers

  • Published:
International Journal of Parallel Programming Aims and scope Submit manuscript

Abstract

We present two new parallel algorithms QSP1 and QSP2 based on sequential quicksort for sorting data on a mesh multicomputer, and analyze their scalability using the isoefficiency metric. We show that QSP2 matches the lower bound on the isoefficiency function for mesh multicomputers, while QSP1 is fairly close to optimal. Langet al. (1) and Schnorret al. (2) have developed parallel sorting algorithms for the mesh architecture that have either optimal (Schnorr) or close to optimal (Lang) run-time complexity for the one-element-perprocessor case. Both QSP1 and QSP2 have better scalability than the scaled-down variants of these algorithms (for the case in which there are more elements than processors). We also analyze a different variant of Lang's sort which is as scalable as QSP2. We briefly discuss another metric called “resource consumption.” According to this metric, both QSP1 and QSP2 are superior to variants of Lang's sort.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Subscribe and save

Springer+ Basic
$34.99 /Month
  • Get 10 units per month
  • Download Article/Chapter or eBook
  • 1 Unit = 1 Article or 1 Chapter
  • Cancel anytime
Subscribe now

Buy Now

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. Hans-Werner Lang, Manfred Schimmler, Hartmut Schmeck, and Heiko Schroder, Systolic Sorting on a Mesh-Connected Network,IEEE Transactions on Computers C-34(7):652–658 (July 1985).

    Google Scholar 

  2. C. P. Schnorr and A. Shamir, An Optimal Sorting Algorithm for Mesh-Connected Computers,Proceedings STOC, pp. 255–263 (1986).

  3. Vipin Kumar and V. Nageshwara Rao Parallel Depth-First Search, Part II: Analysis,International Journal of Parallel Programming 16(6):501–519 (1987).

    Google Scholar 

  4. Manfred Kunde, Routing and Sorting on Mesh-Connected Arrays,Proceedings of the AWOC Conference, pp. 423–433 (1988). Also available asSpringer LNCS, Vol. 319.

  5. S. G. Akl.The Design and Analysis of Parallel Algorithms, Prentice-Hall, p. 44 (1989).

  6. Bogdan S. Chlebus and Imrich Vrto, Parallel Quicksort,Journal of Parallel and Distributed Processing (to appear).

  7. Anshul Gupta and Vipin Kumar, On the Scalability of FFT on Parallel Computers,Proceedings of the Frontiers 90 Conference on Massively Parallel Computation (October 1990). An extended version of the paper is available as a Technical Report from the Department of Computer Science, and as TR 90-20 from Army High Performance Computing Research Center, University of Minnesota, Minneapolis.

  8. Vipin Kumar and Vineet Singh, Scalability of Parallel Algorithms for the All-Pairs Shortest Path Problem,Journal of Parallel and Distributed Processing (special issue on massively parallel computation) (October 1991). A short version appears in theProc. of the Int'l. Conf. on Parallel Processing (1990).

  9. Vipin Kumar and V. Nageshwara Rao, Load Balancing on the Hypercube Architecture,Proceedings of the Conference on Hypercubes, Concurrent Computers and Applications, pp. 603–608 (1989).

  10. S. Ranka and S. Sahni,Hypercube Algorithms for Image Processing and Pattern Recognition, Springer-Verlag, New York 1990.

    Google Scholar 

  11. D. Nassimi and S. Sahni, Bitonic Sort on a Mesh-Connected Parallel ComputerIEEE Transactions on Computers C-28:2–7 (1979).

    Google Scholar 

  12. C. Thompson and H. T. Kung, Sorting on a Mesh-Connected Parallel Computer,Communications of the ACM 21:263–271 (1977).

    Google Scholar 

  13. William J. Dally,A VLSI Architecture for Concurrent Data Structures. PhD Thesis, California Institute of Technology (March 1986).

  14. J. Lee, E. Shragowitz, and S. Sahni, A Hypercube Algorithm for the 0/1 Knapsack Problem,Proceedings of International Conference on Parallel Processing, pp. 699–706 (1987).

  15. M. A. Huang, Solving Some Graph Problems with Optimal or Near Optimal Speedup on Mesh-of-Trees Networks,Proceedings of 26th Annual IEEE Symposium on Foundations of Computer Science, pp. 232–240 (1985).

  16. J. Jenq and S. Sahni, All Pairs Shortest Paths on a Hypercube Multiprocessor,International Conference on Parallel Processing, pp. 713–716 (1987).

  17. Michael J. Quinn,Designing Efficient Algorithms for Parallel Computers, McGraw Hill, New York (1987).

    Google Scholar 

  18. R. Halstead, Multilisp: A Language for Concurrent Symbolic Computation,ACM Trans. on Prog. Languages and Systems, pp. 501–538 (1985).

  19. K. Murakami, T. Kakuta, R. Onai, and N. Ito, Research on Parallel Machine Architecture for Fifth-Generation Computer Systems,IEEE Computer 18(6):76–92 (1985).

    Google Scholar 

  20. P. Heidelberger, A. Norton, and J. T. Robinson, Parallel Quicksort Using Fetch-and-Add.,IEEE Transactions on Computers 39(1):133–138 (1990).

    Google Scholar 

  21. L. Devroye, A Note on the Height of Binary Search Trees,Journal of Association of Computing Machinery 33:489–498 (1986).

    Google Scholar 

  22. G. Baudet and D. Stevenson, Optimal Sorting Algorthms for Parallel ComputersIEEE Transactions on Computers C-27:84–87 (1978).

    Google Scholar 

  23. G. Fox et al.,Solving Problems on Concurrent Computers, Prentice-Hall1(18):329–333 (1988).

    Google Scholar 

  24. Vipin Kumar and Anshul Gupta, Analyzing Scalability of Parallel Algorthms and Architectures, Technical Report TR-91-18, Computer Science Department, University of Minnesota (June 1991). A short version of the paper appears in the Proceedings of the 1991 International Conference on Supercomputing, Germany.

  25. John L. Gustafson, Reevaluating Amdahl's Law,Communications of the ACM 31(5):532–533 (1988).

    Google Scholar 

  26. John L. Gustafson, Gary R. Montry, and Robert E. Benner, Development of Parallel Methods for a 1024-Processor Hypercube,SIAM Journal on Scientific and Statistical Computing 9(4):609–638 (1988).

    Google Scholar 

  27. Clyde P. Kruskal, Larry, Rudolph, and Marc Snir, A Complexity Theory of Efficient Parallel Algorithms, Technical Report RC13572, IBM TJ-Watson Research Center, New York (1988).

    Google Scholar 

  28. D. Hillis and G. L. Steele, Data Parallel Algorithms,Communications of the ACM 29(12):1170–1183 (1986).

    Google Scholar 

  29. Bill Athas, Fine Grain Concurrent Computations, PhD Thesis, Computer Science Department, California Institute of Technology (1987). Also published as Technical Report 5442:TR:87.

  30. K. M. Chandy and J. Misra,Parallel Program Design: A Foundation, Addison-Wesley, Reading, Massachusetts (1988).

    Google Scholar 

  31. E. Shapiro (ed.)Concurrent Prolog 1(7):207–242. MIT Press (1987).

  32. Stephen A. Cook, Towards a Complexity Theory of Synchronous Parallel Computation,L'Enseignement Mathématique XXVIII:99–124 (1981).

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Rights and permissions

Reprints and permissions

About this article

Cite this article

Singh, V., Kumar, V., Agha, G. et al. Efficient algorithms for parallel sorting on mesh multicomputers. Int J Parallel Prog 20, 95–131 (1991). https://doi.org/10.1007/BF01407839

Download citation

  • Received:

  • Revised:

  • Issue Date:

  • DOI: https://doi.org/10.1007/BF01407839

Key Words