CUDPP  2.2
CUDA Data-Parallel Primitives Library
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Groups Pages
mergesort_app.cu File Reference

CUDPP application-level merge sorting routines. More...

#include "cuda_util.h"
#include "cudpp.h"
#include "cudpp_util.h"
#include "cudpp_mergesort.h"
#include "kernel/mergesort_kernel.cuh"
#include "limits.h"

MergeSort Functions

#define BLOCKSORT_SIZE   1024
 
#define DEPTH   8
 
template<typename T >
void runMergeSort (T *pkeys, unsigned int *pvals, size_t numElements, const CUDPPMergeSortPlan *plan)
 Performs merge sort utilizing 3 stages: (1) Blocksort, (2) simple merge and (3) multi merge. More...
 
void allocMergeSortStorage (CUDPPMergeSortPlan *plan)
 From the programmer-specified sort configuration, creates internal memory for performing the sort. More...
 
void freeMergeSortStorage (CUDPPMergeSortPlan *plan)
 Deallocates intermediate memory from allocRadixSortStorage. More...
 
void cudppMergeSortDispatch (void *keys, void *values, size_t numElements, const CUDPPMergeSortPlan *plan)
 Dispatch function to perform a sort on an array with a specified configuration. More...
 

Detailed Description

CUDPP application-level merge sorting routines.

mergesort_app.cu