2002 · 54 citations · 27 references
ComputingComputer EngineeringComputer ScienceAlgorithmsParallel AlgorithmsParallel ComputingParallel Algorithm DesignParallel ArchitecturesParallel Computer ArchitectureParallel Computing SystemsParallel SortingSorting AlgorithmsBitonic SortCommunication-avoiding SortingParallel Sort AlgorithmsParallel Sorting AlgorithmsParallel Sorting NetworksSortingSorting NetworksSorting Systems
Sorting is an important component of many applications, and parallel sorting algorithms have been studied extensively in the last three decades. One of the earliest parallel sorting algorithms is bitonic sort, which is represented by a sorting network consisting of multiple butterfly stages. The paper studies bitonic sort on modern parallel machines which are relatively coarse grained and consist of only a modest number of nodes, thus requiring the mapping of many data elements to each processor. Under such a setting optimizing the bitonic sort algorithm becomes a question of mapping the data elements to processing nodes (data layout) such that communication is minimized. The authors developed a bitonic sort algorithm which minimizes the number of communication steps and optimizes the local computation. The resulting algorithm is faster than previous implementations, as experimental results collected on a 64 node Meiko CS-2 show.
27
The Art of Computer Programming
G.E. Whitesides · Nuclear Science and Engineering · 1970 · 6.1K citations
A bridging model for parallel computation
Leslie G. Valiant · Communications of the ACM · 1990 · 3.7K citations · Full text
Sorting networks and their applications
Kenneth E. Batcher · 1968 · 2.4K citations
LogP: towards a realistic model of parallel computation
David Culler, Richard M. Karp, David A. Patterson et al. · 1993 · 1.5K citations
Thorsten von Eicken, David Culler, Seth Copen Goldstein et al. · 1992 · 1.4K citations