Periodification Scheme: Constructing Sorting Networks with Constant Period

Miroslaw Kutylowski, Krzysztof Lorys

Institute of Computer Science
University of Wroclaw
PL-51-151 Wroclaw, Poland

{mirekk | lorys}@tcs.uni.wroc.pl

  Brigitte Oesterdiekhoff, Rolf Wanka

Heinz Nixdorf Institute and
Dept. of Mathematics & Computer Science
Paderborn University
33095 Paderborn, Germany

{brigitte | wanka}@upb.de


Abstract

We consider comparator networks M which are used repeatedly: while the output produced by M is not sorted, it is fed again into M. Sorting algorithms working in this way are called periodic. The number of parallel steps performed during a single run of M is called its period, the sorting time of M 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 O(n), where the depth was roughly 1/. We introduce a general method called periodification scheme that converts automatically an arbitrary sorting network that sorts n items in time T(n) and that has layout area A(n) into a sorting network that has period 5, sorts (n·T(n)) items in time O(T(n)·log n), and has layout area O(A(nT(n)). In particular, applying this scheme to Batcher's algorithms, we get practical period 5 comparator networks that sort in time O(log3n). For theoretical interest, one may use the AKS network resulting in a period 5 comparator network with runtime O(log2n).


Paper in compressed Postscript format (gzip used):
A4 format


Journal of the ACM 45 (2000) 944-967.