DocumentCode
2441353
Title
GPU sample sort
Author
Leischner, Nikolaj ; Osipov, Vitaly ; Sanders, Peter
Author_Institution
Dept. of Comput. Sci., Karlsruhe Inst. of Technol., Karlsruhe, Germany
fYear
2010
fDate
19-23 April 2010
Firstpage
1
Lastpage
10
Abstract
In this paper, we present the design of a sample sort algorithm for manycore GPUs. Despite being one of the most efficient comparison-based sorting algorithms for distributed memory architectures its performance on GPUs was previously unknown. For uniformly distributed keys our sample sort is at least 25% and on average 68% faster than the best comparison-based sorting algorithm, GPU Thrust merge sort, and on average more than 2 times faster than GPU quicksort. Moreover, for 64-bit integer keys it is at least 63% and on average 2 times faster than the highly optimized GPU Thrust radix sort that directly manipulates the binary representation of keys. Our implementation is robust to different distributions and entropy levels of keys and scales almost linearly with the input size. These results indicate that multi-way techniques in general and sample sort in particular achieve substantially better performance than two-way merge sort and quicksort.
Keywords
computer graphic equipment; coprocessors; distributed memory systems; memory architecture; merging; sorting; GPU Thrust merge sort; GPU Thrust radix sort; GPU quicksort; binary key representation; comparison based sorting algorithms; distributed memory architectures; distribution keys; entropy key levels; two way merge sort; Algorithm design and analysis; Computer architecture; Databases; Entropy; Libraries; Memory architecture; Parallel processing; Robustness; Sorting; Yarn; GPU; manycore; multicore; sorting;
fLanguage
English
Publisher
ieee
Conference_Titel
Parallel & Distributed Processing (IPDPS), 2010 IEEE International Symposium on
Conference_Location
Atlanta, GA
ISSN
1530-2075
Print_ISBN
978-1-4244-6442-5
Type
conf
DOI
10.1109/IPDPS.2010.5470444
Filename
5470444
Link To Document