Concepedia

Publication | Closed Access

Fast <it>k</it>-selection algorithms for graphics processing units

44

Citations

11

References

2012

Year

Abstract

Finding the <it>k</it>th-largest value in a list of <it>n</it> values is a well-studied problem for which many algorithms have been proposed. A naïve approach is to sort the list and then simply select the <it>k</it>th term in the sorted list. However, when the sorted list is not needed, this method does quite a bit of unnecessary work. Although sorting can be accomplished efficiently when working with a graphics processing unit (GPU), this article proposes two GPU algorithms, <tt>radixSelect</tt> and <tt>bucketSelect</tt>, which are several times faster than sorting the vector. As the problem size grows so does the time savings of these algorithms with a sixfold speed-up over GPU sorting for float vectors larger than 2 24 and for double vectors larger than 2 20 , ultimately reaching a 19.1 times speed-up for double vectors of length 2 28 .

References

YearCitations

Page 1