Optimal Deterministic Sorting on Parallel Disks

We present an optimal deterministic algorithm called Balance Sort for external sorting on multiple disks. Our measure of performance is the number of input/output (I/O) operations. In each I/O, each disk can simultaneously transfer a block of data. Our algorithm improves upon the randomized optimal algorithm of Vitter and Shriver as well as the (non-optimal) commonly-used technique of disk striping. It also improves upon our earlier merge-based sorting algorithm in that it has smaller constants hidden in the big~oh notation, it is possible to implement using only striped writes (but independent reads), and it has application to parallel memory hierarchies.

[1]  C. Greg Plaxton,et al.  Deterministic sorting in nearly logarithmic time on the hypercube and related computers , 1990, STOC '90.

[2]  Jeffrey Scott Vitter,et al.  The Design and Analysis of BucketSort for Bubble Memory Secondary Storage , 1985, IEEE Transactions on Computers.

[3]  Shimon Even,et al.  Parallelism in tape-sorting , 1974, Commun. ACM.

[4]  Alok Aggarwal,et al.  The input/output complexity of sorting and related problems , 1988, CACM.

[5]  H. T. Kung,et al.  I/O complexity: The red-blue pebble game , 1981, STOC '81.

[6]  Garth A. Gibson,et al.  RAID: high-performance, reliable secondary storage , 1994, CSUR.

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

[8]  Jeffrey Scott Vitter,et al.  Deterministic distribution sort in shared and distributed memory multiprocessors , 1993, SPAA '93.

[9]  Randy H. Katz,et al.  A case for redundant arrays of inexpensive disks (RAID) , 1988, SIGMOD '88.

[10]  Manuel Blum,et al.  Time Bounds for Selection , 1973, J. Comput. Syst. Sci..

[11]  Martin E. Schulze,et al.  Considerations in the Design of a RAID Prototype , 1988 .

[12]  Robert W. Floyd,et al.  Permuting Information in Idealized Two-Level Storage , 1972, Complexity of Computer Computations.

[13]  Amos Israeli,et al.  An Improved Parallel Algorithm for Maximal Matching , 1986, Inf. Process. Lett..

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

[15]  David K. Gifford,et al.  The TWA reservation system , 1984, CACM.

[16]  Alok Aggarwal,et al.  Optimal parallel sorting in multi-level storage , 1994, SODA '94.