|
CUDPP 1.1.1
|
CUDPP application-level radix sorting routines. More...
#include "cudpp.h"#include "cudpp_util.h"#include "cudpp_radixsort.h"#include "cudpp_scan.h"#include "kernel/radixsort_kernel.cu"#include <cutil.h>#include <cstdlib>#include <cstdio>#include <assert.h>RadixSort Functions | |
| typedef unsigned int | uint |
| template<uint nbits, uint startbit, bool flip, bool unflip> | |
| void | radixSortStep (uint *keys, uint *values, const CUDPPRadixSortPlan *plan, uint numElements) |
| Perform one step of the radix sort. Sorts by nbits key bits per step, starting at startbit. | |
| template<bool flip> | |
| void | radixSortSingleBlock (uint *keys, uint *values, uint numElements) |
| Single-block optimization for sorts of fewer than 4 * CTA_SIZE elements. | |
| void | radixSort (uint *keys, uint *values, const CUDPPRadixSortPlan *plan, size_t numElements, bool flipBits, int keyBits) |
| Main radix sort function. | |
| void | radixSortFloatKeys (float *keys, uint *values, const CUDPPRadixSortPlan *plan, size_t numElements, bool negativeKeys, int keyBits) |
| Wrapper to call main radix sort function. For float configuration. | |
| template<uint nbits, uint startbit, bool flip, bool unflip> | |
| void | radixSortStepKeysOnly (uint *keys, const CUDPPRadixSortPlan *plan, uint numElements) |
| Perform one step of the radix sort. Sorts by nbits key bits per step, starting at startbit. | |
| template<bool flip> | |
| void | radixSortSingleBlockKeysOnly (uint *keys, uint numElements) |
| Optimization for sorts of fewer than 4 * CTA_SIZE elements (keys only). | |
| void | radixSortKeysOnly (uint *keys, const CUDPPRadixSortPlan *plan, bool flipBits, size_t numElements, int keyBits) |
| Main radix sort function. For keys only configuration. | |
| void | radixSortFloatKeysOnly (float *keys, const CUDPPRadixSortPlan *plan, bool negativeKeys, size_t numElements, int keyBits) |
| Wrapper to call main radix sort function. For floats and keys only. | |
| void | initDeviceParameters (CUDPPRadixSortPlan *plan) |
| void | allocRadixSortStorage (CUDPPRadixSortPlan *plan) |
| From the programmer-specified sort configuration, creates internal memory for performing the sort. | |
| void | freeRadixSortStorage (CUDPPRadixSortPlan *plan) |
| Deallocates intermediate memory from allocRadixSortStorage. | |
| void | cudppRadixSortDispatch (void *keys, void *values, size_t numElements, int keyBits, const CUDPPRadixSortPlan *plan) |
| Dispatch function to perform a sort on an array with a specified configuration. | |
CUDPP application-level radix sorting routines.
1.7.4