CUDPP  2.3
CUDA Data-Parallel Primitives Library
Namespaces | Functions
debugging.cu File Reference

Debugging/statistics/performance utilities for hash tables. More...

#include "debugging.h"
#include "definitions.h"
#include "hash_table.cuh"
#include <algorithm>
#include "cuda_util.h"

Namespaces

 CudaHT
 Encapsulates the hash table library.
 

Functions

__global__ void CudaHT::CuckooHashing::take_hash_function_statistics_kernel (const unsigned *keys, const unsigned n_entries, const unsigned table_size, const uint2 *constants, const unsigned num_functions, unsigned *num_slots_available, unsigned *num_hashing_in, unsigned *failed)
 Debugging function: Takes statistics on the hash functions' distribution. More...
 
Debugging functions
void CudaHT::CuckooHashing::TakeHashFunctionStatistics (const unsigned num_keys, const unsigned *d_keys, const unsigned table_size, const uint2 *constants, const unsigned kNumHashFunctions)
 
bool CudaHT::CuckooHashing::CheckAssignedSameSlot (const unsigned N, const unsigned num_keys, const unsigned *d_keys, const unsigned table_size, uint2 *constants)
 Checks if a key is assigned the same slot by different hash functions.
 
void CudaHT::CuckooHashing::PrintStashContents (const Entry *d_stash)
 Prints out the contents of the stash.
 

Detailed Description

Debugging/statistics/performance utilities for hash tables.

debugging.cu

Function Documentation

__global__ void CudaHT::CuckooHashing::take_hash_function_statistics_kernel ( const unsigned *  keys,
const unsigned  n_entries,
const unsigned  table_size,
const uint2 *  constants,
const unsigned  num_functions,
unsigned *  num_slots_available,
unsigned *  num_hashing_in,
unsigned *  failed 
)

Debugging function: Takes statistics on the hash functions' distribution.

Determines:

  • How many unique slots each key has.
  • How many keys hash into each slot.
  • Whether any keys failed to get a full set of slots.