Skip to content

cuRAND#

This page shows how SCALE's cuRAND corresponds to each version of cuRAND.

96% (117 of 122 declarations available)

3.1. Pseudorandom Sequences#

-__device__ uint4 curand_discrete4(curandStatePhilox4_32_10_t *state, curandDiscreteDistribution_t discrete_distribution)

3.4. Device API for discrete distributions#

-__device__ unsigned int curand_discrete(curandState_t *state, curandDiscreteDistribution_t discrete_distribution)

5.1. Host API#

 enum curandDirectionVectorSet
     CURAND_DIRECTION_VECTORS_32_JOEKUO6 = 101
     CURAND_SCRAMBLED_DIRECTION_VECTORS_32_JOEKUO6 = 102
     CURAND_DIRECTION_VECTORS_64_JOEKUO6 = 103
     CURAND_SCRAMBLED_DIRECTION_VECTORS_64_JOEKUO6 = 104
 enum curandOrdering
     CURAND_ORDERING_PSEUDO_BEST = 100
     CURAND_ORDERING_PSEUDO_DEFAULT = 101
     CURAND_ORDERING_PSEUDO_SEEDED = 102
     CURAND_ORDERING_QUASI_DEFAULT = 201
 enum curandRngType
     CURAND_RNG_TEST = 0
     CURAND_RNG_PSEUDO_DEFAULT = 100
     CURAND_RNG_PSEUDO_XORWOW = 101
     CURAND_RNG_PSEUDO_MRG32K3A = 121
     CURAND_RNG_PSEUDO_MTGP32 = 141
     CURAND_RNG_PSEUDO_MT19937 = 142
     CURAND_RNG_PSEUDO_PHILOX4_32_10 = 161
     CURAND_RNG_QUASI_DEFAULT = 200
     CURAND_RNG_QUASI_SOBOL32 = 201
     CURAND_RNG_QUASI_SCRAMBLED_SOBOL32 = 202
     CURAND_RNG_QUASI_SOBOL64 = 203
     CURAND_RNG_QUASI_SCRAMBLED_SOBOL64 = 204
-enum curandStatus
 curandStatus_t curandCreateGenerator(curandGenerator_t* generator , curandRngType_t rng_type)
 curandStatus_t curandCreateGeneratorHost(curandGenerator_t* generator , curandRngType_t rng_type)
 curandStatus_t curandCreatePoissonDistribution(double lambda , curandDiscreteDistribution_t* discrete_distribution)
 curandStatus_t curandDestroyDistribution(curandDiscreteDistribution_t discrete_distribution)
 curandStatus_t curandDestroyGenerator(curandGenerator_t generator)
 curandStatus_t curandGenerate(curandGenerator_t generator , unsigned int* outputPtr , size_t num)
 curandStatus_t curandGenerateLogNormal(curandGenerator_t generator , float* outputPtr , size_t n , float mean , float stddev)
 curandStatus_t curandGenerateLogNormalDouble(curandGenerator_t generator , double* outputPtr , size_t n , double mean , double stddev)
 curandStatus_t curandGenerateLongLong(curandGenerator_t generator , unsigned long long* outputPtr , size_t num)
 curandStatus_t curandGenerateNormal(curandGenerator_t generator , float* outputPtr , size_t n , float mean , float stddev)
 curandStatus_t curandGenerateNormalDouble(curandGenerator_t generator , double* outputPtr , size_t n , double mean , double stddev)
 curandStatus_t curandGeneratePoisson(curandGenerator_t generator , unsigned int* outputPtr , size_t n , double lambda)
 curandStatus_t curandGenerateSeeds(curandGenerator_t generator)
 curandStatus_t curandGenerateUniform(curandGenerator_t generator , float* outputPtr , size_t num)
 curandStatus_t curandGenerateUniformDouble(curandGenerator_t generator , double* outputPtr , size_t num)
 curandStatus_t curandGetDirectionVectors32(curandDirectionVectors32_t* vectors[], curandDirectionVectorSet_t set)
 curandStatus_t curandGetDirectionVectors64(curandDirectionVectors64_t* vectors[], curandDirectionVectorSet_t set)
 curandStatus_t curandGetProperty(libraryPropertyType type , int* value)
 curandStatus_t curandGetScrambleConstants32(unsigned int** constants)
 curandStatus_t curandGetScrambleConstants64(unsigned long long** constants)
 curandStatus_t curandGetVersion(int* version)
 curandStatus_t curandSetGeneratorOffset(curandGenerator_t generator , unsigned long long offset)
 curandStatus_t curandSetGeneratorOrdering(curandGenerator_t generator , curandOrdering_t order)
 curandStatus_t curandSetPseudoRandomGeneratorSeed(curandGenerator_t generator , unsigned long long seed)
 curandStatus_t curandSetQuasiRandomGeneratorDimensions(curandGenerator_t generator , unsigned int num_dimensions)
 curandStatus_t curandSetStream(curandGenerator_t generator , cudaStream_t stream)

5.2. Device API#

 __device__ unsigned long long curand(curandStateScrambledSobol64_t* state)
 __device__ unsigned long long curand(curandStateSobol64_t* state)
 __device__ unsigned int curand(curandStateScrambledSobol32_t* state)
 __device__ unsigned int curand(curandStateSobol32_t* state)
 __device__ unsigned int curand(curandStateMRG32k3a_t* state)
 __device__ unsigned int curand(curandStatePhilox4_32_10_t* state)
 __device__ unsigned int curand(curandStateXORWOW_t* state)
 __device__ uint4 curand4(curandStatePhilox4_32_10_t* state)
-curandStatus_t curandMakeMTGP32Constants(const mtgp32_params_fast_t params [], mtgp32_kernel_params_t* p)
-curandStatus_t curandMakeMTGP32KernelState(curandStateMtgp32_t* s , mtgp32_params_fast_t params [], mtgp32_kernel_params_t* k , int n , unsigned long long seed)
 __device__ void curand_init(curandDirectionVectors64_t direction_vectors , unsigned long long scramble_c , unsigned long long offset , curandStateScrambledSobol64_t* state)
 __device__ void curand_init(curandDirectionVectors64_t direction_vectors , unsigned long long offset , curandStateSobol64_t* state)
 __device__ void curand_init(curandDirectionVectors32_t direction_vectors , unsigned int scramble_c , unsigned int offset , curandStateScrambledSobol32_t* state)
 __device__ void curand_init(curandDirectionVectors32_t direction_vectors , unsigned int offset , curandStateSobol32_t* state)
 __device__ void curand_init(unsigned long long seed , unsigned long long subsequence , unsigned long long offset , curandStateMRG32k3a_t* state)
 __device__ void curand_init(unsigned long long seed , unsigned long long subsequence , unsigned long long offset , curandStatePhilox4_32_10_t* state)
 __device__ void curand_init(unsigned long long seed , unsigned long long subsequence , unsigned long long offset , curandStateXORWOW_t* state)
 __device__ float curand_log_normal(curandStateScrambledSobol64_t* state , float mean , float stddev)
 __device__ float curand_log_normal(curandStateSobol64_t* state , float mean , float stddev)
 __device__ float curand_log_normal(curandStateScrambledSobol32_t* state , float mean , float stddev)
 __device__ float curand_log_normal(curandStateSobol32_t* state , float mean , float stddev)
 __device__ float curand_log_normal(curandStateMtgp32_t* state , float mean , float stddev)
 __device__ float curand_log_normal(curandStateMRG32k3a_t* state , float mean , float stddev)
 __device__ float curand_log_normal(curandStatePhilox4_32_10_t* state , float mean , float stddev)
 __device__ float curand_log_normal(curandStateXORWOW_t* state , float mean , float stddev)
 __device__ float2 curand_log_normal2(curandStateMRG32k3a_t* state , float mean , float stddev)
 __device__ float2 curand_log_normal2(curandStatePhilox4_32_10_t* state , float mean , float stddev)
 __device__ float2 curand_log_normal2(curandStateXORWOW_t* state , float mean , float stddev)
 __device__ double2 curand_log_normal2_double(curandStateMRG32k3a_t* state , double mean , double stddev)
 __device__ double2 curand_log_normal2_double(curandStatePhilox4_32_10_t* state , double mean , double stddev)
 __device__ double2 curand_log_normal2_double(curandStateXORWOW_t* state , double mean , double stddev)
 __device__ float4 curand_log_normal4(curandStatePhilox4_32_10_t* state , float mean , float stddev)
 __device__ double curand_log_normal_double(curandStateScrambledSobol64_t* state , double mean , double stddev)
 __device__ double curand_log_normal_double(curandStateSobol64_t* state , double mean , double stddev)
 __device__ double curand_log_normal_double(curandStateScrambledSobol32_t* state , double mean , double stddev)
 __device__ double curand_log_normal_double(curandStateSobol32_t* state , double mean , double stddev)
 __device__ double curand_log_normal_double(curandStateMtgp32_t* state , double mean , double stddev)
 __device__ double curand_log_normal_double(curandStateMRG32k3a_t* state , double mean , double stddev)
 __device__ double curand_log_normal_double(curandStatePhilox4_32_10_t* state , double mean , double stddev)
 __device__ double curand_log_normal_double(curandStateXORWOW_t* state , double mean , double stddev)
 __device__ float curand_normal(curandStateScrambledSobol64_t* state)
 __device__ float curand_normal(curandStateSobol64_t* state)
 __device__ float curand_normal(curandStateScrambledSobol32_t* state)
 __device__ float curand_normal(curandStateSobol32_t* state)
 __device__ float curand_normal(curandStateMtgp32_t* state)
 __device__ float curand_normal(curandStateMRG32k3a_t* state)
 __device__ float curand_normal(curandStatePhilox4_32_10_t* state)
 __device__ float curand_normal(curandStateXORWOW_t* state)
 __device__ float2 curand_normal2(curandStateMRG32k3a_t* state)
 __device__ float2 curand_normal2(curandStatePhilox4_32_10_t* state)
 __device__ float2 curand_normal2(curandStateXORWOW_t* state)
 __device__ double2 curand_normal2_double(curandStateMRG32k3a_t* state)
 __device__ double2 curand_normal2_double(curandStatePhilox4_32_10_t* state)
 __device__ double2 curand_normal2_double(curandStateXORWOW_t* state)
 __device__ float4 curand_normal4(curandStatePhilox4_32_10_t* state)
 __device__ double curand_normal_double(curandStateScrambledSobol64_t* state)
 __device__ double curand_normal_double(curandStateSobol64_t* state)
 __device__ double curand_normal_double(curandStateScrambledSobol32_t* state)
 __device__ double curand_normal_double(curandStateSobol32_t* state)
 __device__ double curand_normal_double(curandStateMtgp32_t* state)
 __device__ double curand_normal_double(curandStateMRG32k3a_t* state)
 __device__ double curand_normal_double(curandStatePhilox4_32_10_t* state)
 __device__ double curand_normal_double(curandStateXORWOW_t* state)
 __device__ unsigned int curand_poisson(curandStateScrambledSobol64_t* state , double lambda)
 __device__ unsigned int curand_poisson(curandStateSobol64_t* state , double lambda)
 __device__ unsigned int curand_poisson(curandStateScrambledSobol32_t* state , double lambda)
 __device__ unsigned int curand_poisson(curandStateSobol32_t* state , double lambda)
 __device__ unsigned int curand_poisson(curandStateMtgp32_t* state , double lambda)
 __device__ unsigned int curand_poisson(curandStateMRG32k3a_t* state , double lambda)
 __device__ unsigned int curand_poisson(curandStatePhilox4_32_10_t* state , double lambda)
 __device__ unsigned int curand_poisson(curandStateXORWOW_t* state , double lambda)
 __device__ uint4 curand_poisson4(curandStatePhilox4_32_10_t* state , double lambda)
 __device__ float curand_uniform(curandStateScrambledSobol64_t* state)
 __device__ float curand_uniform(curandStateSobol64_t* state)
 __device__ float curand_uniform(curandStateScrambledSobol32_t* state)
 __device__ float curand_uniform(curandStateSobol32_t* state)
 __device__ float curand_uniform(curandStateMtgp32_t* state)
 __device__ float curand_uniform(curandStatePhilox4_32_10_t* state)
 __device__ float curand_uniform(curandStateMRG32k3a_t* state)
 __device__ float curand_uniform(curandStateXORWOW_t* state)
 __device__ double2 curand_uniform2_double(curandStatePhilox4_32_10_t* state)
 __device__ float4 curand_uniform4(curandStatePhilox4_32_10_t* state)
 __device__ double curand_uniform_double(curandStateScrambledSobol64_t* state)
 __device__ double curand_uniform_double(curandStateSobol64_t* state)
 __device__ double curand_uniform_double(curandStateScrambledSobol32_t* state)
 __device__ double curand_uniform_double(curandStateSobol32_t* state)
 __device__ double curand_uniform_double(curandStatePhilox4_32_10_t* state)
 __device__ double curand_uniform_double(curandStateMtgp32_t* state)
 __device__ double curand_uniform_double(curandStateMRG32k3a_t* state)
 __device__ double curand_uniform_double(curandStateXORWOW_t* state)

