warpcore 0.0.1
Hashing at the Speed of Light on modern CUDA-accelerators
random_distributions.cuh File Reference
#include <limits>
#include <assert.h>
#include <iostream>
#include <kiss/kiss.cuh>
#include <warpcore/bloom_filter.cuh>
Include dependency graph for random_distributions.cuh:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

 warpcore
 

Macros

#define WARPCORE_RANDOM_DISTRIBUTIONS_CUH
 

Functions

template<class T >
constexpr __host____device__ T warpcore::transform_range (const T x, const T a, const T b, const T c, const T d) noexcept
 transforms interval (a, b) into interval (c, d) More...
 
template<class T , class Rng >
__host__ void warpcore::uniform_distribution (T *out, std::uint64_t n, std::uint32_t seed) noexcept
 generates n uniform random elements on a CUDA device More...
 
template<class Rng = kiss::Kiss<std::uint32_t>>
__host__ void warpcore::uniform_distribution (std::uint32_t *out, std::uint64_t n, std::uint32_t seed) noexcept
 
template<class Rng = kiss::Kiss<std::uint64_t>>
__host__ void warpcore::uniform_distribution (std::uint64_t *out, std::uint64_t n, std::uint32_t seed) noexcept
 
template<class Rng = kiss::Kiss<std::uint32_t>>
__host__ void warpcore::uniform_distribution (float *out, std::uint64_t n, std::uint32_t seed) noexcept
 
template<class Rng = kiss::Kiss<std::uint32_t>>
__host__ void warpcore::uniform_distribution (double *out, std::uint64_t n, std::uint32_t seed) noexcept
 
template<class T , class Rng >
__host__ void warpcore::unique_distribution (T *out, std::uint64_t n, std::uint32_t seed) noexcept
 generates n unique random elements on a CUDA device More...
 
template<class Rng = kiss::Kiss<std::uint32_t>>
__host__ void warpcore::unique_distribution (std::uint32_t *out, std::uint64_t n, std::uint32_t seed) noexcept
 
template<class Rng = kiss::Kiss<std::uint64_t>>
__host__ void warpcore::unique_distribution (std::uint64_t *out, std::uint64_t n, std::uint32_t seed) noexcept
 
template<class Rng = kiss::Kiss<std::uint32_t>>
__host__ void warpcore::unique_distribution (float *out, std::uint64_t n, std::uint32_t seed) noexcept
 
template<class Rng = kiss::Kiss<std::uint32_t>>
__host__ void warpcore::unique_distribution (double *out, std::uint64_t n, std::uint32_t seed) noexcept
 
template<class T , class Rng = kiss::Kiss<std::uint32_t>, class P = double>
__host__ void warpcore::zipf_distribution (T *in, std::uint64_t n_in, T *out, std::uint64_t n_out, P s, std::uint32_t seed) noexcept
 generates n zipf distributed random elements on a CUDA device More...
 

Macro Definition Documentation

◆ WARPCORE_RANDOM_DISTRIBUTIONS_CUH

#define WARPCORE_RANDOM_DISTRIBUTIONS_CUH

Definition at line 2 of file random_distributions.cuh.