#include "cudpp_sort.h"
#include <cudpp_globals.h>
#include "sharedmem.h"
#include "cta/sort_cta.cu"
Functions | |
Sort Functions | |
| template<class T> | |
| __global__ void | radixsort_kernel (T *d_out, const T *d_in, int numElements) |
| Sorts a chunk of data using radix sort. | |
| template<class T> | |
| __global__ void | radixGlobalSetup_kernel (unsigned int *d_out, const T *d_in, unsigned int bit, unsigned int last) |
| For each input in d_in, set output in d_out to 1 if bit is set in d_in or 0 if bit is not set in d_in. | |
| __global__ void | radixGlobalSplit_kernel (unsigned int *d_out, unsigned int *d_address, unsigned int *d_in, unsigned int bit, unsigned int last) |
| One pass of a global radix sort that splits its input based on which bit is specified in 'bit'. Bits set to 0 are placed before bits set to 1. Each radix pass is stable. | |
| template<class T> | |
| __global__ void | merge_kernel (T *d_out, T *d_in, int chunkSize, int numElements) |
| One pass of a merge sort that (in parallel) merges 2n sorted chunks of size k into chunkSize sorted chunks of size 2k. | |
1.5.5