96% (117 of 122 declarations available)

3.1. Pseudorandom Sequences#

-__device__ uint4 curand_discrete4(curandStatePhilox4_32_10_t *state, curandDiscreteDistribution_t discrete_distribution)

3.4. Device API for discrete distributions#

-__device__ unsigned int curand_discrete(curandState_t *state, curandDiscreteDistribution_t discrete_distribution)

5.1. Host API#

 enum curandDirectionVectorSet
     CURAND_DIRECTION_VECTORS_32_JOEKUO6 = 101
     CURAND_SCRAMBLED_DIRECTION_VECTORS_32_JOEKUO6 = 102
     CURAND_DIRECTION_VECTORS_64_JOEKUO6 = 103
     CURAND_SCRAMBLED_DIRECTION_VECTORS_64_JOEKUO6 = 104
 enum curandOrdering
     CURAND_ORDERING_PSEUDO_BEST = 100
     CURAND_ORDERING_PSEUDO_DEFAULT = 101
     CURAND_ORDERING_PSEUDO_SEEDED = 102
     CURAND_ORDERING_QUASI_DEFAULT = 201
 enum curandRngType
     CURAND_RNG_TEST = 0
     CURAND_RNG_PSEUDO_DEFAULT = 100
     CURAND_RNG_PSEUDO_XORWOW = 101
     CURAND_RNG_PSEUDO_MRG32K3A = 121
     CURAND_RNG_PSEUDO_MTGP32 = 141
     CURAND_RNG_PSEUDO_MT19937 = 142
     CURAND_RNG_PSEUDO_PHILOX4_32_10 = 161
     CURAND_RNG_QUASI_DEFAULT = 200
     CURAND_RNG_QUASI_SOBOL32 = 201
     CURAND_RNG_QUASI_SCRAMBLED_SOBOL32 = 202
     CURAND_RNG_QUASI_SOBOL64 = 203
     CURAND_RNG_QUASI_SCRAMBLED_SOBOL64 = 204
-enum curandStatus
 curandStatus_t curandCreateGenerator(curandGenerator_t* generator , curandRngType_t rng_type)
 curandStatus_t curandCreateGeneratorHost(curandGenerator_t* generator , curandRngType_t rng_type)
 curandStatus_t curandCreatePoissonDistribution(double lambda , curandDiscreteDistribution_t* discrete_distribution)
 curandStatus_t curandDestroyDistribution(curandDiscreteDistribution_t discrete_distribution)
 curandStatus_t curandDestroyGenerator(curandGenerator_t generator)
 curandStatus_t curandGenerate(curandGenerator_t generator , unsigned int* outputPtr , size_t num)
 curandStatus_t curandGenerateLogNormal(curandGenerator_t generator , float* outputPtr , size_t n , float mean , float stddev)
 curandStatus_t curandGenerateLogNormalDouble(curandGenerator_t generator , double* outputPtr , size_t n , double mean , double stddev)
 curandStatus_t curandGenerateLongLong(curandGenerator_t generator , unsigned long long* outputPtr , size_t num)
 curandStatus_t curandGenerateNormal(curandGenerator_t generator , float* outputPtr , size_t n , float mean , float stddev)
 curandStatus_t curandGenerateNormalDouble(curandGenerator_t generator , double* outputPtr , size_t n , double mean , double stddev)
 curandStatus_t curandGeneratePoisson(curandGenerator_t generator , unsigned int* outputPtr , size_t n , double lambda)
 curandStatus_t curandGenerateSeeds(curandGenerator_t generator)
 curandStatus_t curandGenerateUniform(curandGenerator_t generator , float* outputPtr , size_t num)
 curandStatus_t curandGenerateUniformDouble(curandGenerator_t generator , double* outputPtr , size_t num)
 curandStatus_t curandGetDirectionVectors32(curandDirectionVectors32_t* vectors[], curandDirectionVectorSet_t set)
 curandStatus_t curandGetDirectionVectors64(curandDirectionVectors64_t* vectors[], curandDirectionVectorSet_t set)
 curandStatus_t curandGetProperty(libraryPropertyType type , int* value)
 curandStatus_t curandGetScrambleConstants32(unsigned int** constants)
 curandStatus_t curandGetScrambleConstants64(unsigned long long** constants)
 curandStatus_t curandGetVersion(int* version)
 curandStatus_t curandSetGeneratorOffset(curandGenerator_t generator , unsigned long long offset)
 curandStatus_t curandSetGeneratorOrdering(curandGenerator_t generator , curandOrdering_t order)
 curandStatus_t curandSetPseudoRandomGeneratorSeed(curandGenerator_t generator , unsigned long long seed)
 curandStatus_t curandSetQuasiRandomGeneratorDimensions(curandGenerator_t generator , unsigned int num_dimensions)
 curandStatus_t curandSetStream(curandGenerator_t generator , cudaStream_t stream)

5.2. Device API#

 __device__ unsigned long long curand(curandStateScrambledSobol64_t* state)
 __device__ unsigned long long curand(curandStateSobol64_t* state)
 __device__ unsigned int curand(curandStateScrambledSobol32_t* state)
 __device__ unsigned int curand(curandStateSobol32_t* state)
 __device__ unsigned int curand(curandStateMRG32k3a_t* state)
 __device__ unsigned int curand(curandStatePhilox4_32_10_t* state)
 __device__ unsigned int curand(curandStateXORWOW_t* state)
 __device__ uint4 curand4(curandStatePhilox4_32_10_t* state)
