Abstract
We consider comparator networks M that 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(n)) • T(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 netork resulting in a period 5 comparator network with runtime O(log2n).
- AJTAI, M., KOMLO ~S, J., AND SZEMERE ~DI, E. 1983. Sorting in c z log n parallel steps. Combinatorica 3, 1-19.]] Google ScholarDigital Library
- BATCHER, K. E. 1968. Sorting networks and their applications. In AFIPS Conference Proceedings, vol. 32. AFIPS Press, Atlantic City, N.J., pp. 307-314.]]Google ScholarDigital Library
- DE BRUIJN, N. G. 1974. Sorting by means of swapping. Disc. Math. 9, 333-339.]]Google ScholarDigital Library
- DOWD, M., PERL, Y., SAKS, M., AND RUDOLPH, L. 1989. The periodic balanced sorting network. J. ACM 36, 738-757.]] Google ScholarDigital Library
- IERARDI, D. 1994. 2d-Bubblesorting in average time O(=NlgN). In Proceedings of the 6th ACM Symposium on Parallel Algorithms and Architectures (SPAA) ACM, New York, pp. 36-45.]] Google ScholarDigital Library
- KIK, M., KUTYLOWSKI, M., AND STACHOWIAK, G. 1994. Periodic constant depth sorting networks. In Proceedings of the 11th Symposium on Theoretical Aspects of Computer Science (STACS). Lecture Notes in Computer Science, vol. 775. Springer-Verlag, Berlin, Germany, pp. 201-212.]] Google ScholarDigital Library
- KNUTH, D. E. 1998. The Art of Computer Programming. Vol. 3. Sorting and Searching. Addison-Wesley, Reading, Mass.]] Google ScholarDigital Library
- KRAMMER, J. 1991. Lo~sung von Datentransportproblemen in integrierten Schaltungen. Dissertation, TU Mu~nchen. Munich, Germany.]]Google Scholar
- KUTYLOWSKI, M., LORYS ~, K., AND OESTERDIEKHOFF, B. 1998. Periodic merging networks. Theory Comput. Syst. 31, 5, 551-578.]]Google ScholarCross Ref
- LEIGHTON, T. 1985. Tight bounds on the complexity of parallel sorting. IEEE Trans. Comput. 34, 344-354.]] Google ScholarDigital Library
- LORYS ~, K., KUTYLOWSKI, M., OESTERDIEKHOFF, B., AND WANKA, R. 1994. Fast and feasible periodic sorting networks of constant depth. In Proceedings of the 35th IEEE Symposium on Foundations of Computer Science (FOCS). IEEE Computer Society Press, Los Alamitos, Calif., pp. 369-380.]]Google Scholar
- OESTERDIEKHOFF, B. 1997. On periodic comparator networks. Dissertation, University of Pader-born, Paderborn, Germany.]]Google Scholar
- SADO, K., AND IGARASHI, Y. 1986. Some parallel sorts on a mesh-connected processor array and their time efficiency. J. Parall. Distrib. Comput. 3, 398-410.]] Google ScholarDigital Library
- SAVARI, S. A. 1993. Average case analysis of five two-dimensional bubble sorting algorithms. In Proceedings of the 5th ACM Symposium on Parallel Algorithms and Architectures (SPAA). ACM, New York, pp. 336-345.]] Google ScholarDigital Library
- SCHERSON, I. D., SEN, S., AND SHAMIR, A. 1986. Shear-sort: A true two-dimensional sorting technique for VLSI networks. In Proceedings of the IEEE International Conference on Parallel Processing. IEEE Computer Society Press, Los Alamitos, Calif., pp. 903-908.]]Google Scholar
- SCHRO ~DER, H. 1983. Partition sorts for VLSI. In Proceedings of the 13th GI-Jahrestagung. vol. 73 of Informatikfachberichte. Springer-Verlag, New York, pp. 101-116.]] Google ScholarDigital Library
- SCHWIEGELSHOHN, U. 1988. A short periodic two-dimensional systolic sorting algorithm. In International Conference on Systolic Arrays (San Diego, Calif., May 25-27). K. Bromley, S.-Y. Kung, E. Swartzlander, eds. Computer Science Press, Baltimore, Md., pp. 257-264.]]Google Scholar
- STACHOWIAK, G. 2000. Fibonacci correction networks algorithm theory. In SWAT 2000, M. M. Halldo~rsson, ed. Lecture Notes in Computer Science, vol. 1851. Springer-Verlag, Berlin, Germany, pp. 535-548.]] Google ScholarDigital Library
- THOMPSON, C. D. 1983. The VLSI complexity of sorting. IEEE Trans. Comput. C-32, 12, 1171-1184.]]Google ScholarDigital Library
Index Terms
- Periodification scheme: constructing sorting networks with constant period
Recommendations
Fast and feasible periodic sorting networks of constant depth
SFCS '94: Proceedings of the 35th Annual Symposium on Foundations of Computer ScienceA periodic comparator network has depth (or period) k, if for every t>k, the compare-exchange operations performed at step t are executed between exactly the same registers as at step t-k. We introduce a general method that converts an arbitrary ...
Sorting Networks of Logarithmic Depth, Further Simplified
We further simplify Paterson’s version of the Ajtai–Komlós–Szemerédi sorting network, and its analysis, mainly by tuning the invariant to be maintained.
Correction Networks
ICPP '99: Proceedings of the 1999 International Conference on Parallel ProcessingWe consider the problem of sorting sequences obtained from a sorted sequence of n keys by changing the values of at most \mathkeys at some unknown positions. Since even for \matha lower bound \mathon the number of parallel comparison steps applies, any ...
Comments