Abstract
Sorting is an important subroutine in many parallel algorithms and has been studied extensively on meshes and related networks. If every processor of an n×n mesh is the source and destination of at most k elements, then sorting requires at least k · n/2 steps in the worst-case, and simple algorithms have recently been proposed that nearly match this bound. However, this lower bound does not extend to non-worst-case inputs, or weaker definitions of sorting that are sufficient in many applications. In this paper, we give algorithms and lower bounds for several such problems.
We first present a very simple scheme for k-k routing that performs optimally under both average-case and worst-case inputs. As an application of this scheme, we describe a simple k-k sorting algorithm based on sample sort that nearly matches this bound. The main part of the paper considers several ‘sorting-like’ problems. In the ranking problem, the ranks of all elements have to be determined, but there is no requirement about their final positions. We describe an algorithm running in time (1+o(1))·k·n/4 steps, which is nearly optimal under the considered model of the mesh. We show that integer versions of the sorting and ranking problems, where keys are drawn from {0,·, m −1}, can be solved asymptotically faster than the general problems for small values of m. A related problem, the excess counting problem, can be solved in O(n) steps in many interesting cases.
Part of this work was done while the third author was visiting the Max-Planck-Institut.
Preview
Unable to display preview. Download preview PDF.
References
Bailey et al., ‘The NAS Parallel Benchmarks,’ Tech. Rep. RNR-94-007, NASA Ames Research Center, 1994.
Bertsekas, D. P., J. N. Tsitsiklis, Parallel and Distributed Computation: Numerical Methods, Prentice-Hall, 1989.
Blelloch, G. E., C. E. Leiserson, B. M. Maggs, C. G. Plaxton, S. J. Smith, M. Zagha, ‘A Comparison of Sorting Algorithms for the Connection Machine CM-2,’ Proc. 3rd Symp. on Parallel Algorithms and Architectures, pp. 3–16, ACM 1991.
Dusseau, A. C., ‘Modeling Parallel Sorts with LogP on the CM-5,’ Tech. Rep. CSD-94-829, University of California at Berkeley, 1994.
Hinrichs, S., C. Kosak, D. R. O'Hallaron, T. M. Stricker, R. Take, ‘An Architecture for Optimal All-to-All Personalized Communication,’ Proc. 6th Symp. on Parallel Algorithms and Architectures, pp. 310–319, ACM, 1994.
Hofri, M., Probabilistic Analysis of Algorithms, Springer, 1987.
Kaufmann, M., S. Rajasekaran, J. F. Sibeyn, ‘Matching the Bisection Bound for Routing and Sorting on the Mesh,’ Proc. 4th Symp. on Parallel Algorithms and Architectures, pp. 31–40, ACM, 1992.
Kaufmann, M., J. F. Sibeyn, T. Suel, ‘Derandomizing Algorithms for Routing and Sorting on Meshes,’ Proc. 5th Symp. on Discrete Algorithms, pp. 669–679 ACM-SIAM, 1994.
Kunde, M., ‘Block Gossiping on Grids and Tori: Deterministic Sorting and Routing Match the Bisection Bound,’ Proc. 1st European Symp. on Algorithms, LNCS 726, pp. 272–283, Springer, 1993.
Kunde, M., R. Niedermeier, K. Reinhardt, P. Rossmanith, ‘Optimal Average Case Sorting on Arrays,’ Proc. 12th Symp. on Theoretical Aspects of Computer Science, pp. 503–513, Springer, 1995.
Leighton, F. T., ‘Tight Bounds on the Complexity of Parallel Sorting,’ IEEE Transactions on Computers, C-34(4), pp. 344–354, 1985.
Leighton, F. T., Introduction to Parallel Algorithms and Architectures: Arrays, Trees and Hypercubes, Morgan Kaufmann, 1991.
T. Lengauer, ‘VLSI Theory,’ in Handbook of Theoretical Computer Science, Volume A: Algorithms and Complexity, J. van Leeuwen (ed.), pp. 805–833, Elsevier/MIT Press, 1990.
Luby, M., ‘A Simple Parallel Algorithm for the Maximal Independent Set Problem,’ SIAM Journal on Computing, 15, pp. 1036–1053, 1986.
Meyer, U., J.F. Sibeyn, 'simulating the Simulator: Deterministic PRAM Simulation on a Mesh Simulator,’ Proc. Eurosim '95, F. Breitenecker and I. Husinsky (Eds), Elsevier, 1995, to appear.
Mehlhorn, K., U. Vishkin, ‘Randomized and Deterministic Simulations of PRAMs by Parallel Machines with Restricted Granularity of Parallel Memories,’ Acta Informatica, 9(1), pp. 29–59, 1984.
Pietracaprina, A., G. Pucci, J. F. Sibeyn, ‘Constructive Deterministic PRAM Simulation on a Mesh-Connected Computer,’ Proc. 6th Symp. on Parallel Algorithms and Architectures, pp. 248–256, ACM, 1994.
Ranade, A., S. N. Bhatt, S. L. Johnsson, ‘The Fluent Abstract Machine', Advanced Research in VLSI: Proc. 5th MIT Conference, pp. 71–94, MIT Press, 1988.
Rao, S. B., T. Suel, Th. Tsantilas, M. Goudreau, ‘Efficient Communication Using Total-Exchange', Proc. 9th International Parallel Processing Symposium, pp. 544–550, IEEE, 1995.
Reif, J. H., L. G. Valiant, ‘A logarithmic time sort for linear size networks,’ Journal of the ACM, 34, pp. 68–76, 1987.
Reischuk, R., ‘Probabilistic Parallel Algorithms for Sorting and Selection,’ SIAM Journal of Computing, 14, pp. 396–411, 1985.
Schmidt, J.P., A. Siegel, A. Srinivasan, ‘Chernoff-Hoeffding Bounds for Applications with Limited Independence,’ Proc. 4th Symp. on Discrete Algorithms, pp. 331–340, ACM-SIAM, 1993.
Sibeyn, J. F., ‘Desnakification of Mesh Sorting Algorithms,’ Proc. 2nd European Symp. on Algorithms, LNCS 855, pp. 377–390, Springer, 1994.
Sibeyn, J.F., ‘Sample Sort on Meshes,’ Tech. Rep. MPI-I-95-1012, Max-Planck Institut für Informatik, Saarbrücken, Germany, 1995.
Sibeyn, J. F., ‘List Ranking on Interconnection Networks,’ Tech. Rep. MPI-I-95, Max-Planck-Institut für Informatik, Saarbrücken, Germany, 1995, to appear.
Valiant, L. G., ‘A Scheme for Fast Parallel Communication,’ SIAM Journal on Computing, 11, pp. 350–361, 1982.
Yao, A. C., 'some Complexity Questions Related to Distributive Computing,’ Proc. 11th Symp. on the Theory of Computing, pp. 209–213, ACM 1979.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1995 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Kaufmann, M., Sibeyn, J.F., Suel, T. (1995). Beyond the worst-case bisection bound: Fast sorting and ranking on meshes. In: Spirakis, P. (eds) Algorithms — ESA '95. ESA 1995. Lecture Notes in Computer Science, vol 979. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-60313-1_135
Download citation
DOI: https://doi.org/10.1007/3-540-60313-1_135
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-60313-9
Online ISBN: 978-3-540-44913-3
eBook Packages: Springer Book Archive