-curandStatus_t curandMakeMTGP32Constants(const mtgp32_params_fast_t params [], mtgp32_kernel_params_t* p)
-curandStatus_t curandMakeMTGP32KernelState(curandStateMtgp32_t* s , mtgp32_params_fast_t params [], mtgp32_kernel_params_t* k , int n , unsigned long long seed)
 __device__ void curand_init(curandDirectionVectors64_t direction_vectors , unsigned long long scramble_c , unsigned long long offset , curandStateScrambledSobol64_t* state)
 __device__ void curand_init(curandDirectionVectors64_t direction_vectors , unsigned long long offset , curandStateSobol64_t* state)
 __device__ void curand_init(curandDirectionVectors32_t direction_vectors , unsigned int scramble_c , unsigned int offset , curandStateScrambledSobol32_t* state)
 __device__ void curand_init(curandDirectionVectors32_t direction_vectors , unsigned int offset , curandStateSobol32_t* state)
 __device__ void curand_init(unsigned long long seed , unsigned long long subsequence , unsigned long long offset , curandStateMRG32k3a_t* state)
 __device__ void curand_init(unsigned long long seed , unsigned long long subsequence , unsigned long long offset , curandStatePhilox4_32_10_t* state)
 __device__ void curand_init(unsigned long long seed , unsigned long long subsequence , unsigned long long offset , curandStateXORWOW_t* state)
 __device__ float curand_log_normal(curandStateScrambledSobol64_t* state , float mean , float stddev)
 __device__ float curand_log_normal(curandStateSobol64_t* state , float mean , float stddev)
 __device__ float curand_log_normal(curandStateScrambledSobol32_t* state , float mean , float stddev)
 __device__ float curand_log_normal(curandStateSobol32_t* state , float mean , float stddev)
 __device__ float curand_log_normal(curandStateMtgp32_t* state , float mean , float stddev)
 __device__ float curand_log_normal(curandStateMRG32k3a_t* state , float mean , float stddev)
 __device__ float curand_log_normal(curandStatePhilox4_32_10_t* state , float mean , float stddev)
 __device__ float curand_log_normal(curandStateXORWOW_t* state , float mean , float stddev)
 __device__ float2 curand_log_normal2(curandStateMRG32k3a_t* state , float mean , float stddev)
 __device__ float2 curand_log_normal2(curandStatePhilox4_32_10_t* state , float mean , float stddev)
 __device__ float2 curand_log_normal2(curandStateXORWOW_t* state , float mean , float stddev)
 __device__ double2 curand_log_normal2_double(curandStateMRG32k3a_t* state , double mean , double stddev)
 __device__ double2 curand_log_normal2_double(curandStatePhilox4_32_10_t* state , double mean , double stddev)
 __device__ double2 curand_log_normal2_double(curandStateXORWOW_t* state , double mean , double stddev)
 __device__ float4 curand_log_normal4(curandStatePhilox4_32_10_t* state , float mean , float stddev)
 __device__ double curand_log_normal_double(curandStateScrambledSobol64_t* state , double mean , double stddev)
 __device__ double curand_log_normal_double(curandStateSobol64_t* state , double mean , double stddev)
 __device__ double curand_log_normal_double(curandStateScrambledSobol32_t* state , double mean , double stddev)
 __device__ double curand_log_normal_double(curandStateSobol32_t* state , double mean , double stddev)
 __device__ double curand_log_normal_double(curandStateMtgp32_t* state , double mean , double stddev)
 __device__ double curand_log_normal_double(curandStateMRG32k3a_t* state , double mean , double stddev)
 __device__ double curand_log_normal_double(curandStatePhilox4_32_10_t* state , double mean , double stddev)
 __device__ double curand_log_normal_double(curandStateXORWOW_t* state , double mean , double stddev)
 __device__ float curand_normal(curandStateScrambledSobol64_t* state)
 __device__ float curand_normal(curandStateSobol64_t* state)
 __device__ float curand_normal(curandStateScrambledSobol32_t* state)
 __device__ float curand_normal(curandStateSobol32_t* state)
 __device__ float curand_normal(curandStateMtgp32_t* state)
 __device__ float curand_normal(curandStateMRG32k3a_t* state)
 __device__ float curand_normal(curandStatePhilox4_32_10_t* state)
 __device__ float curand_normal(curandStateXORWOW_t* state)
 __device__ float2 curand_normal2(curandStateMRG32k3a_t* state)
 __device__ float2 curand_normal2(curandStatePhilox4_32_10_t* state)
 __device__ float2 curand_normal2(curandStateXORWOW_t* state)
 __device__ double2 curand_normal2_double(curandStateMRG32k3a_t* state)
 __device__ double2 curand_normal2_double(curandStatePhilox4_32_10_t* state)
 __device__ double2 curand_normal2_double(curandStateXORWOW_t* state)
 __device__ float4 curand_normal4(curandStatePhilox4_32_10_t* state)
 __device__ double curand_normal_double(curandStateScrambledSobol64_t* state)
 __device__ double curand_normal_double(curandStateSobol64_t* state)
 __device__ double curand_normal_double(curandStateScrambledSobol32_t* state)
 __device__ double curand_normal_double(curandStateSobol32_t* state)
 __device__ double curand_normal_double(curandStateMtgp32_t* state)
 __device__ double curand_normal_double(curandStateMRG32k3a_t* state)
 __device__ double curand_normal_double(curandStatePhilox4_32_10_t* state)
 __device__ double curand_normal_double(curandStateXORWOW_t* state)
 __device__ unsigned int curand_poisson(curandStateScrambledSobol64_t* state , double lambda)
 __device__ unsigned int curand_poisson(curandStateSobol64_t* state , double lambda)
 __device__ unsigned int curand_poisson(curandStateScrambledSobol32_t* state , double lambda)
 __device__ unsigned int curand_poisson(curandStateSobol32_t* state , double lambda)
 __device__ unsigned int curand_poisson(curandStateMtgp32_t* state , double lambda)
 __device__ unsigned int curand_poisson(curandStateMRG32k3a_t* state , double lambda)
 __device__ unsigned int curand_poisson(curandStatePhilox4_32_10_t* state , double lambda)
 __device__ unsigned int curand_poisson(curandStateXORWOW_t* state , double lambda)
 __device__ uint4 curand_poisson4(curandStatePhilox4_32_10_t* state , double lambda)
 __device__ float curand_uniform(curandStateScrambledSobol64_t* state)
 __device__ float curand_uniform(curandStateSobol64_t* state)
 __device__ float curand_uniform(curandStateScrambledSobol32_t* state)
 __device__ float curand_uniform(curandStateSobol32_t* state)
 __device__ float curand_uniform(curandStateMtgp32_t* state)
 __device__ float curand_uniform(curandStatePhilox4_32_10_t* state)
 __device__ float curand_uniform(curandStateMRG32k3a_t* state)
 __device__ float curand_uniform(curandStateXORWOW_t* state)
 __device__ double2 curand_uniform2_double(curandStatePhilox4_32_10_t* state)
 __device__ float4 curand_uniform4(curandStatePhilox4_32_10_t* state)
 __device__ double curand_uniform_double(curandStateScrambledSobol64_t* state)
 __device__ double curand_uniform_double(curandStateSobol64_t* state)
 __device__ double curand_uniform_double(curandStateScrambledSobol32_t* state)
 __device__ double curand_uniform_double(curandStateSobol32_t* state)
 __device__ double curand_uniform_double(curandStatePhilox4_32_10_t* state)
 __device__ double curand_uniform_double(curandStateMtgp32_t* state)
 __device__ double curand_uniform_double(curandStateMRG32k3a_t* state)
 __device__ double curand_uniform_double(curandStateXORWOW_t* state)

98% (117 of 120 declarations available)

3.1. Pseudorandom Sequences#

-__device__ uint4 curand_discrete4(curandStatePhilox4_32_10_t *state, curandDiscreteDistribution_t discrete_distribution)

3.4. Device API for discrete distributions#

-__device__ unsigned int curand_discrete(curandState_t *state, curandDiscreteDistribution_t discrete_distribution)

5.1. Host API#

 enum curandDirectionVectorSet
     CURAND_DIRECTION_VECTORS_32_JOEKUO6 = 101
     CURAND_SCRAMBLED_DIRECTION_VECTORS_32_JOEKUO6 = 102
     CURAND_DIRECTION_VECTORS_64_JOEKUO6 = 103
     CURAND_SCRAMBLED_DIRECTION_VECTORS_64_JOEKUO6 = 104
 enum curandOrdering
     CURAND_ORDERING_PSEUDO_BEST = 100
     CURAND_ORDERING_PSEUDO_DEFAULT = 101
     CURAND_ORDERING_PSEUDO_SEEDED = 102
     CURAND_ORDERING_QUASI_DEFAULT = 201
 enum curandRngType
     CURAND_RNG_TEST = 0
     CURAND_RNG_PSEUDO_DEFAULT = 100
     CURAND_RNG_PSEUDO_XORWOW = 101
     CURAND_RNG_PSEUDO_MRG32K3A = 121
     CURAND_RNG_PSEUDO_MTGP32 = 141
     CURAND_RNG_PSEUDO_MT19937 = 142
     CURAND_RNG_PSEUDO_PHILOX4_32_10 = 161
     CURAND_RNG_QUASI_DEFAULT = 200
     CURAND_RNG_QUASI_SOBOL32 = 201
     CURAND_RNG_QUASI_SCRAMBLED_SOBOL32 = 202
     CURAND_RNG_QUASI_SOBOL64 = 203
     CURAND_RNG_QUASI_SCRAMBLED_SOBOL64 = 204
