Periodification scheme: constructing sorting networks with constant period

We consider comparator networks <italic>M</italic> that are used repeatedly: while the output produced by <italic>M</italic> is not sorted, it is fed again into <italic>M</italic>. Sorting algorithms working in this way are called <italic>periodic</italic>. The number of parallel steps performed during a single run of <italic>M</italic> is called its <italic>period</italic>, the sorting <italic>time</italic> of <italic>M</italic> is the total number of parallel steps that are necessary to sort in the worst case. Periodic sorting networks have the advantage that they need little hardware (control logic, wiring, area) and that they are adaptive. We are interested in comparator networks of a constant period, due to their potential applications in hardware design. Previously, very little was known on such networks. The fastest solutions required time <italic>O(n</italic><supscrpt>ε</supscrpt>) where the depth was roughly 1/ε. We introduce a general method called <italic>periodification scheme</italic> that converts automatically an arbitrary sorting network that sorts <italic>n</italic> items in time <italic>T(n</italic>) and that has layout area <italic>A(n</italic>) into a sorting network that has period 5, sorts ***(<italic>n</italic> • <italic>T</italic>(<italic>n</italic>) items in time <italic>O(T(<n</italic>)• log <italic>n</italic>), and has layout area <italic>O(A(n)</italic>) • <italic>T(n</italic>)). In particular, applying this scheme to Batcher's algorithms, we get practical period 5 comparator networks that sort in time <italic>O</italic>(log<supscrpt>3</supscrpt><italic>n</italic>). For theoretical interest, one may use the AKS netork resulting in a period 5 comparator network with runtime <italic>O</italic>(log<supscrpt>2</supscrpt><italic>n</italic>).

[1]  Thompson The VLSI Complexity of Sorting , 1983, IEEE Transactions on Computers.

[2]  Miroslaw Kutylowski,et al.  Periodic Merging Networks , 1998, Theory of Computing Systems.

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

[4]  Miroslaw Kutylowski,et al.  Fast and feasible periodic sorting networks of constant depth , 1994, Proceedings 35th Annual Symposium on Foundations of Computer Science.

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

[6]  Donald E. Knuth,et al.  The art of computer programming, volume 3: (2nd ed.) sorting and searching , 1998 .

[7]  Brigitte Oesterdiekhoff,et al.  Periodic comparator networks , 2000, Theor. Comput. Sci..

[8]  Michael E. Saks,et al.  The periodic balanced sorting network , 1989, JACM.

[9]  Miroslaw Kutylowski,et al.  Periodic Constant Depth Sorting Networks , 1994, STACS.

[10]  U. Schwiegelshohn A shortperiodic two-dimensional systolic sorting algorithm , 1988, [1988] Proceedings. International Conference on Systolic Arrays.

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

[12]  Serap A. Savari Average case analysis of five two-dimensional bubble sorting algorithms , 1993, SPAA '93.

[13]  János Komlós,et al.  Sorting in c log n parallel sets , 1983, Comb..

[14]  Donald Ervin Knuth,et al.  The Art of Computer Programming , 1968 .

[15]  Yoshihide Igarashi,et al.  Some Parallel Sorts on a Mesh-Connected Processor Array and Their Time Efficiency , 1986, J. Parallel Distributed Comput..

[16]  Donald E. Knuth,et al.  The art of computer programming: sorting and searching (volume 3) , 1973 .

[17]  Heiko Schröder Partition Sorts for VLSI , 1983, GI Jahrestagung.

[18]  N. G. de Bruijn Sorting by means of swappings , 1974, Discret. Math..

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

[20]  Doug Ierardi 2d-bubblesorting in average time O(√N lg N)* , 1994, SPAA '94.

[21]  Donald E. Knuth,et al.  Sorting and Searching , 1973 .

[22]  Grzegorz Stachowiak Fibonacci Correction Networks , 2000, SWAT.

[23]  Frank Thomson Leighton,et al.  Tight Bounds on the Complexity of Parallel Sorting , 1984, IEEE Transactions on Computers.

[24]  Josef G. Krammer Lösung von Datentransportproblemen in integrierten Schaltungen , 1991 .