CUDPP 2.0
CUDA Data-Parallel Primitives Library
Namespaces | Functions
/mnt/hgfs/VMWare/cudpp/src/cudpp_hash/hash_multivalue.cu File Reference

Implements hash tables that store multiple values per key. More...

#include "hash_multivalue.h"
#include "hash_table.cuh"
#include "cuda_util.h"
#include <cudpp.h>

Namespaces

namespace  CudaHT
 

Encapsulates the hash table library.


Functions

void CudaHT::CuckooHashing::CUDAWrapper::CallCheckIfUnique (const unsigned *d_sorted_keys, const size_t n, unsigned *d_is_unique)
 Calls the kernel that checks if neighboring keys are different.
void CudaHT::CuckooHashing::CUDAWrapper::CallCompactKeys (const unsigned *d_keys, const unsigned *d_is_unique, const unsigned *d_locations, const size_t kSize, uint2 *d_index_counts, unsigned *d_compacted)
 Calls the kernel that compacts down the unique keys.
void CudaHT::CuckooHashing::CUDAWrapper::CallCountValues (uint2 *d_index_counts, unsigned kSize, unsigned num_unique)
 Calls the kernel that counts how many values each key has.
void CudaHT::CuckooHashing::CUDAWrapper::CallPrepareIndices (const unsigned num_unique_keys, unsigned *d_indices)
 Calls the kernel that crease an array containing 0 to num_unique_keys - 1.
void CudaHT::CuckooHashing::CUDAWrapper::CallHashRetrieveMultiSorted (const unsigned n_queries, const unsigned num_hash_functions, const unsigned *d_query_keys, const unsigned table_size, const Entry *d_table, const uint2 *d_index_counts, const Functions< 2 > constants_2, const Functions< 3 > constants_3, const Functions< 4 > constants_4, const Functions< 5 > constants_5, const uint2 stash_constants, const unsigned stash_count, uint2 *d_location_count)
 Calls the kernel that performs the retrieval from the table.
Internal
__global__ void CudaHT::CuckooHashing::compact_keys (const unsigned keys[], const unsigned is_unique[], const unsigned locations[], uint2 index_counts[], unsigned compacted[], size_t kSize)
 Compacts the unique keys down and stores the location of its values as the value.
__global__ void CudaHT::CuckooHashing::check_if_unique (const unsigned *keys, unsigned *is_unique, size_t kSize)
 Finds unique keys by checking neighboring items in a sorted list.
__global__ void CudaHT::CuckooHashing::count_values (uint2 index_counts[], unsigned kSize, unsigned num_unique)
 Counts how many values each key has.
__global__ void CudaHT::CuckooHashing::prepare_indices (const unsigned num_keys, unsigned *data)
 Creates an array of values equal to the array index.

Detailed Description

Implements hash tables that store multiple values per key.

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Defines