-enum curandStatus
 curandStatus_t curandCreateGenerator(curandGenerator_t* generator , curandRngType_t rng_type)
 curandStatus_t curandCreateGeneratorHost(curandGenerator_t* generator , curandRngType_t rng_type)
 curandStatus_t curandCreatePoissonDistribution(double lambda , curandDiscreteDistribution_t* discrete_distribution)
 curandStatus_t curandDestroyDistribution(curandDiscreteDistribution_t discrete_distribution)
 curandStatus_t curandDestroyGenerator(curandGenerator_t generator)
 curandStatus_t curandGenerate(curandGenerator_t generator , unsigned int* outputPtr , size_t num)
 curandStatus_t curandGenerateLogNormal(curandGenerator_t generator , float* outputPtr , size_t n , float mean , float stddev)
 curandStatus_t curandGenerateLogNormalDouble(curandGenerator_t generator , double* outputPtr , size_t n , double mean , double stddev)
 curandStatus_t curandGenerateLongLong(curandGenerator_t generator , unsigned long long* outputPtr , size_t num)
 curandStatus_t curandGenerateNormal(curandGenerator_t generator , float* outputPtr , size_t n , float mean , float stddev)
 curandStatus_t curandGenerateNormalDouble(curandGenerator_t generator , double* outputPtr , size_t n , double mean , double stddev)
 curandStatus_t curandGeneratePoisson(curandGenerator_t generator , unsigned int* outputPtr , size_t n , double lambda)
 curandStatus_t curandGenerateSeeds(curandGenerator_t generator)
 curandStatus_t curandGenerateUniform(curandGenerator_t generator , float* outputPtr , size_t num)
 curandStatus_t curandGenerateUniformDouble(curandGenerator_t generator , double* outputPtr , size_t num)
 curandStatus_t curandGetDirectionVectors32(curandDirectionVectors32_t* vectors[], curandDirectionVectorSet_t set)
 curandStatus_t curandGetDirectionVectors64(curandDirectionVectors64_t* vectors[], curandDirectionVectorSet_t set)
 curandStatus_t curandGetProperty(libraryPropertyType type , int* value)
 curandStatus_t curandGetScrambleConstants32(unsigned int** constants)
 curandStatus_t curandGetScrambleConstants64(unsigned long long** constants)
 curandStatus_t curandGetVersion(int* version)
 curandStatus_t curandSetGeneratorOffset(curandGenerator_t generator , unsigned long long offset)
 curandStatus_t curandSetGeneratorOrdering(curandGenerator_t generator , curandOrdering_t order)
 curandStatus_t curandSetPseudoRandomGeneratorSeed(curandGenerator_t generator , unsigned long long seed)
 curandStatus_t curandSetQuasiRandomGeneratorDimensions(curandGenerator_t generator , unsigned int num_dimensions)
 curandStatus_t curandSetStream(curandGenerator_t generator , cudaStream_t stream)

5.2. Device API#

 __device__ unsigned long long curand(curandStateScrambledSobol64_t* state)
 __device__ unsigned long long curand(curandStateSobol64_t* state)
 __device__ unsigned int curand(curandStateScrambledSobol32_t* state)
 __device__ unsigned int curand(curandStateSobol32_t* state)
 __device__ unsigned int curand(curandStateMRG32k3a_t* state)
 __device__ unsigned int curand(curandStatePhilox4_32_10_t* state)
 __device__ unsigned int curand(curandStateXORWOW_t* state)
 __device__ uint4 curand4(curandStatePhilox4_32_10_t* state)
 __device__ void curand_init(curandDirectionVectors64_t direction_vectors , unsigned long long scramble_c , unsigned long long offset , curandStateScrambledSobol64_t* state)
 __device__ void curand_init(curandDirectionVectors64_t direction_vectors , unsigned long long offset , curandStateSobol64_t* state)
 __device__ void curand_init(curandDirectionVectors32_t direction_vectors , unsigned int scramble_c , unsigned int offset , curandStateScrambledSobol32_t* state)
 __device__ void curand_init(curandDirectionVectors32_t direction_vectors , unsigned int offset , curandStateSobol32_t* state)
 __device__ void curand_init(unsigned long long seed , unsigned long long subsequence , unsigned long long offset , curandStateMRG32k3a_t* state)
 __device__ void curand_init(unsigned long long seed , unsigned long long subsequence , unsigned long long offset , curandStatePhilox4_32_10_t* state)
 __device__ void curand_init(unsigned long long seed , unsigned long long subsequence , unsigned long long offset , curandStateXORWOW_t* state)
 __device__ float curand_log_normal(curandStateScrambledSobol64_t* state , float mean , float stddev)
 __device__ float curand_log_normal(curandStateSobol64_t* state , float mean , float stddev)
 __device__ float curand_log_normal(curandStateScrambledSobol32_t* state , float mean , float stddev)
 __device__ float curand_log_normal(curandStateSobol32_t* state , float mean , float stddev)
 __device__ float curand_log_normal(curandStateMtgp32_t* state , float mean , float stddev)
 __device__ float curand_log_normal(curandStateMRG32k3a_t* state , float mean , float stddev)
 __device__ float curand_log_normal(curandStatePhilox4_32_10_t* state , float mean , float stddev)
 __device__ float curand_log_normal(curandStateXORWOW_t* state , float mean , float stddev)
 __device__ float2 curand_log_normal2(curandStateMRG32k3a_t* state , float mean , float stddev)
 __device__ float2 curand_log_normal2(curandStatePhilox4_32_10_t* state , float mean , float stddev)
 __device__ float2 curand_log_normal2(curandStateXORWOW_t* state , float mean , float stddev)
 __device__ double2 curand_log_normal2_double(curandStateMRG32k3a_t* state , double mean , double stddev)
 __device__ double2 curand_log_normal2_double(curandStatePhilox4_32_10_t* state , double mean , double stddev)
 __device__ double2 curand_log_normal2_double(curandStateXORWOW_t* state , double mean , double stddev)
 __device__ float4 curand_log_normal4(curandStatePhilox4_32_10_t* state , float mean , float stddev)
 __device__ double curand_log_normal_double(curandStateScrambledSobol64_t* state , double mean , double stddev)
 __device__ double curand_log_normal_double(curandStateSobol64_t* state , double mean , double stddev)
 __device__ double curand_log_normal_double(curandStateScrambledSobol32_t* state , double mean , double stddev)
 __device__ double curand_log_normal_double(curandStateSobol32_t* state , double mean , double stddev)
 __device__ double curand_log_normal_double(curandStateMtgp32_t* state , double mean , double stddev)
 __device__ double curand_log_normal_double(curandStateMRG32k3a_t* state , double mean , double stddev)
 __device__ double curand_log_normal_double(curandStatePhilox4_32_10_t* state , double mean , double stddev)
 __device__ double curand_log_normal_double(curandStateXORWOW_t* state , double mean , double stddev)
 __device__ float curand_normal(curandStateScrambledSobol64_t* state)
 __device__ float curand_normal(curandStateSobol64_t* state)
 __device__ float curand_normal(curandStateScrambledSobol32_t* state)
 __device__ float curand_normal(curandStateSobol32_t* state)
 __device__ float curand_normal(curandStateMtgp32_t* state)
 __device__ float curand_normal(curandStateMRG32k3a_t* state)
 __device__ float curand_normal(curandStatePhilox4_32_10_t* state)
 __device__ float curand_normal(curandStateXORWOW_t* state)
 __device__ float2 curand_normal2(curandStateMRG32k3a_t* state)
 __device__ float2 curand_normal2(curandStatePhilox4_32_10_t* state)
 __device__ float2 curand_normal2(curandStateXORWOW_t* state)
 __device__ double2 curand_normal2_double(curandStateMRG32k3a_t* state)
 __device__ double2 curand_normal2_double(curandStatePhilox4_32_10_t* state)
 __device__ double2 curand_normal2_double(curandStateXORWOW_t* state)
 __device__ float4 curand_normal4(curandStatePhilox4_32_10_t* state)
 __device__ double curand_normal_double(curandStateScrambledSobol64_t* state)
 __device__ double curand_normal_double(curandStateSobol64_t* state)
 __device__ double curand_normal_double(curandStateScrambledSobol32_t* state)
 __device__ double curand_normal_double(curandStateSobol32_t* state)
 __device__ double curand_normal_double(curandStateMtgp32_t* state)
 __device__ double curand_normal_double(curandStateMRG32k3a_t* state)
 __device__ double curand_normal_double(curandStatePhilox4_32_10_t* state)
 __device__ double curand_normal_double(curandStateXORWOW_t* state)
 __device__ unsigned int curand_poisson(curandStateScrambledSobol64_t* state , double lambda)
 __device__ unsigned int curand_poisson(curandStateSobol64_t* state , double lambda)
 __device__ unsigned int curand_poisson(curandStateScrambledSobol32_t* state , double lambda)
 __device__ unsigned int curand_poisson(curandStateSobol32_t* state , double lambda)
 __device__ unsigned int curand_poisson(curandStateMtgp32_t* state , double lambda)
 __device__ unsigned int curand_poisson(curandStateMRG32k3a_t* state , double lambda)
 __device__ unsigned int curand_poisson(curandStatePhilox4_32_10_t* state , double lambda)
 __device__ unsigned int curand_poisson(curandStateXORWOW_t* state , double lambda)
 __device__ uint4 curand_poisson4(curandStatePhilox4_32_10_t* state , double lambda)
 __device__ float curand_uniform(curandStateScrambledSobol64_t* state)
 __device__ float curand_uniform(curandStateSobol64_t* state)
 __device__ float curand_uniform(curandStateScrambledSobol32_t* state)
 __device__ float curand_uniform(curandStateSobol32_t* state)
 __device__ float curand_uniform(curandStateMtgp32_t* state)
 __device__ float curand_uniform(curandStatePhilox4_32_10_t* state)
 __device__ float curand_uniform(curandStateMRG32k3a_t* state)
 __device__ float curand_uniform(curandStateXORWOW_t* state)
 __device__ double2 curand_uniform2_double(curandStatePhilox4_32_10_t* state)
 __device__ float4 curand_uniform4(curandStatePhilox4_32_10_t* state)
 __device__ double curand_uniform_double(curandStateScrambledSobol64_t* state)
 __device__ double curand_uniform_double(curandStateSobol64_t* state)
 __device__ double curand_uniform_double(curandStateScrambledSobol32_t* state)
 __device__ double curand_uniform_double(curandStateSobol32_t* state)
 __device__ double curand_uniform_double(curandStatePhilox4_32_10_t* state)
 __device__ double curand_uniform_double(curandStateMtgp32_t* state)
 __device__ double curand_uniform_double(curandStateMRG32k3a_t* state)
 __device__ double curand_uniform_double(curandStateXORWOW_t* state)

98% (121 of 124 declarations available)

3.1. Pseudorandom Sequences#

-__device__ uint4 curand_discrete4(curandStatePhilox4_32_10_t *state, curandDiscreteDistribution_t discrete_distribution)

3.4. Device API for discrete distributions#

-__device__ unsigned int curand_discrete(curandState_t *state, curandDiscreteDistribution_t discrete_distribution)

