Parallelization of bitonic sort and radix sort algorithms on many core GPUs

Data sorting is used in many fields and plays an important role in defining the overall speed and performance. There are - many sorting categories. In this study, two of these sorting algorithms that are bitonic sort and radix sort are dealt with. We have designed and developed Radix Sort and Bitonic Sort algorithms for many core Graphics Processing Units (GPUs). Although bitonic sort is a concurrent sorting algorithm, radix sort is a distribution sorting algorithm, i.e. both of these algorithms are not usual sorting algorithms. They can be parallelized on GPUs easily to get better performance than other sorting algorithms. We parallelized these sorting algorithms on many core GPUs using the Compute Unified Device Architecture (CUDA) platform, developed by NVIDIA Corporation and got some performance measurements.

[1]  Mihai F. Ionescu,et al.  Optimizing parallel bitonic sort , 1997, Proceedings 11th International Parallel Processing Symposium.

[2]  Norbert Luttenberger,et al.  Fast In-Place Sorting with CUDA Based on Bitonic Sort , 2009, PPAM.

[3]  Michael Garland,et al.  Designing efficient sorting algorithms for manycore GPUs , 2009, 2009 IEEE International Symposium on Parallel & Distributed Processing.

[4]  Zongmin Ma,et al.  Count Sort for GPU Computing , 2009, 2009 15th International Conference on Parallel and Distributed Systems.

[5]  Paolo Giaccone,et al.  Analysis of Fast Parallel Sorting Algorithms for GPU Architectures' , 2011, 2011 Frontiers of Information Technology.

[6]  Ahmet Artu Yıldırım,et al.  Parallel wavelet-based clustering algorithm on GPUs using CUDA , 2011, WCIT.

[7]  Xiaoming Li,et al.  An Empirically Optimized Radix Sort for GPU , 2009, 2009 IEEE International Symposium on Parallel and Distributed Processing with Applications.

[8]  Vitaly Osipov,et al.  GPU sample sort , 2010, 2010 IEEE International Symposium on Parallel & Distributed Processing (IPDPS).

[9]  Xie Hongwei,et al.  An Improved Parallel Sorting Algorithm for Odd Sequence , 2008, 2008 International Conference on Advanced Computer Theory and Engineering.