Fast Sorting on a Distributed-Memory Architecture
Author(s) • • •
Cheng, David R.
Shah, Viral
Gilbert, John R.
Edelman, Alan
Date Issued
January 2005
Series/Report no.
Computer Science (CS);
Abstract
We consider the often-studied problem of sorting, for a parallel computer. Given an input array distributed evenly over p processors, the task is to compute the sorted output array, also distributed over the p processors. Many existing algorithms take the approach of approximately load-balancing the output, leaving each processor with Θ(n/p) elements. However, in many cases, approximate load-balancing leads to inefficiencies in both the sorting itself and in further uses of the data after sorting. We provide a deterministic parallel sorting algorithm that uses parallel selection to produce any output distribution exactly, particularly one that is perfectly load-balanced. Furthermore, when using a comparison sort, this algorithm is 1-optimal in both computation and communication. We provide an empirical study that illustrates the efficiency of exact data splitting, and shows an improvement over two sample sort algorithms.
Subjects
Parallel sorting
distributed-memory algorithms
High Performance Computing
Persistent DSpace Link