5.1. Host API#

 enum curandDirectionVectorSet
     CURAND_DIRECTION_VECTORS_32_JOEKUO6 = 101
     CURAND_SCRAMBLED_DIRECTION_VECTORS_32_JOEKUO6 = 102
     CURAND_DIRECTION_VECTORS_64_JOEKUO6 = 103
     CURAND_SCRAMBLED_DIRECTION_VECTORS_64_JOEKUO6 = 104
 enum curandOrdering
     CURAND_ORDERING_PSEUDO_BEST = 100
     CURAND_ORDERING_PSEUDO_DEFAULT = 101
     CURAND_ORDERING_PSEUDO_SEEDED = 102
     CURAND_ORDERING_PSEUDO_LEGACY = 103
     CURAND_ORDERING_PSEUDO_DYNAMIC = 104
     CURAND_ORDERING_QUASI_DEFAULT = 201
 enum curandRngType
     CURAND_RNG_TEST = 0
     CURAND_RNG_PSEUDO_DEFAULT = 100
     CURAND_RNG_PSEUDO_XORWOW = 101
     CURAND_RNG_PSEUDO_MRG32K3A = 121
     CURAND_RNG_PSEUDO_MTGP32 = 141
     CURAND_RNG_PSEUDO_MT19937 = 142
     CURAND_RNG_PSEUDO_PHILOX4_32_10 = 161
     CURAND_RNG_QUASI_DEFAULT = 200
     CURAND_RNG_QUASI_SOBOL32 = 201
     CURAND_RNG_QUASI_SCRAMBLED_SOBOL32 = 202
     CURAND_RNG_QUASI_SOBOL64 = 203
     CURAND_RNG_QUASI_SCRAMBLED_SOBOL64 = 204
-enum curandStatus
 curandStatus_t curandCreateGenerator(curandGenerator_t* generator , curandRngType_t rng_type)
 curandStatus_t curandCreateGeneratorHost(curandGenerator_t* generator , curandRngType_t rng_type)
 curandStatus_t curandCreatePoissonDistribution(double lambda , curandDiscreteDistribution_t* discrete_distribution)
 curandStatus_t curandDestroyDistribution(curandDiscreteDistribution_t discrete_distribution)
 curandStatus_t curandDestroyGenerator(curandGenerator_t generator)
 curandStatus_t curandGenerate(curandGenerator_t generator , unsigned int* outputPtr , size_t num)
 curandStatus_t curandGenerateLogNormal(curandGenerator_t generator , float* outputPtr , size_t n , float mean , float stddev)
 curandStatus_t curandGenerateLogNormalDouble(curandGenerator_t generator , double* outputPtr , size_t n , double mean , double stddev)
 curandStatus_t curandGenerateLongLong(curandGenerator_t generator , unsigned long long* outputPtr , size_t num)
 curandStatus_t curandGenerateNormal(curandGenerator_t generator , float* outputPtr , size_t n , float mean , float stddev)
 curandStatus_t curandGenerateNormalDouble(curandGenerator_t generator , double* outputPtr , size_t n , double mean , double stddev)
 curandStatus_t curandGeneratePoisson(curandGenerator_t generator , unsigned int* outputPtr , size_t n , double lambda)
 curandStatus_t curandGenerateSeeds(curandGenerator_t generator)
 curandStatus_t curandGenerateUniform(curandGenerator_t generator , float* outputPtr , size_t num)
 curandStatus_t curandGenerateUniformDouble(curandGenerator_t generator , double* outputPtr , size_t num)
 curandStatus_t curandGetDirectionVectors32(curandDirectionVectors32_t* vectors[], curandDirectionVectorSet_t set)
 curandStatus_t curandGetDirectionVectors64(curandDirectionVectors64_t* vectors[], curandDirectionVectorSet_t set)
 curandStatus_t curandGetProperty(libraryPropertyType type , int* value)
 curandStatus_t curandGetScrambleConstants32(unsigned int** constants)
 curandStatus_t curandGetScrambleConstants64(unsigned long long** constants)
 curandStatus_t curandGetVersion(int* version)
 curandStatus_t curandSetGeneratorOffset(curandGenerator_t generator , unsigned long long offset)
 curandStatus_t curandSetGeneratorOrdering(curandGenerator_t generator , curandOrdering_t order)
 curandStatus_t curandSetPseudoRandomGeneratorSeed(curandGenerator_t generator , unsigned long long seed)
 curandStatus_t curandSetQuasiRandomGeneratorDimensions(curandGenerator_t generator , unsigned int num_dimensions)
 curandStatus_t curandSetStream(curandGenerator_t generator , cudaStream_t stream)

5.2. Device API#

 __device__ unsigned int curand(curandStateMtgp32_t* state)
 __device__ unsigned long long curand(curandStateScrambledSobol64_t* state)
 __device__ unsigned long long curand(curandStateSobol64_t* state)
 __device__ unsigned int curand(curandStateScrambledSobol32_t* state)
 __device__ unsigned int curand(curandStateSobol32_t* state)
 __device__ unsigned int curand(curandStateMRG32k3a_t* state)
 __device__ unsigned int curand(curandStatePhilox4_32_10_t* state)
 __device__ unsigned int curand(curandStateXORWOW_t* state)
 __device__ uint4 curand4(curandStatePhilox4_32_10_t* state)
 __device__ void curand_init(curandDirectionVectors64_t direction_vectors , unsigned long long scramble_c , unsigned long long offset , curandStateScrambledSobol64_t* state)
 __device__ void curand_init(curandDirectionVectors64_t direction_vectors , unsigned long long offset , curandStateSobol64_t* state)
 __device__ void curand_init(curandDirectionVectors32_t direction_vectors , unsigned int scramble_c , unsigned int offset , curandStateScrambledSobol32_t* state)
 __device__ void curand_init(curandDirectionVectors32_t direction_vectors , unsigned int offset , curandStateSobol32_t* state)
 __device__ void curand_init(unsigned long long seed , unsigned long long subsequence , unsigned long long offset , curandStateMRG32k3a_t* state)
 __device__ void curand_init(unsigned long long seed , unsigned long long subsequence , unsigned long long offset , curandStatePhilox4_32_10_t* state)
 __device__ void curand_init(unsigned long long seed , unsigned long long subsequence , unsigned long long offset , curandStateXORWOW_t* state)
 __device__ float curand_log_normal(curandStateScrambledSobol64_t* state , float mean , float stddev)
 __device__ float curand_log_normal(curandStateSobol64_t* state , float mean , float stddev)
 __device__ float curand_log_normal(curandStateScrambledSobol32_t* state , float mean , float stddev)
 __device__ float curand_log_normal(curandStateSobol32_t* state , float mean , float stddev)
 __device__ float curand_log_normal(curandStateMtgp32_t* state , float mean , float stddev)
 __device__ float curand_log_normal(curandStateMRG32k3a_t* state , float mean , float stddev)
 __device__ float curand_log_normal(curandStatePhilox4_32_10_t* state , float mean , float stddev)
 __device__ float curand_log_normal(curandStateXORWOW_t* state , float mean , float stddev)
 __device__ float2 curand_log_normal2(curandStateMRG32k3a_t* state , float mean , float stddev)
 __device__ float2 curand_log_normal2(curandStatePhilox4_32_10_t* state , float mean , float stddev)
 __device__ float2 curand_log_normal2(curandStateXORWOW_t* state , float mean , float stddev)
 __device__ double2 curand_log_normal2_double(curandStateMRG32k3a_t* state , double mean , double stddev)
 __device__ double2 curand_log_normal2_double(curandStatePhilox4_32_10_t* state , double mean , double stddev)
 __device__ double2 curand_log_normal2_double(curandStateXORWOW_t* state , double mean , double stddev)
 __device__ float4 curand_log_normal4(curandStatePhilox4_32_10_t* state , float mean , float stddev)
 __device__ double curand_log_normal_double(curandStateScrambledSobol64_t* state , double mean , double stddev)
 __device__ double curand_log_normal_double(curandStateSobol64_t* state , double mean , double stddev)
 __device__ double curand_log_normal_double(curandStateScrambledSobol32_t* state , double mean , double stddev)
 __device__ double curand_log_normal_double(curandStateSobol32_t* state , double mean , double stddev)
 __device__ double curand_log_normal_double(curandStateMtgp32_t* state , double mean , double stddev)
 __device__ double curand_log_normal_double(curandStateMRG32k3a_t* state , double mean , double stddev)
 __device__ double curand_log_normal_double(curandStatePhilox4_32_10_t* state , double mean , double stddev)
 __device__ double curand_log_normal_double(curandStateXORWOW_t* state , double mean , double stddev)
 __device__ float curand_mtgp32_single(curandStateMtgp32_t* state)
 __device__ float curand_mtgp32_single_specific(curandStateMtgp32_t* state , unsigned char index , unsigned char n)
 __device__ unsigned int curand_mtgp32_specific(curandStateMtgp32_t* state , unsigned char index , unsigned char n)
 __device__ float curand_normal(curandStateScrambledSobol64_t* state)
 __device__ float curand_normal(curandStateSobol64_t* state)
 __device__ float curand_normal(curandStateScrambledSobol32_t* state)
 __device__ float curand_normal(curandStateSobol32_t* state)
 __device__ float curand_normal(curandStateMtgp32_t* state)
 __device__ float curand_normal(curandStateMRG32k3a_t* state)
 __device__ float curand_normal(curandStatePhilox4_32_10_t* state)
 __device__ float curand_normal(curandStateXORWOW_t* state)
 __device__ float2 curand_normal2(curandStateMRG32k3a_t* state)
 __device__ float2 curand_normal2(curandStatePhilox4_32_10_t* state)
 __device__ float2 curand_normal2(curandStateXORWOW_t* state)
 __device__ double2 curand_normal2_double(curandStateMRG32k3a_t* state)
 __device__ double2 curand_normal2_double(curandStatePhilox4_32_10_t* state)
 __device__ double2 curand_normal2_double(curandStateXORWOW_t* state)
 __device__ float4 curand_normal4(curandStatePhilox4_32_10_t* state)
 __device__ double curand_normal_double(curandStateScrambledSobol64_t* state)
 __device__ double curand_normal_double(curandStateSobol64_t* state)
 __device__ double curand_normal_double(curandStateScrambledSobol32_t* state)
 __device__ double curand_normal_double(curandStateSobol32_t* state)
 __device__ double curand_normal_double(curandStateMtgp32_t* state)
 __device__ double curand_normal_double(curandStateMRG32k3a_t* state)
 __device__ double curand_normal_double(curandStatePhilox4_32_10_t* state)
 __device__ double curand_normal_double(curandStateXORWOW_t* state)
 __device__ unsigned int curand_poisson(curandStateScrambledSobol64_t* state , double lambda)
 __device__ unsigned int curand_poisson(curandStateSobol64_t* state , double lambda)
 __device__ unsigned int curand_poisson(curandStateScrambledSobol32_t* state , double lambda)
 __device__ unsigned int curand_poisson(curandStateSobol32_t* state , double lambda)
 __device__ unsigned int curand_poisson(curandStateMtgp32_t* state , double lambda)
 __device__ unsigned int curand_poisson(curandStateMRG32k3a_t* state , double lambda)
 __device__ unsigned int curand_poisson(curandStatePhilox4_32_10_t* state , double lambda)
 __device__ unsigned int curand_poisson(curandStateXORWOW_t* state , double lambda)
 __device__ uint4 curand_poisson4(curandStatePhilox4_32_10_t* state , double lambda)
 __device__ float curand_uniform(curandStateScrambledSobol64_t* state)
 __device__ float curand_uniform(curandStateSobol64_t* state)
 __device__ float curand_uniform(curandStateScrambledSobol32_t* state)
 __device__ float curand_uniform(curandStateSobol32_t* state)
 __device__ float curand_uniform(curandStateMtgp32_t* state)
 __device__ float curand_uniform(curandStatePhilox4_32_10_t* state)
 __device__ float curand_uniform(curandStateMRG32k3a_t* state)
 __device__ float curand_uniform(curandStateXORWOW_t* state)
 __device__ double2 curand_uniform2_double(curandStatePhilox4_32_10_t* state)
 __device__ float4 curand_uniform4(curandStatePhilox4_32_10_t* state)
 __device__ double curand_uniform_double(curandStateScrambledSobol64_t* state)
 __device__ double curand_uniform_double(curandStateSobol64_t* state)
 __device__ double curand_uniform_double(curandStateScrambledSobol32_t* state)
 __device__ double curand_uniform_double(curandStateSobol32_t* state)
 __device__ double curand_uniform_double(curandStatePhilox4_32_10_t* state)
 __device__ double curand_uniform_double(curandStateMtgp32_t* state)
 __device__ double curand_uniform_double(curandStateMRG32k3a_t* state)
 __device__ double curand_uniform_double(curandStateXORWOW_t* state)

