DocumentCode
2958146
Title
A Novel Sorting Algorithm for Many-core Architectures Based on Adaptive Bitonic Sort
Author
Peters, Hagen ; Schulz-Hildebrandt, Ole ; Luttenberger, Norbert
Author_Institution
Dept. of Comput. Sci., CAU Kiel, Kiel, Germany
fYear
2012
fDate
21-25 May 2012
Firstpage
227
Lastpage
237
Abstract
Adaptive bitonic sort is a well known merge-based parallel sorting algorithm. It achieves optimal complexity using a complex tree-like data structure called a bitonic tree. Due to this, using adaptive bitonic sort together with other algorithms usually implies converting bitonic trees to arrays and vice versa. This makes adaptive bitonic sort inappropriate in the context of hybrid sorting algorithms where frequent switches between algorithms are performed. In this article we present a novel optimal sorting algorithm that is based on an approach similar to adaptive bitonic sort. Our approach does not use bitonic trees but uses the input array together with some additional information. Using this approach it is trivial to switch between adaptive bitonic sort and other algorithms. We present an implementation of a hybrid algorithm for GPUs based on bitonic sort and our novel algorithm. This implementation turns out to be the fastest comparison-based sorting algorithm for GPUs found in literature.
Keywords
computational complexity; graphics processing units; merging; multiprocessing systems; parallel algorithms; parallel architectures; sorting; tree data structures; GPU; adaptive bitonic sort; bitonic tree; comparison-based sorting algorithm; complex tree-like data structure; hybrid sorting algorithms; many-core architecture; merge-based parallel sorting algorithm; optimal complexity; Arrays; Complexity theory; Indexes; Sorting; Vegetation; CUDA; bitonic sort; many-core; parallel; sorting;
fLanguage
English
Publisher
ieee
Conference_Titel
Parallel & Distributed Processing Symposium (IPDPS), 2012 IEEE 26th International
Conference_Location
Shanghai
ISSN
1530-2075
Print_ISBN
978-1-4673-0975-2
Type
conf
DOI
10.1109/IPDPS.2012.30
Filename
6267838
Link To Document