A parallel sorting algorithm for a novel model of computation

The computational complexity of a parallel algorithm depends critically on the model of computation. We describe a simple and elegant rule-based model of computation in which processors apply rules asynchronously to pairs of objects from a global object space. Application of a rule to a pair of objects results in the creation of a new object if the objects satisfy the guard of the rule. The model can be efficiently implemented as a novel MIMD array processor architecture, the Intersecting Broadcast Machine. For this model of computation, we describe an efficient parallel sorting algorithm based on mergesort. The computational complexity of the sorting algorithm isO(nlog2n), comparable to that for specialized sorting networks and an improvement on theO(n1.5) complexity of conventional mesh-connected array processors.

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

[2]  Yiming Ma,et al.  The distance bound for sorting on mesh-connected processor arrays is tight , 1986, 27th Annual Symposium on Foundations of Computer Science (sfcs 1986).

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

[4]  Jau-Hsiung Huang,et al.  Distributed selectsort sorting algorithms on broadcast communication networks , 1990, Parallel Comput..

[5]  Yijie Han,et al.  Time lower bounds for parallel sorting on a mesh-connected processor array , 2004, Acta Informatica.

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

[7]  K. Mani Chandy Parallel program design , 1989 .

[8]  Yijie Han,et al.  Time Lower Bounds for Parallel Sorting on a Mesh-Connected Processor Array , 1988, AWOC.

[9]  Adi Shamir,et al.  An optimal sorting algorithm for mesh connected computers , 1986, STOC '86.

[10]  Adi Shamir,et al.  Shear Sort: A True Two-Dimensional Sorting Techniques for VLSI Networks , 1986, ICPP.

[11]  Nicholas Carriero,et al.  Distributed data structures in Linda , 1986, POPL '86.

[12]  Manfred Kunde Routing and Sorting on Mesh-Connected Arrays , 1988, AWOC.

[13]  David J. Evans A parallel sorting-merging algorithm for tightly coupled multiprocessors , 1990, Parallel Comput..

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

[15]  David J. DeWitt,et al.  A taxonomy of parallel sorting , 1984, CSUR.

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

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

[18]  K. Mani Chandy,et al.  Parallel program design - a foundation , 1988 .

[19]  Manfred Kunde Lower Bounds for Sorting on Mesh-Connected Architectures , 1986, Aegean Workshop on Computing.