98% (121 of 124 declarations available)

3.1. Pseudorandom Sequences#

-__device__ uint4 curand_discrete4(curandStatePhilox4_32_10_t *state, curandDiscreteDistribution_t discrete_distribution)

3.4. Device API for discrete distributions#

-__device__ unsigned int curand_discrete(curandState_t *state, curandDiscreteDistribution_t discrete_distribution)

5.1. Host API#

 enum curandDirectionVectorSet
     CURAND_DIRECTION_VECTORS_32_JOEKUO6 = 101
     CURAND_SCRAMBLED_DIRECTION_VECTORS_32_JOEKUO6 = 102
     CURAND_DIRECTION_VECTORS_64_JOEKUO6 = 103
     CURAND_SCRAMBLED_DIRECTION_VECTORS_64_JOEKUO6 = 104
 enum curandOrdering
     CURAND_ORDERING_PSEUDO_BEST = 100
     CURAND_ORDERING_PSEUDO_DEFAULT = 101
     CURAND_ORDERING_PSEUDO_SEEDED = 102
     CURAND_ORDERING_PSEUDO_LEGACY = 103
     CURAND_ORDERING_PSEUDO_DYNAMIC = 104
     CURAND_ORDERING_QUASI_DEFAULT = 201
 enum curandRngType
     CURAND_RNG_TEST = 0
     CURAND_RNG_PSEUDO_DEFAULT = 100
     CURAND_RNG_PSEUDO_XORWOW = 101
     CURAND_RNG_PSEUDO_MRG32K3A = 121
     CURAND_RNG_PSEUDO_MTGP32 = 141
     CURAND_RNG_PSEUDO_MT19937 = 142
     CURAND_RNG_PSEUDO_PHILOX4_32_10 = 161
     CURAND_RNG_QUASI_DEFAULT = 200
     CURAND_RNG_QUASI_SOBOL32 = 201
     CURAND_RNG_QUASI_SCRAMBLED_SOBOL32 = 202
     CURAND_RNG_QUASI_SOBOL64 = 203
     CURAND_RNG_QUASI_SCRAMBLED_SOBOL64 = 204
-enum curandStatus
 curandStatus_t curandCreateGenerator(curandGenerator_t* generator , curandRngType_t rng_type)
 curandStatus_t curandCreateGeneratorHost(curandGenerator_t* generator , curandRngType_t rng_type)
 curandStatus_t curandCreatePoissonDistribution(double lambda , curandDiscreteDistribution_t* discrete_distribution)
 curandStatus_t curandDestroyDistribution(curandDiscreteDistribution_t discrete_distribution)
 curandStatus_t curandDestroyGenerator(curandGenerator_t generator)
 curandStatus_t curandGenerate(curandGenerator_t generator , unsigned int* outputPtr , size_t num)
 curandStatus_t curandGenerateLogNormal(curandGenerator_t generator , float* outputPtr , size_t n , float mean , float stddev)
 curandStatus_t curandGenerateLogNormalDouble(curandGenerator_t generator , double* outputPtr , size_t n , double mean , double stddev)
 curandStatus_t curandGenerateLongLong(curandGenerator_t generator , unsigned long long* outputPtr , size_t num)
 curandStatus_t curandGenerateNormal(curandGenerator_t generator , float* outputPtr , size_t n , float mean , float stddev)
 curandStatus_t curandGenerateNormalDouble(curandGenerator_t generator , double* outputPtr , size_t n , double mean , double stddev)
 curandStatus_t curandGeneratePoisson(curandGenerator_t generator , unsigned int* outputPtr , size_t n , double lambda)
 curandStatus_t curandGenerateSeeds(curandGenerator_t generator)
 curandStatus_t curandGenerateUniform(curandGenerator_t generator , float* outputPtr , size_t num)
 curandStatus_t curandGenerateUniformDouble(curandGenerator_t generator , double* outputPtr , size_t num)
 curandStatus_t curandGetDirectionVectors32(curandDirectionVectors32_t* vectors[], curandDirectionVectorSet_t set)
 curandStatus_t curandGetDirectionVectors64(curandDirectionVectors64_t* vectors[], curandDirectionVectorSet_t set)
 curandStatus_t curandGetProperty(libraryPropertyType type , int* value)
 curandStatus_t curandGetScrambleConstants32(unsigned int** constants)
 curandStatus_t curandGetScrambleConstants64(unsigned long long** constants)
 curandStatus_t curandGetVersion(int* version)
 curandStatus_t curandSetGeneratorOffset(curandGenerator_t generator , unsigned long long offset)
 curandStatus_t curandSetGeneratorOrdering(curandGenerator_t generator , curandOrdering_t order)
 curandStatus_t curandSetPseudoRandomGeneratorSeed(curandGenerator_t generator , unsigned long long seed)
 curandStatus_t curandSetQuasiRandomGeneratorDimensions(curandGenerator_t generator , unsigned int num_dimensions)
 curandStatus_t curandSetStream(curandGenerator_t generator , cudaStream_t stream)

