A unifiedO(logN) and optimal sorting vector algorithm

  • Gao Qingshi 
Brief Papers


A unified vector sorting algorithm (VSA) is proposed, which sortsN arbitrary numbers with clog2 N-bits on an SIMD multi-processor system (SMMP) with\(p = \frac{{N^{1 + \varepsilon } }}{u}\) processors and a composite interconnected network in\(T = \frac{c}{\varepsilon }\left( {4\log _2 N - 2\log _2 u + 10u} \right)\) time, wherec is an arbitrary positive constant. When ε is an arbitrary small positive constant andu=log2 N, it is anO(logN) algorithm and\(p = \frac{{N^{1 + \varepsilon } }}{{log_2 N}}\); when\(\varepsilon = \frac{1}{{log N}}\) andu=2log2 N, it is an optimal algorithm (\(p = \frac{N}{{log_2 N}}\),T =O(log2 N),pT =O(N logN)); whereu=1,c=1 and ε=0.5 (a constant).


Parallel processing sorting time complexity optimal algorithm multi-processor system 


  1. [1]
    Batcher K E. Sorting networks and their applications. In 1968Spring Joint Comput. Conf. AFIPS Proc., Vol.32, Washington, D.C., 1968, pp.307–314.Google Scholar
  2. [2]
    Muller D E, Preparata F P. Bounds to complexities of networks for sorting and for switching.JACM, 1975, 22(2): 195–201.MATHCrossRefMathSciNetGoogle Scholar
  3. [3]
    Valiant L G. Parallelism in comparison problems.SIAM J. Computer, 1975, 4(3): 355–384.MathSciNetGoogle Scholar
  4. [4]
    Thompson C D, Kung H T. Sorting on a mesh-connected parallel computer.CACM, 1977, 20(4): 263–271.MATHMathSciNetGoogle Scholar
  5. [5]
    Preparata F P. New parallel-sorting schemes.IEEE Trans. on Computers, 1978, C-27(7): 669–673.MATHCrossRefMathSciNetGoogle Scholar
  6. [6]
    Hirschberg D S. Fast parallel sorting algorithms.CACM, 1978, 21(8): 657–661.MATHMathSciNetGoogle Scholar
  7. [7]
    Ajtai M, Komlos J, Szemeredi E. AnO (n logn) sorting network. InProc. of 15th ACM Symp. Theory of Computing, 1983, pp.1–9.Google Scholar
  8. [8]
    Leighton T. Tight Bounds on the complexity of parallel soring.IEEE Trans. Computers, 1985, C-34(4): 344–354.MATHMathSciNetGoogle Scholar
  9. [9]
    Bilardi G, Preparata F P. A minimum area VLSI network forO(logn) time sorting.IEEE Trans. Computers, 1985, C-34(4): 336–343.MATHMathSciNetGoogle Scholar
  10. [10]
    Reif J H, Valiant L G. A logarithmic time sort for linear size networks.JACM, 1987, 34(1): 60–76.CrossRefMathSciNetGoogle Scholar
  11. [11]
    Alnuweiri H M, Prasanna Kumar V K. Optimal VLSI sorting with reduced number of processors.IEEE Trans. Computers, 1991, C-40(1): 105–110.CrossRefMathSciNetGoogle Scholar
  12. [12]
    Guan Xiaojun, Langston M A. Time-space optimal parallel merging and sorting.IEEE Trans. on Computers, 1991, C-40(5): 596–602.CrossRefMathSciNetGoogle Scholar
  13. [13]
    Wang B F, Chen G H, Lin F C. Constant time soring on a processor array with a reconfigurable bus system.IPL, 1990, 34: 187–192.MATHCrossRefGoogle Scholar
  14. [14]
    Vaidyanathan R. Sorting on PRAMs with reconfigurable buses.IPL, 1992, 42: 203–208.MATHCrossRefGoogle Scholar
  15. [15]
    Knuth D E. The Art of Computer Programming, Vol. 3, Sorting and Searching. Addison-Wesley Publishing Company, 1973.Google Scholar
  16. [16]
    Kogge P M, Stone H S. A parallel algorithm for efficient solution of a general class of recurrrence equations.IEEE Trans. Computers, 1973, C-22(8): 789–792.MathSciNetCrossRefGoogle Scholar
  17. [17]
    Feng T Y. Data manipulating functions in parallel processors and their implementation.IEEE Trans. Computers, C-23(3): 309–318.Google Scholar
  18. [18]
    Leighton T. Introduction to Parallel Algorithms and Architectures. Morgan Kaufmann Publishers, Inc., 1992, pp.439–446.Google Scholar

Copyright information

© Science Press, Beijing China and Allerton Press Inc. 1995

Authors and Affiliations

  • Gao Qingshi 
    • 1
  1. 1.The Institute of Intelligence, Language and Computer ScienceBeijing University of Science and TechnologyBeijing

Personalised recommendations