|
class | BlockMergeSortStrategy< KeyT, ValueT, NUM_THREADS, ITEMS_PER_THREAD, SynchronizationPolicy > |
| Generalized merge sort algorithm. More...
|
|
struct | BlockMergeSortStrategy< KeyT, ValueT, NUM_THREADS, ITEMS_PER_THREAD, SynchronizationPolicy >::TempStorage |
| The operations exposed by BlockMergeSort require a temporary memory allocation of this nested type for thread communication. This opaque storage can be allocated directly using the __shared__ keyword. Alternatively, it can be aliased to externally allocated memory (shared or global) or union 'd with other storage allocation types to facilitate memory reuse. More...
|
|
class | BlockMergeSort< KeyT, BLOCK_DIM_X, ITEMS_PER_THREAD, ValueT, BLOCK_DIM_Y, BLOCK_DIM_Z > |
| The BlockMergeSort class provides methods for sorting items partitioned across a CUDA thread block using a merge sorting method. More...
|
|
|
template<typename KeyT , typename KeyIteratorT , typename OffsetT , typename BinaryPred > |
CUB_NAMESPACE_BEGIN __device__
__forceinline__ OffsetT | MergePath (KeyIteratorT keys1, KeyIteratorT keys2, OffsetT keys1_count, OffsetT keys2_count, OffsetT diag, BinaryPred binary_pred) |
|
template<typename KeyT , typename CompareOp , int ITEMS_PER_THREAD> |
__device__ __forceinline__ void | SerialMerge (KeyT *keys_shared, int keys1_beg, int keys2_beg, int keys1_count, int keys2_count, KeyT(&output)[ITEMS_PER_THREAD], int(&indices)[ITEMS_PER_THREAD], CompareOp compare_op) |
|