5.2. Device API#

 __device__ unsigned int curand(curandStateMtgp32_t* state)
 __device__ unsigned long long curand(curandStateScrambledSobol64_t* state)
 __device__ unsigned long long curand(curandStateSobol64_t* state)
 __device__ unsigned int curand(curandStateScrambledSobol32_t* state)
 __device__ unsigned int curand(curandStateSobol32_t* state)
 __device__ unsigned int curand(curandStateMRG32k3a_t* state)
 __device__ unsigned int curand(curandStatePhilox4_32_10_t* state)
 __device__ unsigned int curand(curandStateXORWOW_t* state)
 __device__ uint4 curand4(curandStatePhilox4_32_10_t* state)
 __device__ void curand_init(curandDirectionVectors64_t direction_vectors , unsigned long long scramble_c , unsigned long long offset , curandStateScrambledSobol64_t* state)
 __device__ void curand_init(curandDirectionVectors64_t direction_vectors , unsigned long long offset , curandStateSobol64_t* state)
 __device__ void curand_init(curandDirectionVectors32_t direction_vectors , unsigned int scramble_c , unsigned int offset , curandStateScrambledSobol32_t* state)
 __device__ void curand_init(curandDirectionVectors32_t direction_vectors , unsigned int offset , curandStateSobol32_t* state)
 __device__ void curand_init(unsigned long long seed , unsigned long long subsequence , unsigned long long offset , curandStateMRG32k3a_t* state)
 __device__ void curand_init(unsigned long long seed , unsigned long long subsequence , unsigned long long offset , curandStatePhilox4_32_10_t* state)
 __device__ void curand_init(unsigned long long seed , unsigned long long subsequence , unsigned long long offset , curandStateXORWOW_t* state)
 __device__ float curand_log_normal(curandStateScrambledSobol64_t* state , float mean , float stddev)
 __device__ float curand_log_normal(curandStateSobol64_t* state , float mean , float stddev)
 __device__ float curand_log_normal(curandStateScrambledSobol32_t* state , float mean , float stddev)
 __device__ float curand_log_normal(curandStateSobol32_t* state , float mean , float stddev)
 __device__ float curand_log_normal(curandStateMtgp32_t* state , float mean , float stddev)
 __device__ float curand_log_normal(curandStateMRG32k3a_t* state , float mean , float stddev)
 __device__ float curand_log_normal(curandStatePhilox4_32_10_t* state , float mean , float stddev)
 __device__ float curand_log_normal(curandStateXORWOW_t* state , float mean , float stddev)
 __device__ float2 curand_log_normal2(curandStateMRG32k3a_t* state , float mean , float stddev)
 __device__ float2 curand_log_normal2(curandStatePhilox4_32_10_t* state , float mean , float stddev)
 __device__ float2 curand_log_normal2(curandStateXORWOW_t* state , float mean , float stddev)
 __device__ double2 curand_log_normal2_double(curandStateMRG32k3a_t* state , double mean , double stddev)
 __device__ double2 curand_log_normal2_double(curandStatePhilox4_32_10_t* state , double mean , double stddev)
 __device__ double2 curand_log_normal2_double(curandStateXORWOW_t* state , double mean , double stddev)
 __device__ float4 curand_log_normal4(curandStatePhilox4_32_10_t* state , float mean , float stddev)
 __device__ double curand_log_normal_double(curandStateScrambledSobol64_t* state , double mean , double stddev)
 __device__ double curand_log_normal_double(curandStateSobol64_t* state , double mean , double stddev)
 __device__ double curand_log_normal_double(curandStateScrambledSobol32_t* state , double mean , double stddev)
 __device__ double curand_log_normal_double(curandStateSobol32_t* state , double mean , double stddev)
 __device__ double curand_log_normal_double(curandStateMtgp32_t* state , double mean , double stddev)
 __device__ double curand_log_normal_double(curandStateMRG32k3a_t* state , double mean , double stddev)
 __device__ double curand_log_normal_double(curandStatePhilox4_32_10_t* state , double mean , double stddev)
 __device__ double curand_log_normal_double(curandStateXORWOW_t* state , double mean , double stddev)
 __device__ float curand_mtgp32_single(curandStateMtgp32_t* state)
 __device__ float curand_mtgp32_single_specific(curandStateMtgp32_t* state , unsigned char index , unsigned char n)
 __device__ unsigned int curand_mtgp32_specific(curandStateMtgp32_t* state , unsigned char index , unsigned char n)
 __device__ float curand_normal(curandStateScrambledSobol64_t* state)
 __device__ float curand_normal(curandStateSobol64_t* state)
 __device__ float curand_normal(curandStateScrambledSobol32_t* state)
 __device__ float curand_normal(curandStateSobol32_t* state)
 __device__ float curand_normal(curandStateMtgp32_t* state)
 __device__ float curand_normal(curandStateMRG32k3a_t* state)
 __device__ float curand_normal(curandStatePhilox4_32_10_t* state)
 __device__ float curand_normal(curandStateXORWOW_t* state)
 __device__ float2 curand_normal2(curandStateMRG32k3a_t* state)
 __device__ float2 curand_normal2(curandStatePhilox4_32_10_t* state)
 __device__ float2 curand_normal2(curandStateXORWOW_t* state)
 __device__ double2 curand_normal2_double(curandStateMRG32k3a_t* state)
 __device__ double2 curand_normal2_double(curandStatePhilox4_32_10_t* state)
 __device__ double2 curand_normal2_double(curandStateXORWOW_t* state)
 __device__ float4 curand_normal4(curandStatePhilox4_32_10_t* state)
 __device__ double curand_normal_double(curandStateScrambledSobol64_t* state)
 __device__ double curand_normal_double(curandStateSobol64_t* state)
 __device__ double curand_normal_double(curandStateScrambledSobol32_t* state)
 __device__ double curand_normal_double(curandStateSobol32_t* state)
 __device__ double curand_normal_double(curandStateMtgp32_t* state)
 __device__ double curand_normal_double(curandStateMRG32k3a_t* state)
 __device__ double curand_normal_double(curandStatePhilox4_32_10_t* state)
 __device__ double curand_normal_double(curandStateXORWOW_t* state)
 __device__ unsigned int curand_poisson(curandStateScrambledSobol64_t* state , double lambda)
 __device__ unsigned int curand_poisson(curandStateSobol64_t* state , double lambda)
 __device__ unsigned int curand_poisson(curandStateScrambledSobol32_t* state , double lambda)
 __device__ unsigned int curand_poisson(curandStateSobol32_t* state , double lambda)
 __device__ unsigned int curand_poisson(curandStateMtgp32_t* state , double lambda)
 __device__ unsigned int curand_poisson(curandStateMRG32k3a_t* state , double lambda)
 __device__ unsigned int curand_poisson(curandStatePhilox4_32_10_t* state , double lambda)
 __device__ unsigned int curand_poisson(curandStateXORWOW_t* state , double lambda)
 __device__ uint4 curand_poisson4(curandStatePhilox4_32_10_t* state , double lambda)
 __device__ float curand_uniform(curandStateScrambledSobol64_t* state)
 __device__ float curand_uniform(curandStateSobol64_t* state)
 __device__ float curand_uniform(curandStateScrambledSobol32_t* state)
 __device__ float curand_uniform(curandStateSobol32_t* state)
 __device__ float curand_uniform(curandStateMtgp32_t* state)
 __device__ float curand_uniform(curandStatePhilox4_32_10_t* state)
 __device__ float curand_uniform(curandStateMRG32k3a_t* state)
 __device__ float curand_uniform(curandStateXORWOW_t* state)
 __device__ double2 curand_uniform2_double(curandStatePhilox4_32_10_t* state)
 __device__ float4 curand_uniform4(curandStatePhilox4_32_10_t* state)
 __device__ double curand_uniform_double(curandStateScrambledSobol64_t* state)
 __device__ double curand_uniform_double(curandStateSobol64_t* state)
 __device__ double curand_uniform_double(curandStateScrambledSobol32_t* state)
 __device__ double curand_uniform_double(curandStateSobol32_t* state)
 __device__ double curand_uniform_double(curandStatePhilox4_32_10_t* state)
 __device__ double curand_uniform_double(curandStateMtgp32_t* state)
 __device__ double curand_uniform_double(curandStateMRG32k3a_t* state)
 __device__ double curand_uniform_double(curandStateXORWOW_t* state)

98% (121 of 124 declarations available)

3.1. Pseudorandom Sequences#

-__device__ uint4 curand_discrete4(curandStatePhilox4_32_10_t *state, curandDiscreteDistribution_t discrete_distribution)

3.4. Device API for discrete distributions#

-__device__ unsigned int curand_discrete(curandState_t *state, curandDiscreteDistribution_t discrete_distribution)

5.1. Host API#

 enum curandDirectionVectorSet
     CURAND_DIRECTION_VECTORS_32_JOEKUO6 = 101
     CURAND_SCRAMBLED_DIRECTION_VECTORS_32_JOEKUO6 = 102
     CURAND_DIRECTION_VECTORS_64_JOEKUO6 = 103
     CURAND_SCRAMBLED_DIRECTION_VECTORS_64_JOEKUO6 = 104
 enum curandOrdering
     CURAND_ORDERING_PSEUDO_BEST = 100
     CURAND_ORDERING_PSEUDO_DEFAULT = 101
     CURAND_ORDERING_PSEUDO_SEEDED = 102
     CURAND_ORDERING_PSEUDO_LEGACY = 103
     CURAND_ORDERING_PSEUDO_DYNAMIC = 104
     CURAND_ORDERING_QUASI_DEFAULT = 201
 enum curandRngType
     CURAND_RNG_TEST = 0
     CURAND_RNG_PSEUDO_DEFAULT = 100
     CURAND_RNG_PSEUDO_XORWOW = 101
     CURAND_RNG_PSEUDO_MRG32K3A = 121
     CURAND_RNG_PSEUDO_MTGP32 = 141
     CURAND_RNG_PSEUDO_MT19937 = 142
     CURAND_RNG_PSEUDO_PHILOX4_32_10 = 161
     CURAND_RNG_QUASI_DEFAULT = 200
     CURAND_RNG_QUASI_SOBOL32 = 201
     CURAND_RNG_QUASI_SCRAMBLED_SOBOL32 = 202
     CURAND_RNG_QUASI_SOBOL64 = 203
     CURAND_RNG_QUASI_SCRAMBLED_SOBOL64 = 204
