XT-neighbor
Classes | Functions
cub.cu File Reference

Listing of all GPU parallel primitives that use CUB library (everything other than map and expand). More...

#include <cub/device/device_scan.cuh>
#include <cub/device/device_merge_sort.cuh>
#include <cub/device/device_run_length_encode.cuh>
#include <cub/device/device_select.cuh>
#include <cub/device/device_histogram.cuh>
#include <cub/device/device_reduce.cuh>
#include "codec.cu"

Classes

struct  Int3Comparator
 
struct  Int2Comparator
 
struct  IntMax
 
struct  Sum
 
struct  SeqInfoComparator
 

Functions

template<typename T >
void inclusive_sum (T *input, T *output, int n)
 
template<typename T >
void inclusive_sum (T *input, int n)
 
template<typename T >
void sort_key_values (Int3 *keys, T *values, int n)
 
void sort_key_values2 (Int2 *keys, size_t *values, int n)
 
void sort_int2 (Int2 *input, int n)
 
void sort_info (SeqInfo *input, char *allStr, unsigned int *offsets, int n)
 
template<typename T >
void unique_counts (T *keys, int *output, T *uniqueOut, int *outputLen, int n)
 
template<typename T >
void unique_counts (T *keys, int *output, int *outputLen, int n)
 
void unique (Int2 *input, Int2 *output, int *outputLen, int n)
 
template<typename T1 >
void flag (T1 *input1, char *flags, T1 *output1, int *outputLen, int n)
 
template<typename T >
void cal_histogram (T *input, int *output, int nLevel, T minValue, T maxValue, int n)
 
template<typename T >
void inclusive_sum_by_key (int *keyIn, T *valueInOut, int n)
 
void max_by_key (int *keyIn, int *valueIn, int *valueOut, int *outputLen, int n)
 
void sum_by_key (Int2 *keyIn, Int2 *keyOut, size_t *valueIn, size_t *valueOut, int *outputLen, int n)
 

Detailed Description

Listing of all GPU parallel primitives that use CUB library (everything other than map and expand).

Follows Facade design pattern.

Function Documentation

◆ cal_histogram()

template<typename T >
void cal_histogram ( T *  input,
int *  output,
int  nLevel,
minValue,
maxValue,
int  n 
)

◆ flag()

template<typename T1 >
void flag ( T1 *  input1,
char *  flags,
T1 *  output1,
int *  outputLen,
int  n 
)

◆ inclusive_sum() [1/2]

template<typename T >
void inclusive_sum ( T *  input,
T *  output,
int  n 
)

◆ inclusive_sum() [2/2]

template<typename T >
void inclusive_sum ( T *  input,
int  n 
)

◆ inclusive_sum_by_key()

template<typename T >
void inclusive_sum_by_key ( int *  keyIn,
T *  valueInOut,
int  n 
)

◆ max_by_key()

void max_by_key ( int *  keyIn,
int *  valueIn,
int *  valueOut,
int *  outputLen,
int  n 
)

◆ sort_info()

void sort_info ( SeqInfo input,
char *  allStr,
unsigned int *  offsets,
int  n 
)

◆ sort_int2()

void sort_int2 ( Int2 input,
int  n 
)

◆ sort_key_values()

template<typename T >
void sort_key_values ( Int3 keys,
T *  values,
int  n 
)

◆ sort_key_values2()

void sort_key_values2 ( Int2 keys,
size_t *  values,
int  n 
)

◆ sum_by_key()

void sum_by_key ( Int2 keyIn,
Int2 keyOut,
size_t *  valueIn,
size_t *  valueOut,
int *  outputLen,
int  n 
)

◆ unique()

void unique ( Int2 input,
Int2 output,
int *  outputLen,
int  n 
)

◆ unique_counts() [1/2]

template<typename T >
void unique_counts ( T *  keys,
int *  output,
T *  uniqueOut,
int *  outputLen,
int  n 
)

◆ unique_counts() [2/2]

template<typename T >
void unique_counts ( T *  keys,
int *  output,
int *  outputLen,
int  n 
)