-enum curandStatus
 curandStatus_t curandCreateGenerator(curandGenerator_t* generator , curandRngType_t rng_type)
 curandStatus_t curandCreateGeneratorHost(curandGenerator_t* generator , curandRngType_t rng_type)
 curandStatus_t curandCreatePoissonDistribution(double lambda , curandDiscreteDistribution_t* discrete_distribution)
 curandStatus_t curandDestroyDistribution(curandDiscreteDistribution_t discrete_distribution)
 curandStatus_t curandDestroyGenerator(curandGenerator_t generator)
 curandStatus_t curandGenerate(curandGenerator_t generator , unsigned int* outputPtr , size_t num)
 curandStatus_t curandGenerateLogNormal(curandGenerator_t generator , float* outputPtr , size_t n , float mean , float stddev)
 curandStatus_t curandGenerateLogNormalDouble(curandGenerator_t generator , double* outputPtr , size_t n , double mean , double stddev)
 curandStatus_t curandGenerateLongLong(curandGenerator_t generator , unsigned long long* outputPtr , size_t num)
 curandStatus_t curandGenerateNormal(curandGenerator_t generator , float* outputPtr , size_t n , float mean , float stddev)
 curandStatus_t curandGenerateNormalDouble(curandGenerator_t generator , double* outputPtr , size_t n , double mean , double stddev)
 curandStatus_t curandGeneratePoisson(curandGenerator_t generator , unsigned int* outputPtr , size_t n , double lambda)
 curandStatus_t curandGenerateSeeds(curandGenerator_t generator)
 curandStatus_t curandGenerateUniform(curandGenerator_t generator , float* outputPtr , size_t num)
 curandStatus_t curandGenerateUniformDouble(curandGenerator_t generator , double* outputPtr , size_t num)
 curandStatus_t curandGetDirectionVectors32(curandDirectionVectors32_t* vectors[], curandDirectionVectorSet_t set)
 curandStatus_t curandGetDirectionVectors64(curandDirectionVectors64_t* vectors[], curandDirectionVectorSet_t set)
 curandStatus_t curandGetProperty(libraryPropertyType type , int* value)
 curandStatus_t curandGetScrambleConstants32(unsigned int** constants)
 curandStatus_t curandGetScrambleConstants64(unsigned long long** constants)
 curandStatus_t curandGetVersion(int* version)
 curandStatus_t curandSetGeneratorOffset(curandGenerator_t generator , unsigned long long offset)
 curandStatus_t curandSetGeneratorOrdering(curandGenerator_t generator , curandOrdering_t order)
 curandStatus_t curandSetPseudoRandomGeneratorSeed(curandGenerator_t generator , unsigned long long seed)
 curandStatus_t curandSetQuasiRandomGeneratorDimensions(curandGenerator_t generator , unsigned int num_dimensions)
 curandStatus_t curandSetStream(curandGenerator_t generator , cudaStream_t stream)

5.2. Device API#

 __device__ unsigned int curand(curandStateMtgp32_t* state)
 __device__ unsigned long long curand(curandStateScrambledSobol64_t* state)
 __device__ unsigned long long curand(curandStateSobol64_t* state)
 __device__ unsigned int curand(curandStateScrambledSobol32_t* state)
 __device__ unsigned int curand(curandStateSobol32_t* state)
 __device__ unsigned int curand(curandStateMRG32k3a_t* state)
 __device__ unsigned int curand(curandStatePhilox4_32_10_t* state)
 __device__ unsigned int curand(curandStateXORWOW_t* state)
 __device__ uint4 curand4(curandStatePhilox4_32_10_t* state)
 __device__ void curand_init(curandDirectionVectors64_t direction_vectors , unsigned long long scramble_c , unsigned long long offset , curandStateScrambledSobol64_t* state)
 __device__ void curand_init(curandDirectionVectors64_t direction_vectors , unsigned long long offset , curandStateSobol64_t* state)
 __device__ void curand_init(curandDirectionVectors32_t direction_vectors , unsigned int scramble_c , unsigned int offset , curandStateScrambledSobol32_t* state)
 __device__ void curand_init(curandDirectionVectors32_t direction_vectors , unsigned int offset , curandStateSobol32_t* state)
 __device__ void curand_init(unsigned long long seed , unsigned long long subsequence , unsigned long long offset , curandStateMRG32k3a_t* state)
 __device__ void curand_init(unsigned long long seed , unsigned long long subsequence , unsigned long long offset , curandStatePhilox4_32_10_t* state)
 __device__ void curand_init(unsigned long long seed , unsigned long long subsequence , unsigned long long offset , curandStateXORWOW_t* state)
 __device__ float curand_log_normal(curandStateScrambledSobol64_t* state , float mean , float stddev)
 __device__ float curand_log_normal(curandStateSobol64_t* state , float mean , float stddev)
 __device__ float curand_log_normal(curandStateScrambledSobol32_t* state , float mean , float stddev)
 __device__ float curand_log_normal(curandStateSobol32_t* state , float mean , float stddev)
 __device__ float curand_log_normal(curandStateMtgp32_t* state , float mean , float stddev)
 __device__ float curand_log_normal(curandStateMRG32k3a_t* state , float mean , float stddev)
 __device__ float curand_log_normal(curandStatePhilox4_32_10_t* state , float mean , float stddev)
 __device__ float curand_log_normal(curandStateXORWOW_t* state , float mean , float stddev)
 __device__ float2 curand_log_normal2(curandStateMRG32k3a_t* state , float mean , float stddev)
 __device__ float2 curand_log_normal2(curandStatePhilox4_32_10_t* state , float mean , float stddev)
 __device__ float2 curand_log_normal2(curandStateXORWOW_t* state , float mean , float stddev)
 __device__ double2 curand_log_normal2_double(curandStateMRG32k3a_t* state , double mean , double stddev)
 __device__ double2 curand_log_normal2_double(curandStatePhilox4_32_10_t* state , double mean , double stddev)
 __device__ double2 curand_log_normal2_double(curandStateXORWOW_t* state , double mean , double stddev)
 __device__ float4 curand_log_normal4(curandStatePhilox4_32_10_t* state , float mean , float stddev)
 __device__ double curand_log_normal_double(curandStateScrambledSobol64_t* state , double mean , double stddev)
 __device__ double curand_log_normal_double(curandStateSobol64_t* state , double mean , double stddev)
 __device__ double curand_log_normal_double(curandStateScrambledSobol32_t* state , double mean , double stddev)
 __device__ double curand_log_normal_double(curandStateSobol32_t* state , double mean , double stddev)
 __device__ double curand_log_normal_double(curandStateMtgp32_t* state , double mean , double stddev)
 __device__ double curand_log_normal_double(curandStateMRG32k3a_t* state , double mean , double stddev)
 __device__ double curand_log_normal_double(curandStatePhilox4_32_10_t* state , double mean , double stddev)
 __device__ double curand_log_normal_double(curandStateXORWOW_t* state , double mean , double stddev)
 __device__ float curand_mtgp32_single(curandStateMtgp32_t* state)
 __device__ float curand_mtgp32_single_specific(curandStateMtgp32_t* state , unsigned char index , unsigned char n)
 __device__ unsigned int curand_mtgp32_specific(curandStateMtgp32_t* state , unsigned char index , unsigned char n)
 __device__ float curand_normal(curandStateScrambledSobol64_t* state)
 __device__ float curand_normal(curandStateSobol64_t* state)
 __device__ float curand_normal(curandStateScrambledSobol32_t* state)
 __device__ float curand_normal(curandStateSobol32_t* state)
 __device__ float curand_normal(curandStateMtgp32_t* state)
 __device__ float curand_normal(curandStateMRG32k3a_t* state)
 __device__ float curand_normal(curandStatePhilox4_32_10_t* state)
 __device__ float curand_normal(curandStateXORWOW_t* state)
 __device__ float2 curand_normal2(curandStateMRG32k3a_t* state)
 __device__ float2 curand_normal2(curandStatePhilox4_32_10_t* state)
 __device__ float2 curand_normal2(curandStateXORWOW_t* state)
 __device__ double2 curand_normal2_double(curandStateMRG32k3a_t* state)
 __device__ double2 curand_normal2_double(curandStatePhilox4_32_10_t* state)
 __device__ double2 curand_normal2_double(curandStateXORWOW_t* state)
 __device__ float4 curand_normal4(curandStatePhilox4_32_10_t* state)
 __device__ double curand_normal_double(curandStateScrambledSobol64_t* state)
 __device__ double curand_normal_double(curandStateSobol64_t* state)
 __device__ double curand_normal_double(curandStateScrambledSobol32_t* state)
 __device__ double curand_normal_double(curandStateSobol32_t* state)
 __device__ double curand_normal_double(curandStateMtgp32_t* state)
 __device__ double curand_normal_double(curandStateMRG32k3a_t* state)
 __device__ double curand_normal_double(curandStatePhilox4_32_10_t* state)
 __device__ double curand_normal_double(curandStateXORWOW_t* state)
 __device__ unsigned int curand_poisson(curandStateScrambledSobol64_t* state , double lambda)
 __device__ unsigned int curand_poisson(curandStateSobol64_t* state , double lambda)
 __device__ unsigned int curand_poisson(curandStateScrambledSobol32_t* state , double lambda)
 __device__ unsigned int curand_poisson(curandStateSobol32_t* state , double lambda)
 __device__ unsigned int curand_poisson(curandStateMtgp32_t* state , double lambda)
 __device__ unsigned int curand_poisson(curandStateMRG32k3a_t* state , double lambda)
 __device__ unsigned int curand_poisson(curandStatePhilox4_32_10_t* state , double lambda)
 __device__ unsigned int curand_poisson(curandStateXORWOW_t* state , double lambda)
 __device__ uint4 curand_poisson4(curandStatePhilox4_32_10_t* state , double lambda)
 __device__ float curand_uniform(curandStateScrambledSobol64_t* state)
 __device__ float curand_uniform(curandStateSobol64_t* state)
 __device__ float curand_uniform(curandStateScrambledSobol32_t* state)
 __device__ float curand_uniform(curandStateSobol32_t* state)
 __device__ float curand_uniform(curandStateMtgp32_t* state)
 __device__ float curand_uniform(curandStatePhilox4_32_10_t* state)
 __device__ float curand_uniform(curandStateMRG32k3a_t* state)
 __device__ float curand_uniform(curandStateXORWOW_t* state)
 __device__ double2 curand_uniform2_double(curandStatePhilox4_32_10_t* state)
 __device__ float4 curand_uniform4(curandStatePhilox4_32_10_t* state)
 __device__ double curand_uniform_double(curandStateScrambledSobol64_t* state)
 __device__ double curand_uniform_double(curandStateSobol64_t* state)
 __device__ double curand_uniform_double(curandStateScrambledSobol32_t* state)
 __device__ double curand_uniform_double(curandStateSobol32_t* state)
 __device__ double curand_uniform_double(curandStatePhilox4_32_10_t* state)
 __device__ double curand_uniform_double(curandStateMtgp32_t* state)
 __device__ double curand_uniform_double(curandStateMRG32k3a_t* state)
 __device__ double curand_uniform_double(curandStateXORWOW_t* state)