rocRAND device functions#
Macros | |
#define | ROCRAND_LFSR113_DEFAULT_SEED_X 2 |
Default X seed for LFSR113 PRNG. | |
#define | ROCRAND_LFSR113_DEFAULT_SEED_Y 8 |
Default Y seed for LFSR113 PRNG. | |
#define | ROCRAND_LFSR113_DEFAULT_SEED_Z 16 |
Default Z seed for LFSR113 PRNG. | |
#define | ROCRAND_LFSR113_DEFAULT_SEED_W 128 |
Default W seed for LFSR113 PRNG. | |
#define | ROCRAND_MRG31K3P_DEFAULT_SEED 12345ULL |
Default seed for MRG31K3P PRNG. | |
#define | ROCRAND_MRG32K3A_DEFAULT_SEED 12345ULL |
Default seed for MRG32K3A PRNG. | |
#define | ROCRAND_PHILOX4x32_DEFAULT_SEED 0xdeadbeefdeadbeefULL |
Default seed for PHILOX4x32 PRNG. | |
#define | ROCRAND_XORWOW_DEFAULT_SEED 0ULL |
Default seed for XORWOW PRNG. | |
Functions | |
__forceinline__ __device__ __host__ unsigned int | rocrand_discrete (rocrand_state_philox4x32_10 *state, const rocrand_discrete_distribution discrete_distribution) |
Returns a discrete distributed unsigned int value. More... | |
__forceinline__ __device__ __host__ uint4 | rocrand_discrete4 (rocrand_state_philox4x32_10 *state, const rocrand_discrete_distribution discrete_distribution) |
Returns four discrete distributed unsigned int values. More... | |
__forceinline__ __device__ __host__ unsigned int | rocrand_discrete (rocrand_state_mrg31k3p *state, const rocrand_discrete_distribution discrete_distribution) |
Returns a discrete distributed unsigned int value. More... | |
__forceinline__ __device__ __host__ unsigned int | rocrand_discrete (rocrand_state_mrg32k3a *state, const rocrand_discrete_distribution discrete_distribution) |
Returns a discrete distributed unsigned int value. More... | |
__forceinline__ __device__ __host__ unsigned int | rocrand_discrete (rocrand_state_xorwow *state, const rocrand_discrete_distribution discrete_distribution) |
Returns a discrete distributed unsigned int value. More... | |
__forceinline__ __device__ unsigned int | rocrand_discrete (rocrand_state_mtgp32 *state, const rocrand_discrete_distribution discrete_distribution) |
Returns a discrete distributed unsigned int value. More... | |
__forceinline__ __device__ __host__ unsigned int | rocrand_discrete (rocrand_state_sobol32 *state, const rocrand_discrete_distribution discrete_distribution) |
Returns a discrete distributed unsigned int value. More... | |
__forceinline__ __device__ __host__ unsigned int | rocrand_discrete (rocrand_state_scrambled_sobol32 *state, const rocrand_discrete_distribution discrete_distribution) |
Returns a discrete distributed unsigned int value. More... | |
__forceinline__ __device__ __host__ unsigned int | rocrand_discrete (rocrand_state_sobol64 *state, const rocrand_discrete_distribution discrete_distribution) |
Returns a discrete distributed unsigned long long int value. More... | |
__forceinline__ __device__ __host__ unsigned int | rocrand_discrete (rocrand_state_scrambled_sobol64 *state, const rocrand_discrete_distribution discrete_distribution) |
Returns a discrete distributed unsigned long long int value. More... | |
__forceinline__ __device__ __host__ unsigned int | rocrand_discrete (rocrand_state_lfsr113 *state, const rocrand_discrete_distribution discrete_distribution) |
Returns a discrete distributed unsigned int value. More... | |
__forceinline__ __device__ __host__ unsigned int | rocrand_discrete (rocrand_state_threefry2x32_20 *state, const rocrand_discrete_distribution discrete_distribution) |
Returns a discrete distributed unsigned int value. More... | |
__forceinline__ __device__ __host__ unsigned int | rocrand_discrete (rocrand_state_threefry2x64_20 *state, const rocrand_discrete_distribution discrete_distribution) |
Returns a discrete distributed unsigned int value. More... | |
__forceinline__ __device__ __host__ unsigned int | rocrand_discrete (rocrand_state_threefry4x32_20 *state, const rocrand_discrete_distribution discrete_distribution) |
Returns a discrete distributed unsigned int value. More... | |
__forceinline__ __device__ __host__ unsigned int | rocrand_discrete (rocrand_state_threefry4x64_20 *state, const rocrand_discrete_distribution discrete_distribution) |
Returns a discrete distributed unsigned int value. More... | |
__forceinline__ __device__ __host__ void | rocrand_init (const uint4 seed, const unsigned int subsequence, rocrand_state_lfsr113 *state) |
Initializes LFSR113 state. More... | |
__forceinline__ __device__ __host__ void | rocrand_init (const uint4 seed, const unsigned int subsequence, const unsigned long long offset, rocrand_state_lfsr113 *state) |
Initializes LFSR113 state. More... | |
__forceinline__ __device__ __host__ unsigned int | rocrand (rocrand_state_lfsr113 *state) |
Returns uniformly distributed random unsigned int value from [0; 2^32 - 1] range. More... | |
__forceinline__ __device__ __host__ void | skipahead (unsigned long long offset, rocrand_state_lfsr113 *state) |
Updates LFSR113 state to skip ahead by offset elements. More... | |
__forceinline__ __device__ __host__ void | skipahead_subsequence (unsigned int subsequence, rocrand_state_lfsr113 *state) |
Updates LFSR113 state to skip ahead by subsequence subsequences. More... | |
__forceinline__ __device__ __host__ void | skipahead_sequence (unsigned int sequence, rocrand_state_lfsr113 *state) |
Updates LFSR113 state to skip ahead by sequence sequences. More... | |
__forceinline__ __device__ __host__ float | rocrand_log_normal (rocrand_state_philox4x32_10 *state, float mean, float stddev) |
Returns a log-normally distributed float value. More... | |
__forceinline__ __device__ __host__ float2 | rocrand_log_normal2 (rocrand_state_philox4x32_10 *state, float mean, float stddev) |
Returns two log-normally distributed float values. More... | |
__forceinline__ __device__ __host__ float4 | rocrand_log_normal4 (rocrand_state_philox4x32_10 *state, float mean, float stddev) |
Returns four log-normally distributed float values. More... | |
__forceinline__ __device__ __host__ double | rocrand_log_normal_double (rocrand_state_philox4x32_10 *state, double mean, double stddev) |
Returns a log-normally distributed double values. More... | |
__forceinline__ __device__ __host__ double2 | rocrand_log_normal_double2 (rocrand_state_philox4x32_10 *state, double mean, double stddev) |
Returns two log-normally distributed double values. More... | |
__forceinline__ __device__ __host__ double4 | rocrand_log_normal_double4 (rocrand_state_philox4x32_10 *state, double mean, double stddev) |
Returns four log-normally distributed double values. More... | |
__forceinline__ __device__ __host__ float | rocrand_log_normal (rocrand_state_mrg31k3p *state, float mean, float stddev) |
Returns a log-normally distributed float value. More... | |
__forceinline__ __device__ __host__ float2 | rocrand_log_normal2 (rocrand_state_mrg31k3p *state, float mean, float stddev) |
Returns two log-normally distributed float values. More... | |
__forceinline__ __device__ __host__ double | rocrand_log_normal_double (rocrand_state_mrg31k3p *state, double mean, double stddev) |
Returns a log-normally distributed double value. More... | |
__forceinline__ __device__ __host__ double2 | rocrand_log_normal_double2 (rocrand_state_mrg31k3p *state, double mean, double stddev) |
Returns two log-normally distributed double values. More... | |
__forceinline__ __device__ __host__ float | rocrand_log_normal (rocrand_state_mrg32k3a *state, float mean, float stddev) |
Returns a log-normally distributed float value. More... | |
__forceinline__ __device__ __host__ float2 | rocrand_log_normal2 (rocrand_state_mrg32k3a *state, float mean, float stddev) |
Returns two log-normally distributed float values. More... | |
__forceinline__ __device__ __host__ double | rocrand_log_normal_double (rocrand_state_mrg32k3a *state, double mean, double stddev) |
Returns a log-normally distributed double value. More... | |
__forceinline__ __device__ __host__ double2 | rocrand_log_normal_double2 (rocrand_state_mrg32k3a *state, double mean, double stddev) |
Returns two log-normally distributed double values. More... | |
__forceinline__ __device__ __host__ float | rocrand_log_normal (rocrand_state_xorwow *state, float mean, float stddev) |
Returns a log-normally distributed float value. More... | |
__forceinline__ __device__ __host__ float2 | rocrand_log_normal2 (rocrand_state_xorwow *state, float mean, float stddev) |
Returns two log-normally distributed float values. More... | |
__forceinline__ __device__ __host__ double | rocrand_log_normal_double (rocrand_state_xorwow *state, double mean, double stddev) |
Returns a log-normally distributed double value. More... | |
__forceinline__ __device__ __host__ double2 | rocrand_log_normal_double2 (rocrand_state_xorwow *state, double mean, double stddev) |
Returns two log-normally distributed double values. More... | |
__forceinline__ __device__ float | rocrand_log_normal (rocrand_state_mtgp32 *state, float mean, float stddev) |
Returns a log-normally distributed float value. More... | |
__forceinline__ __device__ float2 | rocrand_log_normal2 (rocrand_state_mtgp32 *state, float mean, float stddev) |
Returns two log-normally distributed float values. More... | |
__forceinline__ __device__ double | rocrand_log_normal_double (rocrand_state_mtgp32 *state, double mean, double stddev) |
Returns a log-normally distributed double value. More... | |
__forceinline__ __device__ double2 | rocrand_log_normal_double2 (rocrand_state_mtgp32 *state, double mean, double stddev) |
Returns two log-normally distributed double values. More... | |
__forceinline__ __device__ __host__ float | rocrand_log_normal (rocrand_state_sobol32 *state, float mean, float stddev) |
Returns a log-normally distributed float value. More... | |
__forceinline__ __device__ __host__ double | rocrand_log_normal_double (rocrand_state_sobol32 *state, double mean, double stddev) |
Returns a log-normally distributed double value. More... | |
__forceinline__ __device__ __host__ float | rocrand_log_normal (rocrand_state_scrambled_sobol32 *state, float mean, float stddev) |
Returns a log-normally distributed float value. More... | |
__forceinline__ __device__ __host__ double | rocrand_log_normal_double (rocrand_state_scrambled_sobol32 *state, double mean, double stddev) |
Returns a log-normally distributed double value. More... | |
__forceinline__ __device__ __host__ float | rocrand_log_normal (rocrand_state_sobol64 *state, float mean, float stddev) |
Returns a log-normally distributed float value. More... | |
__forceinline__ __device__ __host__ double | rocrand_log_normal_double (rocrand_state_sobol64 *state, double mean, double stddev) |
Returns a log-normally distributed double value. More... | |
__forceinline__ __device__ __host__ float | rocrand_log_normal (rocrand_state_scrambled_sobol64 *state, float mean, float stddev) |
Returns a log-normally distributed float value. More... | |
__forceinline__ __device__ __host__ double | rocrand_log_normal_double (rocrand_state_scrambled_sobol64 *state, double mean, double stddev) |
Returns a log-normally distributed double value. More... | |
__forceinline__ __device__ __host__ float | rocrand_log_normal (rocrand_state_lfsr113 *state, float mean, float stddev) |
Returns a log-normally distributed float value. More... | |
__forceinline__ __device__ __host__ float2 | rocrand_log_normal2 (rocrand_state_lfsr113 *state, float mean, float stddev) |
Returns two log-normally distributed float values. More... | |
__forceinline__ __device__ __host__ double | rocrand_log_normal_double (rocrand_state_lfsr113 *state, double mean, double stddev) |
Returns a log-normally distributed double value. More... | |
__forceinline__ __device__ __host__ double2 | rocrand_log_normal_double2 (rocrand_state_lfsr113 *state, double mean, double stddev) |
Returns two log-normally distributed double values. More... | |
__forceinline__ __device__ __host__ float | rocrand_log_normal (rocrand_state_threefry2x32_20 *state, double mean, double stddev) |
Returns a log-normally distributed float value. More... | |
__forceinline__ __device__ __host__ float2 | rocrand_log_normal2 (rocrand_state_threefry2x32_20 *state, float mean, float stddev) |
Returns two log-normally distributed float values. More... | |
__forceinline__ __device__ __host__ double | rocrand_log_normal_double (rocrand_state_threefry2x32_20 *state, double mean, double stddev) |
Returns a log-normally distributed double value. More... | |
__forceinline__ __device__ __host__ double2 | rocrand_log_normal_double2 (rocrand_state_threefry2x32_20 *state, double mean, double stddev) |
Returns two log-normally distributed double values. More... | |
__forceinline__ __device__ __host__ float | rocrand_log_normal (rocrand_state_threefry2x64_20 *state, double mean, double stddev) |
Returns a log-normally distributed float value. More... | |
__forceinline__ __device__ __host__ float2 | rocrand_log_normal2 (rocrand_state_threefry2x64_20 *state, float mean, float stddev) |
Returns two log-normally distributed float values. More... | |
__forceinline__ __device__ __host__ double | rocrand_log_normal_double (rocrand_state_threefry2x64_20 *state, double mean, double stddev) |
Returns a log-normally distributed double value. More... | |
__forceinline__ __device__ __host__ double2 | rocrand_log_normal_double2 (rocrand_state_threefry2x64_20 *state, double mean, double stddev) |
Returns two log-normally distributed double values. More... | |
__forceinline__ __device__ __host__ float | rocrand_log_normal (rocrand_state_threefry4x32_20 *state, double mean, double stddev) |
Returns a log-normally distributed float value. More... | |
__forceinline__ __device__ __host__ float2 | rocrand_log_normal2 (rocrand_state_threefry4x32_20 *state, float mean, float stddev) |
Returns two log-normally distributed float values. More... | |
__forceinline__ __device__ __host__ double | rocrand_log_normal_double (rocrand_state_threefry4x32_20 *state, double mean, double stddev) |
Returns a log-normally distributed double value. More... | |
__forceinline__ __device__ __host__ double2 | rocrand_log_normal_double2 (rocrand_state_threefry4x32_20 *state, double mean, double stddev) |
Returns two log-normally distributed double values. More... | |
__forceinline__ __device__ __host__ float | rocrand_log_normal (rocrand_state_threefry4x64_20 *state, double mean, double stddev) |
Returns a log-normally distributed float value. More... | |
__forceinline__ __device__ __host__ float2 | rocrand_log_normal2 (rocrand_state_threefry4x64_20 *state, float mean, float stddev) |
Returns two log-normally distributed float values. More... | |
__forceinline__ __device__ __host__ double | rocrand_log_normal_double (rocrand_state_threefry4x64_20 *state, double mean, double stddev) |
Returns a log-normally distributed double value. More... | |
__forceinline__ __device__ __host__ double2 | rocrand_log_normal_double2 (rocrand_state_threefry4x64_20 *state, double mean, double stddev) |
Returns two log-normally distributed double values. More... | |
__forceinline__ __device__ __host__ void | rocrand_init (const unsigned long long seed, const unsigned long long subsequence, const unsigned long long offset, rocrand_state_mrg31k3p *state) |
Initializes MRG31K3P state. More... | |
__forceinline__ __device__ __host__ unsigned int | rocrand (rocrand_state_mrg31k3p *state) |
Returns uniformly distributed random unsigned int value from [0; 2^32 - 1] range. More... | |
__forceinline__ __device__ __host__ void | skipahead (unsigned long long offset, rocrand_state_mrg31k3p *state) |
Updates MRG31K3P state to skip ahead by offset elements. More... | |
__forceinline__ __device__ __host__ void | skipahead_subsequence (unsigned long long subsequence, rocrand_state_mrg31k3p *state) |
Updates MRG31K3P state to skip ahead by subsequence subsequences. More... | |
__forceinline__ __device__ __host__ void | skipahead_sequence (unsigned long long sequence, rocrand_state_mrg31k3p *state) |
Updates MRG31K3P state to skip ahead by sequence sequences. More... | |
__forceinline__ __device__ __host__ void | rocrand_init (const unsigned long long seed, const unsigned long long subsequence, const unsigned long long offset, rocrand_state_mrg32k3a *state) |
Initializes MRG32K3A state. More... | |
__forceinline__ __device__ __host__ unsigned int | rocrand (rocrand_state_mrg32k3a *state) |
Returns uniformly distributed random unsigned int value from [0; 2^32 - 1] range. More... | |
__forceinline__ __device__ __host__ void | skipahead (unsigned long long offset, rocrand_state_mrg32k3a *state) |
Updates MRG32K3A state to skip ahead by offset elements. More... | |
__forceinline__ __device__ __host__ void | skipahead_subsequence (unsigned long long subsequence, rocrand_state_mrg32k3a *state) |
Updates MRG32K3A state to skip ahead by subsequence subsequences. More... | |
__forceinline__ __device__ __host__ void | skipahead_sequence (unsigned long long sequence, rocrand_state_mrg32k3a *state) |
Updates MRG32K3A state to skip ahead by sequence sequences. More... | |
__host__ rocrand_status | rocrand_make_state_mtgp32 (rocrand_state_mtgp32 *state, mtgp32_fast_params params[], int n, unsigned long long seed) |
Initializes MTGP32 states. More... | |
__host__ rocrand_status | rocrand_make_constant (const mtgp32_fast_params params[], mtgp32_params *p) |
Loads parameters for MTGP32. More... | |
__forceinline__ __device__ unsigned int | rocrand (rocrand_state_mtgp32 *state) |
Returns uniformly distributed random unsigned int value from [0; 2^32 - 1] range. More... | |
__forceinline__ __device__ void | rocrand_mtgp32_block_copy (rocrand_state_mtgp32 *src, rocrand_state_mtgp32 *dest) |
Copies MTGP32 state to another state using block of threads. More... | |
__forceinline__ __device__ void | rocrand_mtgp32_set_params (rocrand_state_mtgp32 *state, mtgp32_params *params) |
Changes parameters of a MTGP32 state. More... | |
__forceinline__ __device__ __host__ float | rocrand_normal (rocrand_state_philox4x32_10 *state) |
Returns a normally distributed float value. More... | |
__forceinline__ __device__ __host__ float2 | rocrand_normal2 (rocrand_state_philox4x32_10 *state) |
Returns two normally distributed float values. More... | |
__forceinline__ __device__ __host__ float4 | rocrand_normal4 (rocrand_state_philox4x32_10 *state) |
Returns four normally distributed float values. More... | |
__forceinline__ __device__ __host__ double | rocrand_normal_double (rocrand_state_philox4x32_10 *state) |
Returns a normally distributed double value. More... | |
__forceinline__ __device__ __host__ double2 | rocrand_normal_double2 (rocrand_state_philox4x32_10 *state) |
Returns two normally distributed double values. More... | |
__forceinline__ __device__ __host__ double4 | rocrand_normal_double4 (rocrand_state_philox4x32_10 *state) |
Returns four normally distributed double values. More... | |
__forceinline__ __device__ __host__ float | rocrand_normal (rocrand_state_mrg31k3p *state) |
Returns a normally distributed float value. More... | |
__forceinline__ __device__ __host__ float2 | rocrand_normal2 (rocrand_state_mrg31k3p *state) |
Returns two normally distributed float values. More... | |
__forceinline__ __device__ __host__ double | rocrand_normal_double (rocrand_state_mrg31k3p *state) |
Returns a normally distributed double value. More... | |
__forceinline__ __device__ __host__ double2 | rocrand_normal_double2 (rocrand_state_mrg31k3p *state) |
Returns two normally distributed double values. More... | |
__forceinline__ __device__ __host__ float | rocrand_normal (rocrand_state_mrg32k3a *state) |
Returns a normally distributed float value. More... | |
__forceinline__ __device__ __host__ float2 | rocrand_normal2 (rocrand_state_mrg32k3a *state) |
Returns two normally distributed float values. More... | |
__forceinline__ __device__ __host__ double | rocrand_normal_double (rocrand_state_mrg32k3a *state) |
Returns a normally distributed double value. More... | |
__forceinline__ __device__ __host__ double2 | rocrand_normal_double2 (rocrand_state_mrg32k3a *state) |
Returns two normally distributed double values. More... | |
__forceinline__ __device__ __host__ float | rocrand_normal (rocrand_state_xorwow *state) |
Returns a normally distributed float value. More... | |
__forceinline__ __device__ __host__ float2 | rocrand_normal2 (rocrand_state_xorwow *state) |
Returns two normally distributed float values. More... | |
__forceinline__ __device__ __host__ double | rocrand_normal_double (rocrand_state_xorwow *state) |
Returns a normally distributed double value. More... | |
__forceinline__ __device__ __host__ double2 | rocrand_normal_double2 (rocrand_state_xorwow *state) |
Returns two normally distributed double values. More... | |
__forceinline__ __device__ float | rocrand_normal (rocrand_state_mtgp32 *state) |
Returns a normally distributed float value. More... | |
__forceinline__ __device__ float2 | rocrand_normal2 (rocrand_state_mtgp32 *state) |
Returns two normally distributed float values. More... | |
__forceinline__ __device__ double | rocrand_normal_double (rocrand_state_mtgp32 *state) |
Returns a normally distributed double value. More... | |
__forceinline__ __device__ double2 | rocrand_normal_double2 (rocrand_state_mtgp32 *state) |
Returns two normally distributed double values. More... | |
__forceinline__ __device__ __host__ float | rocrand_normal (rocrand_state_sobol32 *state) |
Returns a normally distributed float value. More... | |
__forceinline__ __device__ __host__ double | rocrand_normal_double (rocrand_state_sobol32 *state) |
Returns a normally distributed double value. More... | |
__forceinline__ __device__ __host__ float | rocrand_normal (rocrand_state_scrambled_sobol32 *state) |
Returns a normally distributed float value. More... | |
__forceinline__ __device__ __host__ double | rocrand_normal_double (rocrand_state_scrambled_sobol32 *state) |
Returns a normally distributed double value. More... | |
__forceinline__ __device__ __host__ float | rocrand_normal (rocrand_state_sobol64 *state) |
Returns a normally distributed float value. More... | |
__forceinline__ __device__ __host__ double | rocrand_normal_double (rocrand_state_sobol64 *state) |
Returns a normally distributed double value. More... | |
__forceinline__ __device__ __host__ float | rocrand_normal (rocrand_state_scrambled_sobol64 *state) |
Returns a normally distributed float value. More... | |
__forceinline__ __device__ __host__ double | rocrand_normal_double (rocrand_state_scrambled_sobol64 *state) |
Returns a normally distributed double value. More... | |
__forceinline__ __device__ __host__ float | rocrand_normal (rocrand_state_lfsr113 *state) |
Returns a normally distributed float value. More... | |
__forceinline__ __device__ __host__ float2 | rocrand_normal2 (rocrand_state_lfsr113 *state) |
Returns two normally distributed float values. More... | |
__forceinline__ __device__ __host__ double | rocrand_normal_double (rocrand_state_lfsr113 *state) |
Returns a normally distributed double value. More... | |
__forceinline__ __device__ __host__ double2 | rocrand_normal_double2 (rocrand_state_lfsr113 *state) |
Returns two normally distributed double values. More... | |
__forceinline__ __device__ __host__ float | rocrand_normal (rocrand_state_threefry2x32_20 *state) |
Returns a normally distributed double value. More... | |
__forceinline__ __device__ __host__ float2 | rocrand_normal2 (rocrand_state_threefry2x32_20 *state) |
Returns two normally distributed float values. More... | |
__forceinline__ __device__ __host__ double | rocrand_normal_double (rocrand_state_threefry2x32_20 *state) |
Returns a normally distributed double value. More... | |
__forceinline__ __device__ __host__ double2 | rocrand_normal_double2 (rocrand_state_threefry2x32_20 *state) |
Returns two normally distributed double values. More... | |
__forceinline__ __device__ __host__ float | rocrand_normal (rocrand_state_threefry2x64_20 *state) |
Returns a normally distributed double value. More... | |
__forceinline__ __device__ __host__ float2 | rocrand_normal2 (rocrand_state_threefry2x64_20 *state) |
Returns two normally distributed float values. More... | |
__forceinline__ __device__ __host__ double | rocrand_normal_double (rocrand_state_threefry2x64_20 *state) |
Returns a normally distributed double value. More... | |
__forceinline__ __device__ __host__ double2 | rocrand_normal_double2 (rocrand_state_threefry2x64_20 *state) |
Returns two normally distributed double values. More... | |
__forceinline__ __device__ __host__ float | rocrand_normal (rocrand_state_threefry4x32_20 *state) |
Returns a normally distributed double value. More... | |
__forceinline__ __device__ __host__ float2 | rocrand_normal2 (rocrand_state_threefry4x32_20 *state) |
Returns two normally distributed float values. More... | |
__forceinline__ __device__ __host__ double | rocrand_normal_double (rocrand_state_threefry4x32_20 *state) |
Returns a normally distributed double value. More... | |
__forceinline__ __device__ __host__ double2 | rocrand_normal_double2 (rocrand_state_threefry4x32_20 *state) |
Returns two normally distributed double values. More... | |
__forceinline__ __device__ __host__ float | rocrand_normal (rocrand_state_threefry4x64_20 *state) |
Returns a normally distributed double value. More... | |
__forceinline__ __device__ __host__ float2 | rocrand_normal2 (rocrand_state_threefry4x64_20 *state) |
Returns two normally distributed float values. More... | |
__forceinline__ __device__ __host__ double | rocrand_normal_double (rocrand_state_threefry4x64_20 *state) |
Returns a normally distributed double value. More... | |
__forceinline__ __device__ __host__ double2 | rocrand_normal_double2 (rocrand_state_threefry4x64_20 *state) |
Returns two normally distributed double values. More... | |
__forceinline__ __device__ __host__ void | rocrand_init (const unsigned long long seed, const unsigned long long subsequence, const unsigned long long offset, rocrand_state_philox4x32_10 *state) |
Initializes Philox state. More... | |
__forceinline__ __device__ __host__ unsigned int | rocrand (rocrand_state_philox4x32_10 *state) |
Returns uniformly distributed random unsigned int value from [0; 2^32 - 1] range. More... | |
__forceinline__ __device__ __host__ uint4 | rocrand4 (rocrand_state_philox4x32_10 *state) |
Returns four uniformly distributed random unsigned int values from [0; 2^32 - 1] range. More... | |
__forceinline__ __device__ __host__ void | skipahead (unsigned long long offset, rocrand_state_philox4x32_10 *state) |
Updates Philox state to skip ahead by offset elements. More... | |
__forceinline__ __device__ __host__ void | skipahead_subsequence (unsigned long long subsequence, rocrand_state_philox4x32_10 *state) |
Updates Philox state to skip ahead by subsequence subsequences. More... | |
__forceinline__ __device__ __host__ void | skipahead_sequence (unsigned long long sequence, rocrand_state_philox4x32_10 *state) |
Updates Philox state to skip ahead by sequence sequences. More... | |
__forceinline__ __device__ __host__ unsigned int | rocrand_poisson (rocrand_state_philox4x32_10 *state, double lambda) |
Returns a Poisson-distributed unsigned int using Philox generator. More... | |
__forceinline__ __device__ __host__ uint4 | rocrand_poisson4 (rocrand_state_philox4x32_10 *state, double lambda) |
Returns four Poisson-distributed unsigned int values using Philox generator. More... | |
__forceinline__ __device__ __host__ unsigned int | rocrand_poisson (rocrand_state_mrg31k3p *state, double lambda) |
Returns a Poisson-distributed unsigned int using MRG31k3p generator. More... | |
__forceinline__ __device__ __host__ unsigned int | rocrand_poisson (rocrand_state_mrg32k3a *state, double lambda) |
Returns a Poisson-distributed unsigned int using MRG32k3a generator. More... | |
__forceinline__ __device__ __host__ unsigned int | rocrand_poisson (rocrand_state_xorwow *state, double lambda) |
Returns a Poisson-distributed unsigned int using XORWOW generator. More... | |
__forceinline__ __device__ __host__ unsigned int | rocrand_poisson (rocrand_state_mtgp32 *state, double lambda) |
Returns a Poisson-distributed unsigned int using MTGP32 generator. More... | |
__forceinline__ __device__ __host__ unsigned int | rocrand_poisson (rocrand_state_sobol32 *state, double lambda) |
Returns a Poisson-distributed unsigned int using SOBOL32 generator. More... | |
__forceinline__ __device__ __host__ unsigned int | rocrand_poisson (rocrand_state_scrambled_sobol32 *state, double lambda) |
Returns a Poisson-distributed unsigned int using SCRAMBLED_SOBOL32 generator. More... | |
__forceinline__ __device__ __host__ unsigned long long int | rocrand_poisson (rocrand_state_sobol64 *state, double lambda) |
Returns a Poisson-distributed unsigned long long int using SOBOL64 generator. More... | |
__forceinline__ __device__ __host__ unsigned long long int | rocrand_poisson (rocrand_state_scrambled_sobol64 *state, double lambda) |
Returns a Poisson-distributed unsigned long long int using SCRAMBLED_SOBOL64 generator. More... | |
__forceinline__ __device__ __host__ unsigned int | rocrand_poisson (rocrand_state_lfsr113 *state, double lambda) |
Returns a Poisson-distributed unsigned int using LFSR113 generator. More... | |
__forceinline__ __device__ __host__ unsigned int | rocrand_poisson (rocrand_state_threefry2x32_20 *state, double lambda) |
Returns a Poisson-distributed unsigned int using ThreeFry generator. More... | |
__forceinline__ __device__ __host__ unsigned int | rocrand_poisson (rocrand_state_threefry2x64_20 *state, double lambda) |
Returns a Poisson-distributed unsigned int using ThreeFry generator. More... | |
__forceinline__ __device__ __host__ unsigned int | rocrand_poisson (rocrand_state_threefry4x32_20 *state, double lambda) |
Returns a Poisson-distributed unsigned int using ThreeFry generator. More... | |
__forceinline__ __device__ __host__ unsigned int | rocrand_poisson (rocrand_state_threefry4x64_20 *state, double lambda) |
Returns a Poisson-distributed unsigned int using ThreeFry generator. More... | |
__forceinline__ __device__ __host__ void | rocrand_init (const unsigned int *vectors, const unsigned int scramble_constant, const unsigned int offset, rocrand_state_scrambled_sobol32 *state) |
Initialize scrambled_sobol32 state. More... | |
__forceinline__ __device__ __host__ unsigned int | rocrand (rocrand_state_scrambled_sobol32 *state) |
Returns uniformly distributed random unsigned int value from [0; 2^32 - 1] range. More... | |
__forceinline__ __device__ __host__ void | skipahead (unsigned long long offset, rocrand_state_scrambled_sobol32 *state) |
Updates SCRAMBLED_SOBOL32 state to skip ahead by offset elements. More... | |
__forceinline__ __device__ __host__ void | rocrand_init (const unsigned long long int *vectors, const unsigned long long int scramble_constant, const unsigned int offset, rocrand_state_scrambled_sobol64 *state) |
Initialize scrambled_sobol64 state. More... | |
__forceinline__ __device__ __host__ unsigned long long int | rocrand (rocrand_state_scrambled_sobol64 *state) |
Returns uniformly distributed random unsigned long long int value from [0; 2^64 - 1] range. More... | |
__forceinline__ __device__ __host__ void | skipahead (unsigned long long offset, rocrand_state_scrambled_sobol64 *state) |
Updates scrambled_sobol64 state to skip ahead by offset elements. More... | |
__forceinline__ __device__ __host__ void | rocrand_init (const unsigned int *vectors, const unsigned int offset, rocrand_state_sobol32 *state) |
Initialize SOBOL32 state. More... | |
__forceinline__ __device__ __host__ unsigned int | rocrand (rocrand_state_sobol32 *state) |
Returns uniformly distributed random unsigned int value from [0; 2^32 - 1] range. More... | |
__forceinline__ __device__ __host__ void | skipahead (unsigned long long offset, rocrand_state_sobol32 *state) |
Updates SOBOL32 state to skip ahead by offset elements. More... | |
__forceinline__ __device__ __host__ void | rocrand_init (const unsigned long long int *vectors, const unsigned int offset, rocrand_state_sobol64 *state) |
Initialize sobol64 state. More... | |
__forceinline__ __device__ __host__ unsigned long long int | rocrand (rocrand_state_sobol64 *state) |
Returns uniformly distributed random unsigned long long int value from [0; 2^64 - 1] range. More... | |
__forceinline__ __device__ __host__ void | skipahead (unsigned long long int offset, rocrand_state_sobol64 *state) |
Updates sobol64 state to skip ahead by offset elements. More... | |
__forceinline__ __device__ __host__ float | rocrand_uniform (rocrand_state_philox4x32_10 *state) |
Returns a uniformly distributed random float value from (0; 1] range. More... | |
__forceinline__ __device__ __host__ float2 | rocrand_uniform2 (rocrand_state_philox4x32_10 *state) |
Returns two uniformly distributed random float values from (0; 1] range. More... | |
__forceinline__ __device__ __host__ float4 | rocrand_uniform4 (rocrand_state_philox4x32_10 *state) |
Returns four uniformly distributed random float values from (0; 1] range. More... | |
__forceinline__ __device__ __host__ double | rocrand_uniform_double (rocrand_state_philox4x32_10 *state) |
Returns a uniformly distributed random double value from (0; 1] range. More... | |
__forceinline__ __device__ __host__ double2 | rocrand_uniform_double2 (rocrand_state_philox4x32_10 *state) |
Returns two uniformly distributed random double values from (0; 1] range. More... | |
__forceinline__ __device__ __host__ double4 | rocrand_uniform_double4 (rocrand_state_philox4x32_10 *state) |
Returns four uniformly distributed random double values from (0; 1] range. More... | |
__forceinline__ __device__ __host__ float | rocrand_uniform (rocrand_state_mrg31k3p *state) |
Returns a uniformly distributed random float value from (0; 1] range. More... | |
__forceinline__ __device__ __host__ double | rocrand_uniform_double (rocrand_state_mrg31k3p *state) |
Returns a uniformly distributed random double value from (0; 1] range. More... | |
__forceinline__ __device__ __host__ float | rocrand_uniform (rocrand_state_mrg32k3a *state) |
Returns a uniformly distributed random float value from (0; 1] range. More... | |
__forceinline__ __device__ __host__ double | rocrand_uniform_double (rocrand_state_mrg32k3a *state) |
Returns a uniformly distributed random double value from (0; 1] range. More... | |
__forceinline__ __device__ __host__ float | rocrand_uniform (rocrand_state_xorwow *state) |
Returns a uniformly distributed random float value from (0; 1] range. More... | |
__forceinline__ __device__ __host__ double | rocrand_uniform_double (rocrand_state_xorwow *state) |
Returns a uniformly distributed random double value from (0; 1] range. More... | |
__forceinline__ __device__ float | rocrand_uniform (rocrand_state_mtgp32 *state) |
Returns a uniformly distributed random float value from (0; 1] range. More... | |
__forceinline__ __device__ double | rocrand_uniform_double (rocrand_state_mtgp32 *state) |
Returns a uniformly distributed random double value from (0; 1] range. More... | |
__forceinline__ __device__ __host__ float | rocrand_uniform (rocrand_state_sobol32 *state) |
Returns a uniformly distributed random float value from (0; 1] range. More... | |
__forceinline__ __device__ __host__ double | rocrand_uniform_double (rocrand_state_sobol32 *state) |
Returns a uniformly distributed random double value from (0; 1] range. More... | |
__forceinline__ __device__ __host__ float | rocrand_uniform (rocrand_state_scrambled_sobol32 *state) |
Returns a uniformly distributed random float value from (0; 1] range. More... | |
__forceinline__ __device__ __host__ double | rocrand_uniform_double (rocrand_state_scrambled_sobol32 *state) |
Returns a uniformly distributed random double value from (0; 1] range. More... | |
__forceinline__ __device__ __host__ float | rocrand_uniform (rocrand_state_sobol64 *state) |
Returns a uniformly distributed random float value from (0; 1] range. More... | |
__forceinline__ __device__ __host__ double | rocrand_uniform_double (rocrand_state_sobol64 *state) |
Returns a uniformly distributed random double value from (0; 1] range. More... | |
__forceinline__ __device__ __host__ float | rocrand_uniform (rocrand_state_scrambled_sobol64 *state) |
Returns a uniformly distributed random float value from (0; 1] range. More... | |
__forceinline__ __device__ __host__ double | rocrand_uniform_double (rocrand_state_scrambled_sobol64 *state) |
Returns a uniformly distributed random double value from (0; 1] range. More... | |
__forceinline__ __device__ __host__ float | rocrand_uniform (rocrand_state_lfsr113 *state) |
Returns a uniformly distributed random float value from (0; 1] range. More... | |
__forceinline__ __device__ __host__ double | rocrand_uniform_double (rocrand_state_lfsr113 *state) |
Returns a uniformly distributed random double value from (0; 1] range. More... | |
__forceinline__ __device__ __host__ float | rocrand_uniform (rocrand_state_threefry2x32_20 *state) |
Returns a uniformly distributed random float value from (0; 1] range. More... | |
__forceinline__ __device__ __host__ double | rocrand_uniform_double (rocrand_state_threefry2x32_20 *state) |
Returns a uniformly distributed random double value from (0; 1] range. More... | |
__forceinline__ __device__ __host__ float | rocrand_uniform (rocrand_state_threefry2x64_20 *state) |
Returns a uniformly distributed random float value from (0; 1] range. More... | |
__forceinline__ __device__ __host__ double | rocrand_uniform_double (rocrand_state_threefry2x64_20 *state) |
Returns a uniformly distributed random double value from (0; 1] range. More... | |
__forceinline__ __device__ __host__ float | rocrand_uniform (rocrand_state_threefry4x32_20 *state) |
Returns a uniformly distributed random float value from (0; 1] range. More... | |
__forceinline__ __device__ __host__ double | rocrand_uniform_double (rocrand_state_threefry4x32_20 *state) |
Returns a uniformly distributed random double value from (0; 1] range. More... | |
__forceinline__ __device__ __host__ float | rocrand_uniform (rocrand_state_threefry4x64_20 *state) |
Returns a uniformly distributed random float value from (0; 1] range. More... | |
__forceinline__ __device__ __host__ double | rocrand_uniform_double (rocrand_state_threefry4x64_20 *state) |
Returns a uniformly distributed random double value from (0; 1] range. More... | |
__forceinline__ __device__ __host__ void | rocrand_init (const unsigned long long seed, const unsigned long long subsequence, const unsigned long long offset, rocrand_state_xorwow *state) |
Initialize XORWOW state. More... | |
__forceinline__ __device__ __host__ unsigned int | rocrand (rocrand_state_xorwow *state) |
Returns uniformly distributed random unsigned int value from [0; 2^32 - 1] range. More... | |
__forceinline__ __device__ __host__ void | skipahead (unsigned long long offset, rocrand_state_xorwow *state) |
Updates XORWOW state to skip ahead by offset elements. More... | |
__forceinline__ __device__ __host__ void | skipahead_subsequence (unsigned long long subsequence, rocrand_state_xorwow *state) |
Updates XORWOW state to skip ahead by subsequence subsequences. More... | |
__forceinline__ __device__ __host__ void | skipahead_sequence (unsigned long long sequence, rocrand_state_xorwow *state) |
Updates XORWOW state to skip ahead by sequence sequences. More... | |
Detailed Description
rocRAND RNG's state types
rocrandStateXORWOW_t
- XORWOW PRNG state typerocrandStatePhilox4_32_10_t
- PHILOX PRNG state typerocrandStateMRG32k3a_t
- MRG32k3a PRNG state typerocrandStateMtgp32_t
- MTGP32 PRNG state typerocrandStateSobol32_t
- SOBOL32 QRNG state type
Function Documentation
◆ rocrand() [1/10]
__forceinline__ __device__ __host__ unsigned int rocrand | ( | rocrand_state_lfsr113 * | state | ) |
Returns uniformly distributed random unsigned int
value from [0; 2^32 - 1] range.
Generates and returns uniformly distributed random unsigned int
value from [0; 2^32 - 1] range using LFSR113 generator in state
. State is incremented by one position.
- Parameters
-
state - Pointer to a state to use
- Returns
- Pseudorandom value (32-bit) as an
unsigned int
◆ rocrand() [2/10]
__forceinline__ __device__ __host__ unsigned int rocrand | ( | rocrand_state_mrg31k3p * | state | ) |
Returns uniformly distributed random unsigned int
value from [0; 2^32 - 1] range.
Generates and returns uniformly distributed random unsigned int
value from [0; 2^32 - 1] range using MRG31K3P generator in state
. State is incremented by one position.
- Parameters
-
state - Pointer to a state to use
- Returns
- Pseudorandom value (32-bit) as an
unsigned int
◆ rocrand() [3/10]
__forceinline__ __device__ __host__ unsigned int rocrand | ( | rocrand_state_mrg32k3a * | state | ) |
Returns uniformly distributed random unsigned int
value from [0; 2^32 - 1] range.
Generates and returns uniformly distributed random unsigned int
value from [0; 2^32 - 1] range using MRG32K3A generator in state
. State is incremented by one position.
- Parameters
-
state - Pointer to a state to use
- Returns
- Pseudorandom value (32-bit) as an
unsigned int
◆ rocrand() [4/10]
__forceinline__ __device__ unsigned int rocrand | ( | rocrand_state_mtgp32 * | state | ) |
Returns uniformly distributed random unsigned int
value from [0; 2^32 - 1] range.
Generates and returns uniformly distributed random unsigned int
value from [0; 2^32 - 1] range using MTGP32 generator in state
. State is incremented by one position.
- Parameters
-
state - Pointer to a state to use
- Returns
- Pseudorandom value (32-bit) as an
unsigned int
◆ rocrand() [5/10]
__forceinline__ __device__ __host__ unsigned int rocrand | ( | rocrand_state_philox4x32_10 * | state | ) |
Returns uniformly distributed random unsigned int
value from [0; 2^32 - 1] range.
Generates and returns uniformly distributed random unsigned int
value from [0; 2^32 - 1] range using Philox generator in state
. State is incremented by one position.
- Parameters
-
state - Pointer to a state to use
- Returns
- Pseudorandom value (32-bit) as an
unsigned int
◆ rocrand() [6/10]
__forceinline__ __device__ __host__ unsigned int rocrand | ( | rocrand_state_scrambled_sobol32 * | state | ) |
Returns uniformly distributed random unsigned int
value from [0; 2^32 - 1] range.
Generates and returns uniformly distributed random unsigned int
value from [0; 2^32 - 1] range using scrambled_sobol32 generator in state
. State is incremented by one position.
- Parameters
-
state - Pointer to a state to use
- Returns
- Quasirandom value (32-bit) as an
unsigned int
◆ rocrand() [7/10]
__forceinline__ __device__ __host__ unsigned long long int rocrand | ( | rocrand_state_scrambled_sobol64 * | state | ) |
Returns uniformly distributed random unsigned long long int
value from [0; 2^64 - 1] range.
Generates and returns uniformly distributed random unsigned long long int
value from [0; 2^64 - 1] range using scrambled_sobol64 generator in state
. State is incremented by one position.
- Parameters
-
state - Pointer to a state to use
- Returns
- Quasirandom value (64-bit) as an
unsigned long long int
◆ rocrand() [8/10]
__forceinline__ __device__ __host__ unsigned int rocrand | ( | rocrand_state_sobol32 * | state | ) |
Returns uniformly distributed random unsigned int
value from [0; 2^32 - 1] range.
Generates and returns uniformly distributed random unsigned int
value from [0; 2^32 - 1] range using Sobol32 generator in state
. State is incremented by one position.
- Parameters
-
state - Pointer to a state to use
- Returns
- Quasirandom value (32-bit) as an
unsigned int
◆ rocrand() [9/10]
__forceinline__ __device__ __host__ unsigned long long int rocrand | ( | rocrand_state_sobol64 * | state | ) |
Returns uniformly distributed random unsigned long long int
value from [0; 2^64 - 1] range.
Generates and returns uniformly distributed random unsigned long long int
value from [0; 2^64 - 1] range using sobol64 generator in state
. State is incremented by one position.
- Parameters
-
state - Pointer to a state to use
- Returns
- Quasirandom value (64-bit) as an
unsigned long long int
◆ rocrand() [10/10]
__forceinline__ __device__ __host__ unsigned int rocrand | ( | rocrand_state_xorwow * | state | ) |
Returns uniformly distributed random unsigned int
value from [0; 2^32 - 1] range.
Generates and returns uniformly distributed random unsigned int
value from [0; 2^32 - 1] range using XORWOW generator in state
. State is incremented by one position.
- Parameters
-
state - Pointer to a state to use
- Returns
- Pseudorandom value (32-bit) as an
unsigned int
◆ rocrand4()
__forceinline__ __device__ __host__ uint4 rocrand4 | ( | rocrand_state_philox4x32_10 * | state | ) |
Returns four uniformly distributed random unsigned int
values from [0; 2^32 - 1] range.
Generates and returns four uniformly distributed random unsigned int
values from [0; 2^32 - 1] range using Philox generator in state
. State is incremented by four positions.
- Parameters
-
state - Pointer to a state to use
- Returns
- Four pseudorandom values (32-bit) as an
uint4
◆ rocrand_discrete() [1/14]
__forceinline__ __device__ __host__ unsigned int rocrand_discrete | ( | rocrand_state_lfsr113 * | state, |
const rocrand_discrete_distribution | discrete_distribution | ||
) |
Returns a discrete distributed unsigned int
value.
Returns a unsigned int
distributed according to with discrete distribution discrete_distribution
using LFSR113 generator in state
, and increments the position of the generator by one.
- Parameters
-
state - Pointer to a state to use discrete_distribution - Related discrete distribution
- Returns
unsigned int
value distributed according todiscrete_distribution
◆ rocrand_discrete() [2/14]
__forceinline__ __device__ __host__ unsigned int rocrand_discrete | ( | rocrand_state_mrg31k3p * | state, |
const rocrand_discrete_distribution | discrete_distribution | ||
) |
Returns a discrete distributed unsigned int
value.
Returns a unsigned int
distributed according to with discrete distribution discrete_distribution
using MRG31k3p generator in state
, and increments the position of the generator by one.
- Parameters
-
state - Pointer to a state to use discrete_distribution - Related discrete distribution
- Returns
unsigned int
value distributed according todiscrete_distribution
◆ rocrand_discrete() [3/14]
__forceinline__ __device__ __host__ unsigned int rocrand_discrete | ( | rocrand_state_mrg32k3a * | state, |
const rocrand_discrete_distribution | discrete_distribution | ||
) |
Returns a discrete distributed unsigned int
value.
Returns a unsigned int
distributed according to with discrete distribution discrete_distribution
using MRG32k3a generator in state
, and increments the position of the generator by one.
- Parameters
-
state - Pointer to a state to use discrete_distribution - Related discrete distribution
- Returns
unsigned int
value distributed according todiscrete_distribution
◆ rocrand_discrete() [4/14]
__forceinline__ __device__ unsigned int rocrand_discrete | ( | rocrand_state_mtgp32 * | state, |
const rocrand_discrete_distribution | discrete_distribution | ||
) |
Returns a discrete distributed unsigned int
value.
Returns a unsigned int
distributed according to with discrete distribution discrete_distribution
using MTGP32 generator in state
, and increments the position of the generator by one.
- Parameters
-
state - Pointer to a state to use discrete_distribution - Related discrete distribution
- Returns
unsigned int
value distributed according todiscrete_distribution
◆ rocrand_discrete() [5/14]
__forceinline__ __device__ __host__ unsigned int rocrand_discrete | ( | rocrand_state_philox4x32_10 * | state, |
const rocrand_discrete_distribution | discrete_distribution | ||
) |
Returns a discrete distributed unsigned int
value.
Returns a unsigned int
distributed according to with discrete distribution discrete_distribution
using Philox generator in state
, and increments the position of the generator by one.
- Parameters
-
state - Pointer to a state to use discrete_distribution - Related discrete distribution
- Returns
unsigned int
value distributed according todiscrete_distribution
◆ rocrand_discrete() [6/14]
__forceinline__ __device__ __host__ unsigned int rocrand_discrete | ( | rocrand_state_scrambled_sobol32 * | state, |
const rocrand_discrete_distribution | discrete_distribution | ||
) |
Returns a discrete distributed unsigned int
value.
Returns a unsigned int
distributed according to discrete distribution discrete_distribution
using SCRAMBLED_SOBOL32 generator in state
, and increments the position of the generator by one.
- Parameters
-
state - Pointer to a state to use discrete_distribution - Related discrete distribution
- Returns
unsigned int
value distributed according todiscrete_distribution
◆ rocrand_discrete() [7/14]
__forceinline__ __device__ __host__ unsigned int rocrand_discrete | ( | rocrand_state_scrambled_sobol64 * | state, |
const rocrand_discrete_distribution | discrete_distribution | ||
) |
Returns a discrete distributed unsigned long long int
value.
Returns a unsigned long long int
distributed according to with discrete distribution discrete_distribution
using SCRAMBLED_SOBOL64 generator in state
, and increments the position of the generator by one.
- Parameters
-
state - Pointer to a state to use discrete_distribution - Related discrete distribution
- Returns
unsigned long long int
value distributed according todiscrete_distribution
◆ rocrand_discrete() [8/14]
__forceinline__ __device__ __host__ unsigned int rocrand_discrete | ( | rocrand_state_sobol32 * | state, |
const rocrand_discrete_distribution | discrete_distribution | ||
) |
Returns a discrete distributed unsigned int
value.
Returns a unsigned int
distributed according to with discrete distribution discrete_distribution
using SOBOL32 generator in state
, and increments the position of the generator by one.
- Parameters
-
state - Pointer to a state to use discrete_distribution - Related discrete distribution
- Returns
unsigned int
value distributed according todiscrete_distribution
◆ rocrand_discrete() [9/14]
__forceinline__ __device__ __host__ unsigned int rocrand_discrete | ( | rocrand_state_sobol64 * | state, |
const rocrand_discrete_distribution | discrete_distribution | ||
) |
Returns a discrete distributed unsigned long long int
value.
Returns a unsigned long long int
distributed according to with discrete distribution discrete_distribution
using SOBOL64 generator in state
, and increments the position of the generator by one.
- Parameters
-
state - Pointer to a state to use discrete_distribution - Related discrete distribution
- Returns
unsigned long long int
value distributed according todiscrete_distribution
◆ rocrand_discrete() [10/14]
__forceinline__ __device__ __host__ unsigned int rocrand_discrete | ( | rocrand_state_threefry2x32_20 * | state, |
const rocrand_discrete_distribution | discrete_distribution | ||
) |
Returns a discrete distributed unsigned int
value.
Returns a unsigned int
distributed according to with discrete distribution discrete_distribution
using ThreeFry generator in state
, and increments the position of the generator by one.
- Parameters
-
state - Pointer to a state to use discrete_distribution - Related discrete distribution
- Returns
unsigned int
value distributed according todiscrete_distribution
◆ rocrand_discrete() [11/14]
__forceinline__ __device__ __host__ unsigned int rocrand_discrete | ( | rocrand_state_threefry2x64_20 * | state, |
const rocrand_discrete_distribution | discrete_distribution | ||
) |
Returns a discrete distributed unsigned int
value.
Returns a unsigned int
distributed according to with discrete distribution discrete_distribution
using ThreeFry generator in state
, and increments the position of the generator by one.
- Parameters
-
state - Pointer to a state to use discrete_distribution - Related discrete distribution
- Returns
unsigned int
value distributed according todiscrete_distribution
◆ rocrand_discrete() [12/14]
__forceinline__ __device__ __host__ unsigned int rocrand_discrete | ( | rocrand_state_threefry4x32_20 * | state, |
const rocrand_discrete_distribution | discrete_distribution | ||
) |
Returns a discrete distributed unsigned int
value.
Returns a unsigned int
distributed according to with discrete distribution discrete_distribution
using ThreeFry generator in state
, and increments the position of the generator by one.
- Parameters
-
state - Pointer to a state to use discrete_distribution - Related discrete distribution
- Returns
unsigned int
value distributed according todiscrete_distribution
◆ rocrand_discrete() [13/14]
__forceinline__ __device__ __host__ unsigned int rocrand_discrete | ( | rocrand_state_threefry4x64_20 * | state, |
const rocrand_discrete_distribution | discrete_distribution | ||
) |
Returns a discrete distributed unsigned int
value.
Returns a unsigned int
distributed according to with discrete distribution discrete_distribution
using ThreeFry generator in state
, and increments the position of the generator by one.
- Parameters
-
state - Pointer to a state to use discrete_distribution - Related discrete distribution
- Returns
unsigned int
value distributed according todiscrete_distribution
◆ rocrand_discrete() [14/14]
__forceinline__ __device__ __host__ unsigned int rocrand_discrete | ( | rocrand_state_xorwow * | state, |
const rocrand_discrete_distribution | discrete_distribution | ||
) |
Returns a discrete distributed unsigned int
value.
Returns a unsigned int
distributed according to with discrete distribution discrete_distribution
using XORWOW generator in state
, and increments the position of the generator by one.
- Parameters
-
state - Pointer to a state to use discrete_distribution - Related discrete distribution
- Returns
unsigned int
value distributed according todiscrete_distribution
◆ rocrand_discrete4()
__forceinline__ __device__ __host__ uint4 rocrand_discrete4 | ( | rocrand_state_philox4x32_10 * | state, |
const rocrand_discrete_distribution | discrete_distribution | ||
) |
Returns four discrete distributed unsigned int
values.
Returns four unsigned int
distributed according to with discrete distribution discrete_distribution
using Philox generator in state
, and increments the position of the generator by four.
- Parameters
-
state - Pointer to a state to use discrete_distribution - Related discrete distribution
- Returns
- Four
unsigned int
values distributed according todiscrete_distribution
asuint4
◆ rocrand_init() [1/10]
__forceinline__ __device__ __host__ void rocrand_init | ( | const uint4 | seed, |
const unsigned int | subsequence, | ||
const unsigned long long | offset, | ||
rocrand_state_lfsr113 * | state | ||
) |
Initializes LFSR113 state.
Initializes the LFSR113 generator state
with the given seed
, subsequence
, and offset
.
- Parameters
-
seed - Value to use as a seed subsequence - Subsequence to start at offset - Absolute offset into subsequence state - Pointer to state to initialize
◆ rocrand_init() [2/10]
__forceinline__ __device__ __host__ void rocrand_init | ( | const uint4 | seed, |
const unsigned int | subsequence, | ||
rocrand_state_lfsr113 * | state | ||
) |
Initializes LFSR113 state.
Initializes the LFSR113 generator state
with the given seed
, subsequence
, and offset
.
- Parameters
-
seed - Value to use as a seed subsequence - Subsequence to start at state - Pointer to state to initialize
◆ rocrand_init() [3/10]
__forceinline__ __device__ __host__ void rocrand_init | ( | const unsigned int * | vectors, |
const unsigned int | offset, | ||
rocrand_state_sobol32 * | state | ||
) |
Initialize SOBOL32 state.
Initializes the SOBOL32 generator state
with the given direction vectors
and offset
.
- Parameters
-
vectors - Direction vectors offset - Absolute offset into sequence state - Pointer to state to initialize
◆ rocrand_init() [4/10]
__forceinline__ __device__ __host__ void rocrand_init | ( | const unsigned int * | vectors, |
const unsigned int | scramble_constant, | ||
const unsigned int | offset, | ||
rocrand_state_scrambled_sobol32 * | state | ||
) |
Initialize scrambled_sobol32 state.
Initializes the scrambled_sobol32 generator state
with the given direction vectors
and offset
.
- Parameters
-
vectors - Direction vectors scramble_constant - Constant used for scrambling the sequence offset - Absolute offset into sequence state - Pointer to state to initialize
◆ rocrand_init() [5/10]
__forceinline__ __device__ __host__ void rocrand_init | ( | const unsigned long long int * | vectors, |
const unsigned int | offset, | ||
rocrand_state_sobol64 * | state | ||
) |
Initialize sobol64 state.
Initializes the sobol64 generator state
with the given direction vectors
and offset
.
- Parameters
-
vectors - Direction vectors offset - Absolute offset into sequence state - Pointer to state to initialize
◆ rocrand_init() [6/10]
__forceinline__ __device__ __host__ void rocrand_init | ( | const unsigned long long int * | vectors, |
const unsigned long long int | scramble_constant, | ||
const unsigned int | offset, | ||
rocrand_state_scrambled_sobol64 * | state | ||
) |
Initialize scrambled_sobol64 state.
Initializes the scrambled_sobol64 generator state
with the given direction vectors
and offset
.
- Parameters
-
vectors - Direction vectors scramble_constant - Constant used for scrambling the sequence offset - Absolute offset into sequence state - Pointer to state to initialize
◆ rocrand_init() [7/10]
__forceinline__ __device__ __host__ void rocrand_init | ( | const unsigned long long | seed, |
const unsigned long long | subsequence, | ||
const unsigned long long | offset, | ||
rocrand_state_mrg31k3p * | state | ||
) |
Initializes MRG31K3P state.
Initializes the MRG31K3P generator state
with the given seed
, subsequence
, and offset
.
- Parameters
-
seed - Value to use as a seed subsequence - Subsequence to start at offset - Absolute offset into subsequence state - Pointer to state to initialize
◆ rocrand_init() [8/10]
__forceinline__ __device__ __host__ void rocrand_init | ( | const unsigned long long | seed, |
const unsigned long long | subsequence, | ||
const unsigned long long | offset, | ||
rocrand_state_mrg32k3a * | state | ||
) |
Initializes MRG32K3A state.
Initializes the MRG32K3A generator state
with the given seed
, subsequence
, and offset
.
- Parameters
-
seed - Value to use as a seed subsequence - Subsequence to start at offset - Absolute offset into subsequence state - Pointer to state to initialize
◆ rocrand_init() [9/10]
__forceinline__ __device__ __host__ void rocrand_init | ( | const unsigned long long | seed, |
const unsigned long long | subsequence, | ||
const unsigned long long | offset, | ||
rocrand_state_philox4x32_10 * | state | ||
) |
Initializes Philox state.
Initializes the Philox generator state
with the given seed
, subsequence
, and offset
.
- Parameters
-
seed - Value to use as a seed subsequence - Subsequence to start at offset - Absolute offset into subsequence state - Pointer to state to initialize
◆ rocrand_init() [10/10]
__forceinline__ __device__ __host__ void rocrand_init | ( | const unsigned long long | seed, |
const unsigned long long | subsequence, | ||
const unsigned long long | offset, | ||
rocrand_state_xorwow * | state | ||
) |
Initialize XORWOW state.
Initializes the XORWOW generator state
with the given seed
, subsequence
, and offset
.
- Parameters
-
seed - Value to use as a seed subsequence - Subsequence to start at offset - Absolute offset into subsequence state - Pointer to state to initialize
◆ rocrand_log_normal() [1/14]
__forceinline__ __device__ __host__ float rocrand_log_normal | ( | rocrand_state_lfsr113 * | state, |
float | mean, | ||
float | stddev | ||
) |
Returns a log-normally distributed float
value.
Generates and returns a log-normally distributed float
value using LFSR113 generator in state
, and increments position of the generator by one.
- Parameters
-
state - Pointer to a state to use mean - Mean of the related log-normal distribution stddev - Standard deviation of the related log-normal distribution
- Returns
- Log-normally distributed
float
value
◆ rocrand_log_normal() [2/14]
__forceinline__ __device__ __host__ float rocrand_log_normal | ( | rocrand_state_mrg31k3p * | state, |
float | mean, | ||
float | stddev | ||
) |
Returns a log-normally distributed float
value.
Generates and returns a log-normally distributed float
value using MRG31k3p generator in state
, and increments position of the generator by one. The function uses the Box-Muller transform method to generate two normally distributed values, transforms them to log-normally distributed values, returns first of them, and saves the second to be returned on the next call.
- Parameters
-
state - Pointer to a state to use mean - Mean of the related log-normal distribution stddev - Standard deviation of the related log-normal distribution
- Returns
- Log-normally distributed
float
value
◆ rocrand_log_normal() [3/14]
__forceinline__ __device__ __host__ float rocrand_log_normal | ( | rocrand_state_mrg32k3a * | state, |
float | mean, | ||
float | stddev | ||
) |
Returns a log-normally distributed float
value.
Generates and returns a log-normally distributed float
value using MRG32k3a generator in state
, and increments position of the generator by one. The function uses the Box-Muller transform method to generate two normally distributed values, transforms them to log-normally distributed values, returns first of them, and saves the second to be returned on the next call.
- Parameters
-
state - Pointer to a state to use mean - Mean of the related log-normal distribution stddev - Standard deviation of the related log-normal distribution
- Returns
- Log-normally distributed
float
value
◆ rocrand_log_normal() [4/14]
__forceinline__ __device__ float rocrand_log_normal | ( | rocrand_state_mtgp32 * | state, |
float | mean, | ||
float | stddev | ||
) |
Returns a log-normally distributed float
value.
Generates and returns a log-normally distributed float
value using MTGP32 generator in state
, and increments position of the generator by one.
- Parameters
-
state - Pointer to a state to use mean - Mean of the related log-normal distribution stddev - Standard deviation of the related log-normal distribution
- Returns
- Log-normally distributed
float
value
◆ rocrand_log_normal() [5/14]
__forceinline__ __device__ __host__ float rocrand_log_normal | ( | rocrand_state_philox4x32_10 * | state, |
float | mean, | ||
float | stddev | ||
) |
Returns a log-normally distributed float
value.
Generates and returns a log-normally distributed float
value using Philox generator in state
, and increments position of the generator by one. The function uses the Box-Muller transform method to generate two normally distributed values, transforms them to log-normally distributed values, returns first of them, and saves the second to be returned on the next call.
- Parameters
-
state - Pointer to a state to use mean - Mean of the related log-normal distribution stddev - Standard deviation of the related log-normal distribution
- Returns
- Log-normally distributed
float
value
◆ rocrand_log_normal() [6/14]
__forceinline__ __device__ __host__ float rocrand_log_normal | ( | rocrand_state_scrambled_sobol32 * | state, |
float | mean, | ||
float | stddev | ||
) |
Returns a log-normally distributed float
value.
Generates and returns a log-normally distributed float
value using SCRAMBLED_SOBOL32 generator in state
, and increments position of the generator by one.
- Parameters
-
state - Pointer to a state to use mean - Mean of the related log-normal distribution stddev - Standard deviation of the related log-normal distribution
- Returns
- Log-normally distributed
float
value
◆ rocrand_log_normal() [7/14]
__forceinline__ __device__ __host__ float rocrand_log_normal | ( | rocrand_state_scrambled_sobol64 * | state, |
float | mean, | ||
float | stddev | ||
) |
Returns a log-normally distributed float
value.
Generates and returns a log-normally distributed float
value using SCRAMBLED_SOBOL64 generator in state
, and increments position of the generator by one.
- Parameters
-
state - Pointer to a state to use mean - Mean of the related log-normal distribution stddev - Standard deviation of the related log-normal distribution
- Returns
- Log-normally distributed
float
value
◆ rocrand_log_normal() [8/14]
__forceinline__ __device__ __host__ float rocrand_log_normal | ( | rocrand_state_sobol32 * | state, |
float | mean, | ||
float | stddev | ||
) |
Returns a log-normally distributed float
value.
Generates and returns a log-normally distributed float
value using SOBOL32 generator in state
, and increments position of the generator by one.
- Parameters
-
state - Pointer to a state to use mean - Mean of the related log-normal distribution stddev - Standard deviation of the related log-normal distribution
- Returns
- Log-normally distributed
float
value
◆ rocrand_log_normal() [9/14]
__forceinline__ __device__ __host__ float rocrand_log_normal | ( | rocrand_state_sobol64 * | state, |
float | mean, | ||
float | stddev | ||
) |
Returns a log-normally distributed float
value.
Generates and returns a log-normally distributed float
value using SOBOL64 generator in state
, and increments position of the generator by one.
- Parameters
-
state - Pointer to a state to use mean - Mean of the related log-normal distribution stddev - Standard deviation of the related log-normal distribution
- Returns
- Log-normally distributed
float
value
◆ rocrand_log_normal() [10/14]
__forceinline__ __device__ __host__ float rocrand_log_normal | ( | rocrand_state_threefry2x32_20 * | state, |
double | mean, | ||
double | stddev | ||
) |
Returns a log-normally distributed float
value.
Generates and returns a log-normally distributed float
value using Threefry generator in state
, and increments position of the generator by one.
- Parameters
-
state - Pointer to a state to use mean - Mean of the related log-normal distribution stddev - Standard deviation of the related log-normal distribution
- Returns
- Log-normally distributed
float
value
◆ rocrand_log_normal() [11/14]
__forceinline__ __device__ __host__ float rocrand_log_normal | ( | rocrand_state_threefry2x64_20 * | state, |
double | mean, | ||
double | stddev | ||
) |
Returns a log-normally distributed float
value.
Generates and returns a log-normally distributed float
value using Threefry generator in state
, and increments position of the generator by one.
- Parameters
-
state - Pointer to a state to use mean - Mean of the related log-normal distribution stddev - Standard deviation of the related log-normal distribution
- Returns
- Log-normally distributed
float
value
◆ rocrand_log_normal() [12/14]
__forceinline__ __device__ __host__ float rocrand_log_normal | ( | rocrand_state_threefry4x32_20 * | state, |
double | mean, | ||
double | stddev | ||
) |
Returns a log-normally distributed float
value.
Generates and returns a log-normally distributed float
value using Threefry generator in state
, and increments position of the generator by one.
- Parameters
-
state - Pointer to a state to use mean - Mean of the related log-normal distribution stddev - Standard deviation of the related log-normal distribution
- Returns
- Log-normally distributed
float
value
◆ rocrand_log_normal() [13/14]
__forceinline__ __device__ __host__ float rocrand_log_normal | ( | rocrand_state_threefry4x64_20 * | state, |
double | mean, | ||
double | stddev | ||
) |
Returns a log-normally distributed float
value.
Generates and returns a log-normally distributed float
value using Threefry generator in state
, and increments position of the generator by one.
- Parameters
-
state - Pointer to a state to use mean - Mean of the related log-normal distribution stddev - Standard deviation of the related log-normal distribution
- Returns
- Log-normally distributed
float
value
◆ rocrand_log_normal() [14/14]
__forceinline__ __device__ __host__ float rocrand_log_normal | ( | rocrand_state_xorwow * | state, |
float | mean, | ||
float | stddev | ||
) |
Returns a log-normally distributed float
value.
Generates and returns a log-normally distributed float
value using XORWOW generator in state
, and increments position of the generator by one. The function uses the Box-Muller transform method to generate two normally distributed values, transforms them to log-normally distributed values, returns first of them, and saves the second to be returned on the next call.
- Parameters
-
state - Pointer to a state to use mean - Mean of the related log-normal distribution stddev - Standard deviation of the related log-normal distribution
- Returns
- Log-normally distributed
float
value
◆ rocrand_log_normal2() [1/10]
__forceinline__ __device__ __host__ float2 rocrand_log_normal2 | ( | rocrand_state_lfsr113 * | state, |
float | mean, | ||
float | stddev | ||
) |
Returns two log-normally distributed float
values.
Generates and returns two log-normally distributed float
values using LFSR113 generator in state
, and increments position of the generator by two. The function uses the Box-Muller transform method to generate two normally distributed values, transforms them to log-normally distributed values, and returns both.
- Parameters
-
state - Pointer to a state to use mean - Mean of the related log-normal distribution stddev - Standard deviation of the related log-normal distribution
- Returns
- Two log-normally distributed
float
value asfloat2
◆ rocrand_log_normal2() [2/10]
__forceinline__ __device__ __host__ float2 rocrand_log_normal2 | ( | rocrand_state_mrg31k3p * | state, |
float | mean, | ||
float | stddev | ||
) |
Returns two log-normally distributed float
values.
Generates and returns two log-normally distributed float
values using MRG31k3p generator in state
, and increments position of the generator by two. The function uses the Box-Muller transform method to generate two normally distributed values, transforms them to log-normally distributed values, and returns both.
- Parameters
-
state - Pointer to a state to use mean - Mean of the related log-normal distribution stddev - Standard deviation of the related log-normal distribution
- Returns
- Two log-normally distributed
float
value asfloat2
◆ rocrand_log_normal2() [3/10]
__forceinline__ __device__ __host__ float2 rocrand_log_normal2 | ( | rocrand_state_mrg32k3a * | state, |
float | mean, | ||
float | stddev | ||
) |
Returns two log-normally distributed float
values.
Generates and returns two log-normally distributed float
values using MRG32k3a generator in state
, and increments position of the generator by two. The function uses the Box-Muller transform method to generate two normally distributed values, transforms them to log-normally distributed values, and returns both.
- Parameters
-
state - Pointer to a state to use mean - Mean of the related log-normal distribution stddev - Standard deviation of the related log-normal distribution
- Returns
- Two log-normally distributed
float
value asfloat2
◆ rocrand_log_normal2() [4/10]
__forceinline__ __device__ float2 rocrand_log_normal2 | ( | rocrand_state_mtgp32 * | state, |
float | mean, | ||
float | stddev | ||
) |
Returns two log-normally distributed float
values.
Generates and returns two log-normally distributed float
values using MTGP32 generator in state
, and increments position of the generator by two. The function uses the Box-Muller transform method to generate two normally distributed values, transforms them to log-normally distributed values, and returns both.
- Parameters
-
state - Pointer to a state to use mean - Mean of the related log-normal distribution stddev - Standard deviation of the related log-normal distribution
- Returns
- Two log-normally distributed
float
value asfloat2
◆ rocrand_log_normal2() [5/10]
__forceinline__ __device__ __host__ float2 rocrand_log_normal2 | ( | rocrand_state_philox4x32_10 * | state, |
float | mean, | ||
float | stddev | ||
) |
Returns two log-normally distributed float
values.
Generates and returns two log-normally distributed float
values using Philox generator in state
, and increments position of the generator by two. The function uses the Box-Muller transform method to generate two normally distributed values, transforms them to log-normally distributed values, and returns both.
- Parameters
-
state - Pointer to a state to use mean - Mean of the related log-normal distribution stddev - Standard deviation of the related log-normal distribution
- Returns
- Two log-normally distributed
float
value asfloat2
◆ rocrand_log_normal2() [6/10]
__forceinline__ __device__ __host__ float2 rocrand_log_normal2 | ( | rocrand_state_threefry2x32_20 * | state, |
float | mean, | ||
float | stddev | ||
) |
Returns two log-normally distributed float
values.
Generates and returns two log-normally distributed float
values using Threefry generator in state
, and increments position of the generator by two. The function uses the Box-Muller transform method to generate two normally distributed values, transforms them to log-normally distributed values, and returns both.
- Parameters
-
state - Pointer to a state to use mean - Mean of the related log-normal distribution stddev - Standard deviation of the related log-normal distribution
- Returns
- Two log-normally distributed
float
value asfloat2
◆ rocrand_log_normal2() [7/10]
__forceinline__ __device__ __host__ float2 rocrand_log_normal2 | ( | rocrand_state_threefry2x64_20 * | state, |
float | mean, | ||
float | stddev | ||
) |
Returns two log-normally distributed float
values.
Generates and returns two log-normally distributed float
values using Threefry generator in state
, and increments position of the generator by two. The function uses the Box-Muller transform method to generate two normally distributed values, transforms them to log-normally distributed values, and returns both.
- Parameters
-
state - Pointer to a state to use mean - Mean of the related log-normal distribution stddev - Standard deviation of the related log-normal distribution
- Returns
- Two log-normally distributed
float
value asfloat2
◆ rocrand_log_normal2() [8/10]
__forceinline__ __device__ __host__ float2 rocrand_log_normal2 | ( | rocrand_state_threefry4x32_20 * | state, |
float | mean, | ||
float | stddev | ||
) |
Returns two log-normally distributed float
values.
Generates and returns two log-normally distributed float
values using Threefry generator in state
, and increments position of the generator by two. The function uses the Box-Muller transform method to generate two normally distributed values, transforms them to log-normally distributed values, and returns both.
- Parameters
-
state - Pointer to a state to use mean - Mean of the related log-normal distribution stddev - Standard deviation of the related log-normal distribution
- Returns
- Two log-normally distributed
float
value asfloat2
◆ rocrand_log_normal2() [9/10]
__forceinline__ __device__ __host__ float2 rocrand_log_normal2 | ( | rocrand_state_threefry4x64_20 * | state, |
float | mean, | ||
float | stddev | ||
) |
Returns two log-normally distributed float
values.
Generates and returns two log-normally distributed float
values using Threefry generator in state
, and increments position of the generator by two. The function uses the Box-Muller transform method to generate two normally distributed values, transforms them to log-normally distributed values, and returns both.
- Parameters
-
state - Pointer to a state to use mean - Mean of the related log-normal distribution stddev - Standard deviation of the related log-normal distribution
- Returns
- Two log-normally distributed
float
value asfloat2
◆ rocrand_log_normal2() [10/10]
__forceinline__ __device__ __host__ float2 rocrand_log_normal2 | ( | rocrand_state_xorwow * | state, |
float | mean, | ||
float | stddev | ||
) |
Returns two log-normally distributed float
values.
Generates and returns two log-normally distributed float
values using XORWOW generator in state
, and increments position of the generator by two. The function uses the Box-Muller transform method to generate two normally distributed values, transforms them to log-normally distributed values, and returns both.
- Parameters
-
state - Pointer to a state to use mean - Mean of the related log-normal distribution stddev - Standard deviation of the related log-normal distribution
- Returns
- Two log-normally distributed
float
value asfloat2
◆ rocrand_log_normal4()
__forceinline__ __device__ __host__ float4 rocrand_log_normal4 | ( | rocrand_state_philox4x32_10 * | state, |
float | mean, | ||
float | stddev | ||
) |
Returns four log-normally distributed float
values.
Generates and returns four log-normally distributed float
values using Philox generator in state
, and increments position of the generator by four. The function uses the Box-Muller transform method to generate four normally distributed values, transforms them to log-normally distributed values, and returns them.
- Parameters
-
state - Pointer to a state to use mean - Mean of the related log-normal distribution stddev - Standard deviation of the related log-normal distribution
- Returns
- Four log-normally distributed
float
value asfloat4
◆ rocrand_log_normal_double() [1/14]
__forceinline__ __device__ __host__ double rocrand_log_normal_double | ( | rocrand_state_lfsr113 * | state, |
double | mean, | ||
double | stddev | ||
) |
Returns a log-normally distributed double
value.
Generates and returns a log-normally distributed double
value using LFSR113 generator in state
, and increments position of the generator by one.
- Parameters
-
state - Pointer to a state to use mean - Mean of the related log-normal distribution stddev - Standard deviation of the related log-normal distribution
- Returns
- Log-normally distributed
double
value
◆ rocrand_log_normal_double() [2/14]
__forceinline__ __device__ __host__ double rocrand_log_normal_double | ( | rocrand_state_mrg31k3p * | state, |
double | mean, | ||
double | stddev | ||
) |
Returns a log-normally distributed double
value.
Generates and returns a log-normally distributed double
value using MRG31k3p generator in state
, and increments position of the generator by one. The function uses the Box-Muller transform method to generate two normally distributed double
values, transforms them to log-normally distributed double
values, returns first of them, and saves the second to be returned on the next call.
- Parameters
-
state - Pointer to a state to use mean - Mean of the related log-normal distribution stddev - Standard deviation of the related log-normal distribution
- Returns
- Log-normally distributed
double
value
◆ rocrand_log_normal_double() [3/14]
__forceinline__ __device__ __host__ double rocrand_log_normal_double | ( | rocrand_state_mrg32k3a * | state, |
double | mean, | ||
double | stddev | ||
) |
Returns a log-normally distributed double
value.
Generates and returns a log-normally distributed double
value using MRG32k3a generator in state
, and increments position of the generator by one. The function uses the Box-Muller transform method to generate two normally distributed double
values, transforms them to log-normally distributed double
values, returns first of them, and saves the second to be returned on the next call.
- Parameters
-
state - Pointer to a state to use mean - Mean of the related log-normal distribution stddev - Standard deviation of the related log-normal distribution
- Returns
- Log-normally distributed
double
value
◆ rocrand_log_normal_double() [4/14]
__forceinline__ __device__ double rocrand_log_normal_double | ( | rocrand_state_mtgp32 * | state, |
double | mean, | ||
double | stddev | ||
) |
Returns a log-normally distributed double
value.
Generates and returns a log-normally distributed double
value using MTGP32 generator in state
, and increments position of the generator by one.
- Parameters
-
state - Pointer to a state to use mean - Mean of the related log-normal distribution stddev - Standard deviation of the related log-normal distribution
- Returns
- Log-normally distributed
double
value
◆ rocrand_log_normal_double() [5/14]
__forceinline__ __device__ __host__ double rocrand_log_normal_double | ( | rocrand_state_philox4x32_10 * | state, |
double | mean, | ||
double | stddev | ||
) |
Returns a log-normally distributed double
values.
Generates and returns a log-normally distributed double
value using Philox generator in state
, and increments position of the generator by two. The function uses the Box-Muller transform method to generate two normally distributed double
values, transforms them to log-normally distributed double
values, returns first of them, and saves the second to be returned on the next call.
- Parameters
-
state - Pointer to a state to use mean - Mean of the related log-normal distribution stddev - Standard deviation of the related log-normal distribution
- Returns
- Log-normally distributed
double
value
◆ rocrand_log_normal_double() [6/14]
__forceinline__ __device__ __host__ double rocrand_log_normal_double | ( | rocrand_state_scrambled_sobol32 * | state, |
double | mean, | ||
double | stddev | ||
) |
Returns a log-normally distributed double
value.
Generates and returns a log-normally distributed double
value using SCRAMBLED_SOBOL32 generator in state
, and increments position of the generator by one.
- Parameters
-
state - Pointer to a state to use mean - Mean of the related log-normal distribution stddev - Standard deviation of the related log-normal distribution
- Returns
- Log-normally distributed
double
value
◆ rocrand_log_normal_double() [7/14]
__forceinline__ __device__ __host__ double rocrand_log_normal_double | ( | rocrand_state_scrambled_sobol64 * | state, |
double | mean, | ||
double | stddev | ||
) |
Returns a log-normally distributed double
value.
Generates and returns a log-normally distributed double
value using SCRAMBLED_SOBOL64 generator in state
, and increments position of the generator by one.
- Parameters
-
state - Pointer to a state to use mean - Mean of the related log-normal distribution stddev - Standard deviation of the related log-normal distribution
- Returns
- Log-normally distributed
double
value
◆ rocrand_log_normal_double() [8/14]
__forceinline__ __device__ __host__ double rocrand_log_normal_double | ( | rocrand_state_sobol32 * | state, |
double | mean, | ||
double | stddev | ||
) |
Returns a log-normally distributed double
value.
Generates and returns a log-normally distributed double
value using SOBOL32 generator in state
, and increments position of the generator by one.
- Parameters
-
state - Pointer to a state to use mean - Mean of the related log-normal distribution stddev - Standard deviation of the related log-normal distribution
- Returns
- Log-normally distributed
double
value
◆ rocrand_log_normal_double() [9/14]
__forceinline__ __device__ __host__ double rocrand_log_normal_double | ( | rocrand_state_sobol64 * | state, |
double | mean, | ||
double | stddev | ||
) |
Returns a log-normally distributed double
value.
Generates and returns a log-normally distributed double
value using SOBOL64 generator in state
, and increments position of the generator by one.
- Parameters
-
state - Pointer to a state to use mean - Mean of the related log-normal distribution stddev - Standard deviation of the related log-normal distribution
- Returns
- Log-normally distributed
double
value
◆ rocrand_log_normal_double() [10/14]
__forceinline__ __device__ __host__ double rocrand_log_normal_double | ( | rocrand_state_threefry2x32_20 * | state, |
double | mean, | ||
double | stddev | ||
) |
Returns a log-normally distributed double
value.
Generates and returns a log-normally distributed double
value using Threefry generator in state
, and increments position of the generator by one.
- Parameters
-
state - Pointer to a state to use mean - Mean of the related log-normal distribution stddev - Standard deviation of the related log-normal distribution
- Returns
- Log-normally distributed
double
value
◆ rocrand_log_normal_double() [11/14]
__forceinline__ __device__ __host__ double rocrand_log_normal_double | ( | rocrand_state_threefry2x64_20 * | state, |
double | mean, | ||
double | stddev | ||
) |
Returns a log-normally distributed double
value.
Generates and returns a log-normally distributed double
value using Threefry generator in state
, and increments position of the generator by one.
- Parameters
-
state - Pointer to a state to use mean - Mean of the related log-normal distribution stddev - Standard deviation of the related log-normal distribution
- Returns
- Log-normally distributed
double
value
◆ rocrand_log_normal_double() [12/14]
__forceinline__ __device__ __host__ double rocrand_log_normal_double | ( | rocrand_state_threefry4x32_20 * | state, |
double | mean, | ||
double | stddev | ||
) |
Returns a log-normally distributed double
value.
Generates and returns a log-normally distributed double
value using Threefry generator in state
, and increments position of the generator by one.
- Parameters
-
state - Pointer to a state to use mean - Mean of the related log-normal distribution stddev - Standard deviation of the related log-normal distribution
- Returns
- Log-normally distributed
double
value
◆ rocrand_log_normal_double() [13/14]
__forceinline__ __device__ __host__ double rocrand_log_normal_double | ( | rocrand_state_threefry4x64_20 * | state, |
double | mean, | ||
double | stddev | ||
) |
Returns a log-normally distributed double
value.
Generates and returns a log-normally distributed double
value using Threefry generator in state
, and increments position of the generator by one.
- Parameters
-
state - Pointer to a state to use mean - Mean of the related log-normal distribution stddev - Standard deviation of the related log-normal distribution
- Returns
- Log-normally distributed
double
value
◆ rocrand_log_normal_double() [14/14]
__forceinline__ __device__ __host__ double rocrand_log_normal_double | ( | rocrand_state_xorwow * | state, |
double | mean, | ||
double | stddev | ||
) |
Returns a log-normally distributed double
value.
Generates and returns a log-normally distributed double
value using XORWOW generator in state
, and increments position of the generator by two. The function uses the Box-Muller transform method to generate two normally distributed double
values, transforms them to log-normally distributed double
values, returns first of them, and saves the second to be returned on the next call.
- Parameters
-
state - Pointer to a state to use mean - Mean of the related log-normal distribution stddev - Standard deviation of the related log-normal distribution
- Returns
- Log-normally distributed
double
value
◆ rocrand_log_normal_double2() [1/10]
__forceinline__ __device__ __host__ double2 rocrand_log_normal_double2 | ( | rocrand_state_lfsr113 * | state, |
double | mean, | ||
double | stddev | ||
) |
Returns two log-normally distributed double
values.
Generates and returns two log-normally distributed double
values using LFSR113 generator in state
, and increments position of the generator by four. The function uses the Box-Muller transform method to generate two normally distributed values, transforms them to log-normally distributed values, and returns both.
- Parameters
-
state - Pointer to a state to use mean - Mean of the related log-normal distribution stddev - Standard deviation of the related log-normal distribution
- Returns
- Two log-normally distributed
double
values asdouble2
◆ rocrand_log_normal_double2() [2/10]
__forceinline__ __device__ __host__ double2 rocrand_log_normal_double2 | ( | rocrand_state_mrg31k3p * | state, |
double | mean, | ||
double | stddev | ||
) |
Returns two log-normally distributed double
values.
Generates and returns two log-normally distributed double
values using MRG31k3p generator in state
, and increments position of the generator by two. The function uses the Box-Muller transform method to generate two normally distributed values, transforms them to log-normally distributed values, and returns both.
- Parameters
-
state - Pointer to a state to use mean - Mean of the related log-normal distribution stddev - Standard deviation of the related log-normal distribution
- Returns
- Two log-normally distributed
double
values asdouble2
◆ rocrand_log_normal_double2() [3/10]
__forceinline__ __device__ __host__ double2 rocrand_log_normal_double2 | ( | rocrand_state_mrg32k3a * | state, |
double | mean, | ||
double | stddev | ||
) |
Returns two log-normally distributed double
values.
Generates and returns two log-normally distributed double
values using MRG32k3a generator in state
, and increments position of the generator by two. The function uses the Box-Muller transform method to generate two normally distributed values, transforms them to log-normally distributed values, and returns both.
- Parameters
-
state - Pointer to a state to use mean - Mean of the related log-normal distribution stddev - Standard deviation of the related log-normal distribution
- Returns
- Two log-normally distributed
double
values asdouble2
◆ rocrand_log_normal_double2() [4/10]
__forceinline__ __device__ double2 rocrand_log_normal_double2 | ( | rocrand_state_mtgp32 * | state, |
double | mean, | ||
double | stddev | ||
) |
Returns two log-normally distributed double
values.
Generates and returns two log-normally distributed double
values using MTGP32 generator in state
, and increments position of the generator by four. The function uses the Box-Muller transform method to generate two normally distributed values, transforms them to log-normally distributed values, and returns both.
- Parameters
-
state - Pointer to a state to use mean - Mean of the related log-normal distribution stddev - Standard deviation of the related log-normal distribution
- Returns
- Two log-normally distributed
double
values asdouble2
◆ rocrand_log_normal_double2() [5/10]
__forceinline__ __device__ __host__ double2 rocrand_log_normal_double2 | ( | rocrand_state_philox4x32_10 * | state, |
double | mean, | ||
double | stddev | ||
) |
Returns two log-normally distributed double
values.
Generates and returns two log-normally distributed double
values using Philox generator in state
, and increments position of the generator by four. The function uses the Box-Muller transform method to generate two normally distributed values, transforms them to log-normally distributed values, and returns both.
- Parameters
-
state - Pointer to a state to use mean - Mean of the related log-normal distribution stddev - Standard deviation of the related log-normal distribution
- Returns
- Two log-normally distributed
double
values asdouble2
◆ rocrand_log_normal_double2() [6/10]
__forceinline__ __device__ __host__ double2 rocrand_log_normal_double2 | ( | rocrand_state_threefry2x32_20 * | state, |
double | mean, | ||
double | stddev | ||
) |
Returns two log-normally distributed double
values.
Generates and returns two log-normally distributed double
values using Threefry generator in state
, and increments position of the generator by four. The function uses the Box-Muller transform method to generate two normally distributed values, transforms them to log-normally distributed values, and returns both.
- Parameters
-
state - Pointer to a state to use mean - Mean of the related log-normal distribution stddev - Standard deviation of the related log-normal distribution
- Returns
- Two log-normally distributed
double
values asdouble2
◆ rocrand_log_normal_double2() [7/10]
__forceinline__ __device__ __host__ double2 rocrand_log_normal_double2 | ( | rocrand_state_threefry2x64_20 * | state, |
double | mean, | ||
double | stddev | ||
) |
Returns two log-normally distributed double
values.
Generates and returns two log-normally distributed double
values using Threefry generator in state
, and increments position of the generator by two. The function uses the Box-Muller transform method to generate two normally distributed values, transforms them to log-normally distributed values, and returns both.
- Parameters
-
state - Pointer to a state to use mean - Mean of the related log-normal distribution stddev - Standard deviation of the related log-normal distribution
- Returns
- Two log-normally distributed
double
values asdouble2
◆ rocrand_log_normal_double2() [8/10]
__forceinline__ __device__ __host__ double2 rocrand_log_normal_double2 | ( | rocrand_state_threefry4x32_20 * | state, |
double | mean, | ||
double | stddev | ||
) |
Returns two log-normally distributed double
values.
Generates and returns two log-normally distributed double
values using Threefry generator in state
, and increments position of the generator by four. The function uses the Box-Muller transform method to generate two normally distributed values, transforms them to log-normally distributed values, and returns both.
- Parameters
-
state - Pointer to a state to use mean - Mean of the related log-normal distribution stddev - Standard deviation of the related log-normal distribution
- Returns
- Two log-normally distributed
double
values asdouble2
◆ rocrand_log_normal_double2() [9/10]
__forceinline__ __device__ __host__ double2 rocrand_log_normal_double2 | ( | rocrand_state_threefry4x64_20 * | state, |
double | mean, | ||
double | stddev | ||
) |
Returns two log-normally distributed double
values.
Generates and returns two log-normally distributed double
values using Threefry generator in state
, and increments position of the generator by two. The function uses the Box-Muller transform method to generate two normally distributed values, transforms them to log-normally distributed values, and returns both.
- Parameters
-
state - Pointer to a state to use mean - Mean of the related log-normal distribution stddev - Standard deviation of the related log-normal distribution
- Returns
- Two log-normally distributed
double
values asdouble2
◆ rocrand_log_normal_double2() [10/10]
__forceinline__ __device__ __host__ double2 rocrand_log_normal_double2 | ( | rocrand_state_xorwow * | state, |
double | mean, | ||
double | stddev | ||
) |
Returns two log-normally distributed double
values.
Generates and returns two log-normally distributed double
values using XORWOW generator in state
, and increments position of the generator by four. The function uses the Box-Muller transform method to generate two normally distributed values, transforms them to log-normally distributed values, and returns both.
- Parameters
-
state - Pointer to a state to use mean - Mean of the related log-normal distribution stddev - Standard deviation of the related log-normal distribution
- Returns
- Two log-normally distributed
double
values asdouble2
◆ rocrand_log_normal_double4()
__forceinline__ __device__ __host__ double4 rocrand_log_normal_double4 | ( | rocrand_state_philox4x32_10 * | state, |
double | mean, | ||
double | stddev | ||
) |
Returns four log-normally distributed double
values.
Generates and returns four log-normally distributed double
values using Philox generator in state
, and increments position of the generator by eight. The function uses the Box-Muller transform method to generate four normally distributed values, transforms them to log-normally distributed values, and returns them.
- Parameters
-
state - Pointer to a state to use mean - Mean of the related log-normal distribution stddev - Standard deviation of the related log-normal distribution
- Returns
- Four log-normally distributed
double
values asdouble4
◆ rocrand_make_constant()
|
inline |
Loads parameters for MTGP32.
Loads parameters for use by kernel functions on the host-side and copies the results to the specified location in device memory.
NOTE: Not used as rocrand_make_state_mtgp32 handles loading parameters into state.
- Parameters
-
params - Pointer to an array of type mtgp32_fast_params in host memory p - Pointer to a mtgp32_params structure allocated in device memory
- Returns
- ROCRAND_STATUS_ALLOCATION_FAILED if parameters could not be loaded
- ROCRAND_STATUS_SUCCESS if parameters are loaded
◆ rocrand_make_state_mtgp32()
|
inline |
Initializes MTGP32 states.
Initializes MTGP32 states on the host-side by allocating a state array in host memory, initializes that array, and copies the result to device or host memory.
- Parameters
-
state - Pointer to an array of states in device or host memory params - Pointer to an array of type mtgp32_fast_params in host memory n - Number of states to initialize seed - Seed value
- Returns
- ROCRAND_STATUS_ALLOCATION_FAILED if states could not be initialized
- ROCRAND_STATUS_SUCCESS if states are initialized
◆ rocrand_mtgp32_block_copy()
__forceinline__ __device__ void rocrand_mtgp32_block_copy | ( | rocrand_state_mtgp32 * | src, |
rocrand_state_mtgp32 * | dest | ||
) |
Copies MTGP32 state to another state using block of threads.
Copies a MTGP32 state src
to dest
using a block of threads efficiently. Example usage would be:
- Parameters
-
src - Pointer to a state to copy from dest - Pointer to a state to copy to
◆ rocrand_mtgp32_set_params()
__forceinline__ __device__ void rocrand_mtgp32_set_params | ( | rocrand_state_mtgp32 * | state, |
mtgp32_params * | params | ||
) |
Changes parameters of a MTGP32 state.
- Parameters
-
state - Pointer to a MTGP32 state params - Pointer to new parameters
◆ rocrand_normal() [1/14]
__forceinline__ __device__ __host__ float rocrand_normal | ( | rocrand_state_lfsr113 * | state | ) |
Returns a normally distributed float
value.
Generates and returns a normally distributed float
value using LFSR113 generator in state
, and increments position of the generator by one. Used normal distribution has mean value equal to 0.0f, and standard deviation equal to 1.0f.
- Parameters
-
state - Pointer to a state to use
- Returns
- Normally distributed
float
value
◆ rocrand_normal() [2/14]
__forceinline__ __device__ __host__ float rocrand_normal | ( | rocrand_state_mrg31k3p * | state | ) |
Returns a normally distributed float
value.
Generates and returns a normally distributed float
value using MRG31k3p generator in state
, and increments position of the generator by one. Used normal distribution has mean value equal to 0.0f, and standard deviation equal to 1.0f. The function uses the Box-Muller transform method to generate two normally distributed values, returns first of them, and saves the second to be returned on the next call.
- Parameters
-
state - Pointer to a state to use
- Returns
- Normally distributed
float
value
◆ rocrand_normal() [3/14]
__forceinline__ __device__ __host__ float rocrand_normal | ( | rocrand_state_mrg32k3a * | state | ) |
Returns a normally distributed float
value.
Generates and returns a normally distributed float
value using MRG32k3a generator in state
, and increments position of the generator by one. Used normal distribution has mean value equal to 0.0f, and standard deviation equal to 1.0f. The function uses the Box-Muller transform method to generate two normally distributed values, returns first of them, and saves the second to be returned on the next call.
- Parameters
-
state - Pointer to a state to use
- Returns
- Normally distributed
float
value
◆ rocrand_normal() [4/14]
__forceinline__ __device__ float rocrand_normal | ( | rocrand_state_mtgp32 * | state | ) |
Returns a normally distributed float
value.
Generates and returns a normally distributed float
value using MTGP32 generator in state
, and increments position of the generator by one. Used normal distribution has mean value equal to 0.0f, and standard deviation equal to 1.0f.
- Parameters
-
state - Pointer to a state to use
- Returns
- Normally distributed
float
value
◆ rocrand_normal() [5/14]
__forceinline__ __device__ __host__ float rocrand_normal | ( | rocrand_state_philox4x32_10 * | state | ) |
Returns a normally distributed float
value.
Generates and returns a normally distributed float
value using Philox generator in state
, and increments position of the generator by one. Used normal distribution has mean value equal to 0.0f, and standard deviation equal to 1.0f. The function uses the Box-Muller transform method to generate two normally distributed values, returns first of them, and saves the second to be returned on the next call.
- Parameters
-
state - Pointer to a state to use
- Returns
- Normally distributed
float
value
◆ rocrand_normal() [6/14]
__forceinline__ __device__ __host__ float rocrand_normal | ( | rocrand_state_scrambled_sobol32 * | state | ) |
Returns a normally distributed float
value.
Generates and returns a normally distributed float
value using SCRAMBLED_SOBOL32 generator in state
, and increments position of the generator by one. Used normal distribution has mean value equal to 0.0f, and standard deviation equal to 1.0f.
- Parameters
-
state - Pointer to a state to use
- Returns
- Normally distributed
float
value
◆ rocrand_normal() [7/14]
__forceinline__ __device__ __host__ float rocrand_normal | ( | rocrand_state_scrambled_sobol64 * | state | ) |
Returns a normally distributed float
value.
Generates and returns a normally distributed float
value using SCRAMBLED_SOBOL64 generator in state
, and increments position of the generator by one. Used normal distribution has mean value equal to 0.0f, and standard deviation equal to 1.0f.
- Parameters
-
state - Pointer to a state to use
- Returns
- Normally distributed
float
value
◆ rocrand_normal() [8/14]
__forceinline__ __device__ __host__ float rocrand_normal | ( | rocrand_state_sobol32 * | state | ) |
Returns a normally distributed float
value.
Generates and returns a normally distributed float
value using SOBOL32 generator in state
, and increments position of the generator by one. Used normal distribution has mean value equal to 0.0f, and standard deviation equal to 1.0f.
- Parameters
-
state - Pointer to a state to use
- Returns
- Normally distributed
float
value
◆ rocrand_normal() [9/14]
__forceinline__ __device__ __host__ float rocrand_normal | ( | rocrand_state_sobol64 * | state | ) |
Returns a normally distributed float
value.
Generates and returns a normally distributed float
value using SOBOL64 generator in state
, and increments position of the generator by one. Used normal distribution has mean value equal to 0.0f, and standard deviation equal to 1.0f.
- Parameters
-
state - Pointer to a state to use
- Returns
- Normally distributed
float
value
◆ rocrand_normal() [10/14]
__forceinline__ __device__ __host__ float rocrand_normal | ( | rocrand_state_threefry2x32_20 * | state | ) |
Returns a normally distributed double
value.
Generates and returns a normally distributed float
value using ThreeFry generator in state
, and increments position of the generator by one. Used normal distribution has mean value equal to 0.0f, and standard deviation equal to 1.0f.
- Parameters
-
state - Pointer to a state to use
- Returns
- Normally distributed
float
value
◆ rocrand_normal() [11/14]
__forceinline__ __device__ __host__ float rocrand_normal | ( | rocrand_state_threefry2x64_20 * | state | ) |
Returns a normally distributed double
value.
Generates and returns a normally distributed float
value using ThreeFry generator in state
, and increments position of the generator by one. Used normal distribution has mean value equal to 0.0f, and standard deviation equal to 1.0f.
- Parameters
-
state - Pointer to a state to use
- Returns
- Normally distributed
float
value
◆ rocrand_normal() [12/14]
__forceinline__ __device__ __host__ float rocrand_normal | ( | rocrand_state_threefry4x32_20 * | state | ) |
Returns a normally distributed double
value.
Generates and returns a normally distributed float
value using ThreeFry generator in state
, and increments position of the generator by one. Used normal distribution has mean value equal to 0.0f, and standard deviation equal to 1.0f.
- Parameters
-
state - Pointer to a state to use
- Returns
- Normally distributed
float
value
◆ rocrand_normal() [13/14]
__forceinline__ __device__ __host__ float rocrand_normal | ( | rocrand_state_threefry4x64_20 * | state | ) |
Returns a normally distributed double
value.
Generates and returns a normally distributed float
value using ThreeFry generator in state
, and increments position of the generator by one. Used normal distribution has mean value equal to 0.0f, and standard deviation equal to 1.0f.
- Parameters
-
state - Pointer to a state to use
- Returns
- Normally distributed
float
value
◆ rocrand_normal() [14/14]
__forceinline__ __device__ __host__ float rocrand_normal | ( | rocrand_state_xorwow * | state | ) |
Returns a normally distributed float
value.
Generates and returns a normally distributed float
value using XORWOW generator in state
, and increments position of the generator by one. Used normal distribution has mean value equal to 0.0f, and standard deviation equal to 1.0f. The function uses the Box-Muller transform method to generate two normally distributed values, returns first of them, and saves the second to be returned on the next call.
- Parameters
-
state - Pointer to a state to use
- Returns
- Normally distributed
float
value
◆ rocrand_normal2() [1/10]
__forceinline__ __device__ __host__ float2 rocrand_normal2 | ( | rocrand_state_lfsr113 * | state | ) |
Returns two normally distributed float
values.
Generates and returns two normally distributed float
values using LFSR113 generator in state
, and increments position of the generator by two. Used normal distribution has mean value equal to 0.0f, and standard deviation equal to 1.0f. The function uses the Box-Muller transform method to generate two normally distributed values, and returns both of them.
- Parameters
-
state - Pointer to a state to use
- Returns
- Two normally distributed
float
value asfloat2
◆ rocrand_normal2() [2/10]
__forceinline__ __device__ __host__ float2 rocrand_normal2 | ( | rocrand_state_mrg31k3p * | state | ) |
Returns two normally distributed float
values.
Generates and returns two normally distributed float
values using MRG31k3p generator in state
, and increments position of the generator by two. Used normal distribution has mean value equal to 0.0f, and standard deviation equal to 1.0f. The function uses the Box-Muller transform method to generate two normally distributed values, and returns both of them.
- Parameters
-
state - Pointer to a state to use
- Returns
- Two normally distributed
float
value asfloat2
◆ rocrand_normal2() [3/10]
__forceinline__ __device__ __host__ float2 rocrand_normal2 | ( | rocrand_state_mrg32k3a * | state | ) |
Returns two normally distributed float
values.
Generates and returns two normally distributed float
values using MRG32k3a generator in state
, and increments position of the generator by two. Used normal distribution has mean value equal to 0.0f, and standard deviation equal to 1.0f. The function uses the Box-Muller transform method to generate two normally distributed values, and returns both of them.
- Parameters
-
state - Pointer to a state to use
- Returns
- Two normally distributed
float
value asfloat2
◆ rocrand_normal2() [4/10]
__forceinline__ __device__ float2 rocrand_normal2 | ( | rocrand_state_mtgp32 * | state | ) |
Returns two normally distributed float
values.
Generates and returns two normally distributed float
values using MTGP32 generator in state
, and increments position of the generator by two. Used normal distribution has mean value equal to 0.0f, and standard deviation equal to 1.0f. The function uses the Box-Muller transform method to generate two normally distributed values, and returns both of them.
- Parameters
-
state - Pointer to a state to use
- Returns
- Two normally distributed
float
values asfloat2
◆ rocrand_normal2() [5/10]
__forceinline__ __device__ __host__ float2 rocrand_normal2 | ( | rocrand_state_philox4x32_10 * | state | ) |
Returns two normally distributed float
values.
Generates and returns two normally distributed float
values using Philox generator in state
, and increments position of the generator by two. Used normal distribution has mean value equal to 0.0f, and standard deviation equal to 1.0f. The function uses the Box-Muller transform method to generate two normally distributed values, and returns both of them.
- Parameters
-
state - Pointer to a state to use
- Returns
- Two normally distributed
float
value asfloat2
◆ rocrand_normal2() [6/10]
__forceinline__ __device__ __host__ float2 rocrand_normal2 | ( | rocrand_state_threefry2x32_20 * | state | ) |
Returns two normally distributed float
values.
Generates and returns two normally distributed float
values using ThreeFry generator in state
, and increments position of the generator by two. Used normal distribution has mean value equal to 0.0f, and standard deviation equal to 1.0f. The function uses the Box-Muller transform method to generate two normally distributed values, and returns both of them.
- Parameters
-
state - Pointer to a state to use
- Returns
- Two normally distributed
float
value asfloat2
◆ rocrand_normal2() [7/10]
__forceinline__ __device__ __host__ float2 rocrand_normal2 | ( | rocrand_state_threefry2x64_20 * | state | ) |
Returns two normally distributed float
values.
Generates and returns two normally distributed float
values using ThreeFry generator in state
, and increments position of the generator by one. Used normal distribution has mean value equal to 0.0f, and standard deviation equal to 1.0f. The function uses the Box-Muller transform method to generate two normally distributed values, and returns both of them.
- Parameters
-
state - Pointer to a state to use
- Returns
- Two normally distributed
float
value asfloat2
◆ rocrand_normal2() [8/10]
__forceinline__ __device__ __host__ float2 rocrand_normal2 | ( | rocrand_state_threefry4x32_20 * | state | ) |
Returns two normally distributed float
values.
Generates and returns two normally distributed float
values using ThreeFry generator in state
, and increments position of the generator by two. Used normal distribution has mean value equal to 0.0f, and standard deviation equal to 1.0f. The function uses the Box-Muller transform method to generate two normally distributed values, and returns both of them.
- Parameters
-
state - Pointer to a state to use
- Returns
- Two normally distributed
float
value asfloat2
◆ rocrand_normal2() [9/10]
__forceinline__ __device__ __host__ float2 rocrand_normal2 | ( | rocrand_state_threefry4x64_20 * | state | ) |
Returns two normally distributed float
values.
Generates and returns two normally distributed float
values using ThreeFry generator in state
, and increments position of the generator by two. Used normal distribution has mean value equal to 0.0f, and standard deviation equal to 1.0f. The function uses the Box-Muller transform method to generate two normally distributed values, and returns both of them.
- Parameters
-
state - Pointer to a state to use
- Returns
- Two normally distributed
float
value asfloat2
◆ rocrand_normal2() [10/10]
__forceinline__ __device__ __host__ float2 rocrand_normal2 | ( | rocrand_state_xorwow * | state | ) |
Returns two normally distributed float
values.
Generates and returns two normally distributed float
values using XORWOW generator in state
, and increments position of the generator by two. Used normal distribution has mean value equal to 0.0f, and standard deviation equal to 1.0f. The function uses the Box-Muller transform method to generate two normally distributed values, and returns both of them.
- Parameters
-
state - Pointer to a state to use
- Returns
- Two normally distributed
float
values asfloat2
◆ rocrand_normal4()
__forceinline__ __device__ __host__ float4 rocrand_normal4 | ( | rocrand_state_philox4x32_10 * | state | ) |
Returns four normally distributed float
values.
Generates and returns four normally distributed float
values using Philox generator in state
, and increments position of the generator by four. Used normal distribution has mean value equal to 0.0f, and standard deviation equal to 1.0f. The function uses the Box-Muller transform method to generate four normally distributed values, and returns them.
- Parameters
-
state - Pointer to a state to use
- Returns
- Four normally distributed
float
value asfloat4
◆ rocrand_normal_double() [1/14]
__forceinline__ __device__ __host__ double rocrand_normal_double | ( | rocrand_state_lfsr113 * | state | ) |
Returns a normally distributed double
value.
Generates and returns a normally distributed double
value using LFSR113 generator in state
, and increments position of the generator by one. Used normal distribution has mean value equal to 0.0f, and standard deviation equal to 1.0f.
- Parameters
-
state - Pointer to a state to use
- Returns
- Normally distributed
double
value
◆ rocrand_normal_double() [2/14]
__forceinline__ __device__ __host__ double rocrand_normal_double | ( | rocrand_state_mrg31k3p * | state | ) |
Returns a normally distributed double
value.
Generates and returns a normally distributed double
value using MRG31k3p generator in state
, and increments position of the generator by one. Used normal distribution has mean value equal to 0.0f, and standard deviation equal to 1.0f. The function uses the Box-Muller transform method to generate two normally distributed values, returns first of them, and saves the second to be returned on the next call.
- Parameters
-
state - Pointer to a state to use
- Returns
- Normally distributed
double
value
◆ rocrand_normal_double() [3/14]
__forceinline__ __device__ __host__ double rocrand_normal_double | ( | rocrand_state_mrg32k3a * | state | ) |
Returns a normally distributed double
value.
Generates and returns a normally distributed double
value using MRG32k3a generator in state
, and increments position of the generator by one. Used normal distribution has mean value equal to 0.0f, and standard deviation equal to 1.0f. The function uses the Box-Muller transform method to generate two normally distributed values, returns first of them, and saves the second to be returned on the next call.
- Parameters
-
state - Pointer to a state to use
- Returns
- Normally distributed
double
value
◆ rocrand_normal_double() [4/14]
__forceinline__ __device__ double rocrand_normal_double | ( | rocrand_state_mtgp32 * | state | ) |
Returns a normally distributed double
value.
Generates and returns a normally distributed double
value using MTGP32 generator in state
, and increments position of the generator by one. Used normal distribution has mean value equal to 0.0f, and standard deviation equal to 1.0f.
- Parameters
-
state - Pointer to a state to use
- Returns
- Normally distributed
double
value
◆ rocrand_normal_double() [5/14]
__forceinline__ __device__ __host__ double rocrand_normal_double | ( | rocrand_state_philox4x32_10 * | state | ) |
Returns a normally distributed double
value.
Generates and returns a normally distributed double
value using Philox generator in state
, and increments position of the generator by two. Used normal distribution has mean value equal to 0.0f, and standard deviation equal to 1.0f. The function uses the Box-Muller transform method to generate two normally distributed values, returns first of them, and saves the second to be returned on the next call.
- Parameters
-
state - Pointer to a state to use
- Returns
- Normally distributed
double
value
◆ rocrand_normal_double() [6/14]
__forceinline__ __device__ __host__ double rocrand_normal_double | ( | rocrand_state_scrambled_sobol32 * | state | ) |
Returns a normally distributed double
value.
Generates and returns a normally distributed double
value using SCRAMBLED_SOBOL32 generator in state
, and increments position of the generator by one. Used normal distribution has mean value equal to 0.0f, and standard deviation equal to 1.0f.
- Parameters
-
state - Pointer to a state to use
- Returns
- Normally distributed
double
value
◆ rocrand_normal_double() [7/14]
__forceinline__ __device__ __host__ double rocrand_normal_double | ( | rocrand_state_scrambled_sobol64 * | state | ) |
Returns a normally distributed double
value.
Generates and returns a normally distributed double
value using SCRAMBLED_SOBOL64 generator in state
, and increments position of the generator by one. Used normal distribution has mean value equal to 0.0f, and standard deviation equal to 1.0f.
- Parameters
-
state - Pointer to a state to use
- Returns
- Normally distributed
double
value
◆ rocrand_normal_double() [8/14]
__forceinline__ __device__ __host__ double rocrand_normal_double | ( | rocrand_state_sobol32 * | state | ) |
Returns a normally distributed double
value.
Generates and returns a normally distributed double
value using SOBOL32 generator in state
, and increments position of the generator by one. Used normal distribution has mean value equal to 0.0f, and standard deviation equal to 1.0f.
- Parameters
-
state - Pointer to a state to use
- Returns
- Normally distributed
double
value
◆ rocrand_normal_double() [9/14]
__forceinline__ __device__ __host__ double rocrand_normal_double | ( | rocrand_state_sobol64 * | state | ) |
Returns a normally distributed double
value.
Generates and returns a normally distributed double
value using SOBOL64 generator in state
, and increments position of the generator by one. Used normal distribution has mean value equal to 0.0f, and standard deviation equal to 1.0f.
- Parameters
-
state - Pointer to a state to use
- Returns
- Normally distributed
double
value
◆ rocrand_normal_double() [10/14]
__forceinline__ __device__ __host__ double rocrand_normal_double | ( | rocrand_state_threefry2x32_20 * | state | ) |
Returns a normally distributed double
value.
Generates and returns a normally distributed double
value using ThreeFry generator in state
, and increments position of the generator by one. Used normal distribution has mean value equal to 0.0f, and standard deviation equal to 1.0f.
- Parameters
-
state - Pointer to a state to use
- Returns
- Normally distributed
double
value
◆ rocrand_normal_double() [11/14]
__forceinline__ __device__ __host__ double rocrand_normal_double | ( | rocrand_state_threefry2x64_20 * | state | ) |
Returns a normally distributed double
value.
Generates and returns a normally distributed double
value using ThreeFry generator in state
, and increments position of the generator by one. Used normal distribution has mean value equal to 0.0f, and standard deviation equal to 1.0f.
- Parameters
-
state - Pointer to a state to use
- Returns
- Normally distributed
double
value
◆ rocrand_normal_double() [12/14]
__forceinline__ __device__ __host__ double rocrand_normal_double | ( | rocrand_state_threefry4x32_20 * | state | ) |
Returns a normally distributed double
value.
Generates and returns a normally distributed double
value using ThreeFry generator in state
, and increments position of the generator by one. Used normal distribution has mean value equal to 0.0f, and standard deviation equal to 1.0f.
- Parameters
-
state - Pointer to a state to use
- Returns
- Normally distributed
double
value
◆ rocrand_normal_double() [13/14]
__forceinline__ __device__ __host__ double rocrand_normal_double | ( | rocrand_state_threefry4x64_20 * | state | ) |
Returns a normally distributed double
value.
Generates and returns a normally distributed double
value using ThreeFry generator in state
, and increments position of the generator by one. Used normal distribution has mean value equal to 0.0f, and standard deviation equal to 1.0f.
- Parameters
-
state - Pointer to a state to use
- Returns
- Normally distributed
double
value
◆ rocrand_normal_double() [14/14]
__forceinline__ __device__ __host__ double rocrand_normal_double | ( | rocrand_state_xorwow * | state | ) |
Returns a normally distributed double
value.
Generates and returns a normally distributed double
value using XORWOW generator in state
, and increments position of the generator by two. Used normal distribution has mean value equal to 0.0f, and standard deviation equal to 1.0f. The function uses the Box-Muller transform method to generate two normally distributed values, returns first of them, and saves the second to be returned on the next call.
- Parameters
-
state - Pointer to a state to use
- Returns
- Normally distributed
double
value
◆ rocrand_normal_double2() [1/10]
__forceinline__ __device__ __host__ double2 rocrand_normal_double2 | ( | rocrand_state_lfsr113 * | state | ) |
Returns two normally distributed double
values.
Generates and returns two normally distributed double
values using LFSR113 generator in state
, and increments position of the generator by two. Used normal distribution has mean value equal to 0.0f, and standard deviation equal to 1.0f. The function uses the Box-Muller transform method to generate two normally distributed values, and returns both of them.
- Parameters
-
state - Pointer to a state to use
- Returns
- Two normally distributed
double
value asdouble2
◆ rocrand_normal_double2() [2/10]
__forceinline__ __device__ __host__ double2 rocrand_normal_double2 | ( | rocrand_state_mrg31k3p * | state | ) |
Returns two normally distributed double
values.
Generates and returns two normally distributed double
values using MRG31k3p generator in state
, and increments position of the generator by two. Used normal distribution has mean value equal to 0.0f, and standard deviation equal to 1.0f. The function uses the Box-Muller transform method to generate two normally distributed values, and returns both of them.
- Parameters
-
state - Pointer to a state to use
- Returns
- Two normally distributed
double
value asdouble2
◆ rocrand_normal_double2() [3/10]
__forceinline__ __device__ __host__ double2 rocrand_normal_double2 | ( | rocrand_state_mrg32k3a * | state | ) |
Returns two normally distributed double
values.
Generates and returns two normally distributed double
values using MRG32k3a generator in state
, and increments position of the generator by two. Used normal distribution has mean value equal to 0.0f, and standard deviation equal to 1.0f. The function uses the Box-Muller transform method to generate two normally distributed values, and returns both of them.
- Parameters
-
state - Pointer to a state to use
- Returns
- Two normally distributed
double
value asdouble2
◆ rocrand_normal_double2() [4/10]
__forceinline__ __device__ double2 rocrand_normal_double2 | ( | rocrand_state_mtgp32 * | state | ) |
Returns two normally distributed double
values.
Generates and returns two normally distributed double
values using MTGP32 generator in state
, and increments position of the generator by four. Used normal distribution has mean value equal to 0.0f, and standard deviation equal to 1.0f. The function uses the Box-Muller transform method to generate two normally distributed values, and returns both of them.
- Parameters
-
state - Pointer to a state to use
- Returns
- Two normally distributed
double
value asdouble2
◆ rocrand_normal_double2() [5/10]
__forceinline__ __device__ __host__ double2 rocrand_normal_double2 | ( | rocrand_state_philox4x32_10 * | state | ) |
Returns two normally distributed double
values.
Generates and returns two normally distributed double
values using Philox generator in state
, and increments position of the generator by four. Used normal distribution has mean value equal to 0.0f, and standard deviation equal to 1.0f. The function uses the Box-Muller transform method to generate two normally distributed values, and returns both of them.
- Parameters
-
state - Pointer to a state to use
- Returns
- Two normally distributed
double
values asdouble2
◆ rocrand_normal_double2() [6/10]
__forceinline__ __device__ __host__ double2 rocrand_normal_double2 | ( | rocrand_state_threefry2x32_20 * | state | ) |
Returns two normally distributed double
values.
Generates and returns two normally distributed double
values using ThreeFry generator in state
, and increments position of the generator by four. Used normal distribution has mean value equal to 0.0f, and standard deviation equal to 1.0f. The function uses the Box-Muller transform method to generate two normally distributed values, and returns both of them.
- Parameters
-
state - Pointer to a state to use
- Returns
- Two normally distributed
double
value asdouble2
◆ rocrand_normal_double2() [7/10]
__forceinline__ __device__ __host__ double2 rocrand_normal_double2 | ( | rocrand_state_threefry2x64_20 * | state | ) |
Returns two normally distributed double
values.
Generates and returns two normally distributed double
values using ThreeFry generator in state
, and increments position of the generator by two. Used normal distribution has mean value equal to 0.0f, and standard deviation equal to 1.0f. The function uses the Box-Muller transform method to generate two normally distributed values, and returns both of them.
- Parameters
-
state - Pointer to a state to use
- Returns
- Two normally distributed
double
value asdouble2
◆ rocrand_normal_double2() [8/10]
__forceinline__ __device__ __host__ double2 rocrand_normal_double2 | ( | rocrand_state_threefry4x32_20 * | state | ) |
Returns two normally distributed double
values.
Generates and returns two normally distributed double
values using ThreeFry generator in state
, and increments position of the generator by four. Used normal distribution has mean value equal to 0.0f, and standard deviation equal to 1.0f. The function uses the Box-Muller transform method to generate two normally distributed values, and returns both of them.
- Parameters
-
state - Pointer to a state to use
- Returns
- Two normally distributed
double
value asdouble2
◆ rocrand_normal_double2() [9/10]
__forceinline__ __device__ __host__ double2 rocrand_normal_double2 | ( | rocrand_state_threefry4x64_20 * | state | ) |
Returns two normally distributed double
values.
Generates and returns two normally distributed double
values using ThreeFry generator in state
, and increments position of the generator by two. Used normal distribution has mean value equal to 0.0f, and standard deviation equal to 1.0f. The function uses the Box-Muller transform method to generate two normally distributed values, and returns both of them.
- Parameters
-
state - Pointer to a state to use
- Returns
- Two normally distributed
double
value asdouble2
◆ rocrand_normal_double2() [10/10]
__forceinline__ __device__ __host__ double2 rocrand_normal_double2 | ( | rocrand_state_xorwow * | state | ) |
Returns two normally distributed double
values.
Generates and returns two normally distributed double
values using XORWOW generator in state
, and increments position of the generator by four. Used normal distribution has mean value equal to 0.0f, and standard deviation equal to 1.0f. The function uses the Box-Muller transform method to generate two normally distributed values, and returns both of them.
- Parameters
-
state - Pointer to a state to use
- Returns
- Two normally distributed
double
value asdouble2
◆ rocrand_normal_double4()
__forceinline__ __device__ __host__ double4 rocrand_normal_double4 | ( | rocrand_state_philox4x32_10 * | state | ) |
Returns four normally distributed double
values.
Generates and returns four normally distributed double
values using Philox generator in state
, and increments position of the generator by eight. Used normal distribution has mean value equal to 0.0f, and standard deviation equal to 1.0f. The function uses the Box-Muller transform method to generate four normally distributed values, and returns them.
- Parameters
-
state - Pointer to a state to use
- Returns
- Four normally distributed
double
values asdouble4
◆ rocrand_poisson() [1/14]
__forceinline__ __device__ __host__ unsigned int rocrand_poisson | ( | rocrand_state_lfsr113 * | state, |
double | lambda | ||
) |
Returns a Poisson-distributed unsigned int
using LFSR113 generator.
Generates and returns Poisson-distributed distributed random unsigned int
values using LFSR113 generator in state
. State is incremented by one position.
- Parameters
-
state - Pointer to a state to use lambda - Lambda parameter of the Poisson distribution
- Returns
- Poisson-distributed
unsigned int
◆ rocrand_poisson() [2/14]
__forceinline__ __device__ __host__ unsigned int rocrand_poisson | ( | rocrand_state_mrg31k3p * | state, |
double | lambda | ||
) |
Returns a Poisson-distributed unsigned int
using MRG31k3p generator.
Generates and returns Poisson-distributed distributed random unsigned int
values using MRG31k3p generator in state
. State is incremented by a variable amount.
- Parameters
-
state - Pointer to a state to use lambda - Lambda parameter of the Poisson distribution
- Returns
- Poisson-distributed
unsigned int
◆ rocrand_poisson() [3/14]
__forceinline__ __device__ __host__ unsigned int rocrand_poisson | ( | rocrand_state_mrg32k3a * | state, |
double | lambda | ||
) |
Returns a Poisson-distributed unsigned int
using MRG32k3a generator.
Generates and returns Poisson-distributed distributed random unsigned int
values using MRG32k3a generator in state
. State is incremented by a variable amount.
- Parameters
-
state - Pointer to a state to use lambda - Lambda parameter of the Poisson distribution
- Returns
- Poisson-distributed
unsigned int
◆ rocrand_poisson() [4/14]
__forceinline__ __device__ __host__ unsigned int rocrand_poisson | ( | rocrand_state_mtgp32 * | state, |
double | lambda | ||
) |
Returns a Poisson-distributed unsigned int
using MTGP32 generator.
Generates and returns Poisson-distributed distributed random unsigned int
values using MTGP32 generator in state
. State is incremented by one position.
- Parameters
-
state - Pointer to a state to use lambda - Lambda parameter of the Poisson distribution
- Returns
- Poisson-distributed
unsigned int
◆ rocrand_poisson() [5/14]
__forceinline__ __device__ __host__ unsigned int rocrand_poisson | ( | rocrand_state_philox4x32_10 * | state, |
double | lambda | ||
) |
Returns a Poisson-distributed unsigned int
using Philox generator.
Generates and returns Poisson-distributed distributed random unsigned int
values using Philox generator in state
. State is incremented by a variable amount.
- Parameters
-
state - Pointer to a state to use lambda - Lambda parameter of the Poisson distribution
- Returns
- Poisson-distributed
unsigned int
◆ rocrand_poisson() [6/14]
__forceinline__ __device__ __host__ unsigned int rocrand_poisson | ( | rocrand_state_scrambled_sobol32 * | state, |
double | lambda | ||
) |
Returns a Poisson-distributed unsigned int
using SCRAMBLED_SOBOL32 generator.
Generates and returns Poisson-distributed distributed random unsigned int
values using SCRAMBLED_SOBOL32 generator in state
. State is incremented by one position.
- Parameters
-
state - Pointer to a state to use lambda - Lambda parameter of the Poisson distribution
- Returns
- Poisson-distributed
unsigned int
◆ rocrand_poisson() [7/14]
__forceinline__ __device__ __host__ unsigned long long int rocrand_poisson | ( | rocrand_state_scrambled_sobol64 * | state, |
double | lambda | ||
) |
Returns a Poisson-distributed unsigned long long int
using SCRAMBLED_SOBOL64 generator.
Generates and returns Poisson-distributed distributed random unsigned long long int
values using SCRAMBLED_SOBOL64 generator in state
. State is incremented by one position.
- Parameters
-
state - Pointer to a state to use lambda - Lambda parameter of the Poisson distribution
- Returns
- Poisson-distributed
unsigned long long int
◆ rocrand_poisson() [8/14]
__forceinline__ __device__ __host__ unsigned int rocrand_poisson | ( | rocrand_state_sobol32 * | state, |
double | lambda | ||
) |
Returns a Poisson-distributed unsigned int
using SOBOL32 generator.
Generates and returns Poisson-distributed distributed random unsigned int
values using SOBOL32 generator in state
. State is incremented by one position.
- Parameters
-
state - Pointer to a state to use lambda - Lambda parameter of the Poisson distribution
- Returns
- Poisson-distributed
unsigned int
◆ rocrand_poisson() [9/14]
__forceinline__ __device__ __host__ unsigned long long int rocrand_poisson | ( | rocrand_state_sobol64 * | state, |
double | lambda | ||
) |
Returns a Poisson-distributed unsigned long long int
using SOBOL64 generator.
Generates and returns Poisson-distributed distributed random unsigned long long int
values using SOBOL64 generator in state
. State is incremented by one position.
- Parameters
-
state - Pointer to a state to use lambda - Lambda parameter of the Poisson distribution
- Returns
- Poisson-distributed
unsigned long long int
◆ rocrand_poisson() [10/14]
__forceinline__ __device__ __host__ unsigned int rocrand_poisson | ( | rocrand_state_threefry2x32_20 * | state, |
double | lambda | ||
) |
Returns a Poisson-distributed unsigned int
using ThreeFry generator.
Generates and returns Poisson-distributed distributed random unsigned int
values using ThreeFry generator in state
. State is incremented by one position.
- Parameters
-
state - Pointer to a state to use lambda - Lambda parameter of the Poisson distribution
- Returns
- Poisson-distributed
unsigned int
◆ rocrand_poisson() [11/14]
__forceinline__ __device__ __host__ unsigned int rocrand_poisson | ( | rocrand_state_threefry2x64_20 * | state, |
double | lambda | ||
) |
Returns a Poisson-distributed unsigned int
using ThreeFry generator.
Generates and returns Poisson-distributed distributed random unsigned int
values using ThreeFry generator in state
. State is incremented by one position.
- Parameters
-
state - Pointer to a state to use lambda - Lambda parameter of the Poisson distribution
- Returns
- Poisson-distributed
unsigned int
◆ rocrand_poisson() [12/14]
__forceinline__ __device__ __host__ unsigned int rocrand_poisson | ( | rocrand_state_threefry4x32_20 * | state, |
double | lambda | ||
) |
Returns a Poisson-distributed unsigned int
using ThreeFry generator.
Generates and returns Poisson-distributed distributed random unsigned int
values using ThreeFry generator in state
. State is incremented by one position.
- Parameters
-
state - Pointer to a state to use lambda - Lambda parameter of the Poisson distribution
- Returns
- Poisson-distributed
unsigned int
◆ rocrand_poisson() [13/14]
__forceinline__ __device__ __host__ unsigned int rocrand_poisson | ( | rocrand_state_threefry4x64_20 * | state, |
double | lambda | ||
) |
Returns a Poisson-distributed unsigned int
using ThreeFry generator.
Generates and returns Poisson-distributed distributed random unsigned int
values using ThreeFry generator in state
. State is incremented by one position.
- Parameters
-
state - Pointer to a state to use lambda - Lambda parameter of the Poisson distribution
- Returns
- Poisson-distributed
unsigned int
◆ rocrand_poisson() [14/14]
__forceinline__ __device__ __host__ unsigned int rocrand_poisson | ( | rocrand_state_xorwow * | state, |
double | lambda | ||
) |
Returns a Poisson-distributed unsigned int
using XORWOW generator.
Generates and returns Poisson-distributed distributed random unsigned int
values using XORWOW generator in state
. State is incremented by a variable amount.
- Parameters
-
state - Pointer to a state to use lambda - Lambda parameter of the Poisson distribution
- Returns
- Poisson-distributed
unsigned int
◆ rocrand_poisson4()
__forceinline__ __device__ __host__ uint4 rocrand_poisson4 | ( | rocrand_state_philox4x32_10 * | state, |
double | lambda | ||
) |
Returns four Poisson-distributed unsigned int
values using Philox generator.
Generates and returns Poisson-distributed distributed random unsigned int
values using Philox generator in state
. State is incremented by a variable amount.
- Parameters
-
state - Pointer to a state to use lambda - Lambda parameter of the Poisson distribution
- Returns
- Four Poisson-distributed
unsigned int
values asuint4
◆ rocrand_uniform() [1/14]
__forceinline__ __device__ __host__ float rocrand_uniform | ( | rocrand_state_lfsr113 * | state | ) |
Returns a uniformly distributed random float
value from (0; 1] range.
Generates and returns a uniformly distributed float
value from (0; 1] range (excluding 0.0f
, including 1.0f
) using LFSR113 generator in state
, and increments position of the generator by one.
- Parameters
-
state - Pointer to a state to use
- Returns
- Uniformly distributed
float
value from (0; 1] range.
◆ rocrand_uniform() [2/14]
__forceinline__ __device__ __host__ float rocrand_uniform | ( | rocrand_state_mrg31k3p * | state | ) |
Returns a uniformly distributed random float
value from (0; 1] range.
Generates and returns a uniformly distributed float
value from (0; 1] range (excluding 0.0f
, including 1.0f
) using MRG31K3P generator in state
, and increments position of the generator by one.
- Parameters
-
state - Pointer to a state to use
- Returns
- Uniformly distributed
float
value from (0; 1] range.
◆ rocrand_uniform() [3/14]
__forceinline__ __device__ __host__ float rocrand_uniform | ( | rocrand_state_mrg32k3a * | state | ) |
Returns a uniformly distributed random float
value from (0; 1] range.
Generates and returns a uniformly distributed float
value from (0; 1] range (excluding 0.0f
, including 1.0f
) using MRG32K3A generator in state
, and increments position of the generator by one.
- Parameters
-
state - Pointer to a state to use
- Returns
- Uniformly distributed
float
value from (0; 1] range.
◆ rocrand_uniform() [4/14]
__forceinline__ __device__ float rocrand_uniform | ( | rocrand_state_mtgp32 * | state | ) |
Returns a uniformly distributed random float
value from (0; 1] range.
Generates and returns a uniformly distributed float
value from (0; 1] range (excluding 0.0f
, including 1.0f
) using MTGP32 generator in state
, and increments position of the generator by one.
- Parameters
-
state - Pointer to a state to use
- Returns
- Uniformly distributed
float
value from (0; 1] range.
◆ rocrand_uniform() [5/14]
__forceinline__ __device__ __host__ float rocrand_uniform | ( | rocrand_state_philox4x32_10 * | state | ) |
Returns a uniformly distributed random float
value from (0; 1] range.
Generates and returns a uniformly distributed float
value from (0; 1] range (excluding 0.0f
, including 1.0f
) using Philox generator in state
, and increments position of the generator by one.
- Parameters
-
state - Pointer to a state to use
- Returns
- Uniformly distributed
float
value from (0; 1] range.
◆ rocrand_uniform() [6/14]
__forceinline__ __device__ __host__ float rocrand_uniform | ( | rocrand_state_scrambled_sobol32 * | state | ) |
Returns a uniformly distributed random float
value from (0; 1] range.
Generates and returns a uniformly distributed float
value from (0; 1] range (excluding 0.0f
, including 1.0f
) using SCRAMBLED_SOBOL32 generator in state
, and increments position of the generator by one.
- Parameters
-
state - Pointer to a state to use
- Returns
- Uniformly distributed
float
value from (0; 1] range.
◆ rocrand_uniform() [7/14]
__forceinline__ __device__ __host__ float rocrand_uniform | ( | rocrand_state_scrambled_sobol64 * | state | ) |
Returns a uniformly distributed random float
value from (0; 1] range.
Generates and returns a uniformly distributed float
value from (0; 1] range (excluding 0.0
, including 1.0
) using SCRAMBLED_SOBOL64 generator in state
, and increments position of the generator by one.
- Parameters
-
state - Pointer to a state to use
- Returns
- Uniformly distributed
float
value from (0; 1] range.
◆ rocrand_uniform() [8/14]
__forceinline__ __device__ __host__ float rocrand_uniform | ( | rocrand_state_sobol32 * | state | ) |
Returns a uniformly distributed random float
value from (0; 1] range.
Generates and returns a uniformly distributed float
value from (0; 1] range (excluding 0.0f
, including 1.0f
) using SOBOL32 generator in state
, and increments position of the generator by one.
- Parameters
-
state - Pointer to a state to use
- Returns
- Uniformly distributed
float
value from (0; 1] range.
◆ rocrand_uniform() [9/14]
__forceinline__ __device__ __host__ float rocrand_uniform | ( | rocrand_state_sobol64 * | state | ) |
Returns a uniformly distributed random float
value from (0; 1] range.
Generates and returns a uniformly distributed float
value from (0; 1] range (excluding 0.0
, including 1.0
) using SOBOL64 generator in state
, and increments position of the generator by one.
- Parameters
-
state - Pointer to a state to use
- Returns
- Uniformly distributed
float
value from (0; 1] range.
◆ rocrand_uniform() [10/14]
__forceinline__ __device__ __host__ float rocrand_uniform | ( | rocrand_state_threefry2x32_20 * | state | ) |
Returns a uniformly distributed random float
value from (0; 1] range.
Generates and returns a uniformly distributed float
value from (0; 1] range (excluding 0.0
, including 1.0
) using ThreeFry generator in state
, and increments position of the generator by one.
- Parameters
-
state - Pointer to a state to use
- Returns
- Uniformly distributed
float
value from (0; 1] range.
◆ rocrand_uniform() [11/14]
__forceinline__ __device__ __host__ float rocrand_uniform | ( | rocrand_state_threefry2x64_20 * | state | ) |
Returns a uniformly distributed random float
value from (0; 1] range.
Generates and returns a uniformly distributed float
value from (0; 1] range (excluding 0.0
, including 1.0
) using ThreeFry generator in state
, and increments position of the generator by one.
- Parameters
-
state - Pointer to a state to use
- Returns
- Uniformly distributed
float
value from (0; 1] range.
◆ rocrand_uniform() [12/14]
__forceinline__ __device__ __host__ float rocrand_uniform | ( | rocrand_state_threefry4x32_20 * | state | ) |
Returns a uniformly distributed random float
value from (0; 1] range.
Generates and returns a uniformly distributed float
value from (0; 1] range (excluding 0.0
, including 1.0
) using ThreeFry generator in state
, and increments position of the generator by one.
- Parameters
-
state - Pointer to a state to use
- Returns
- Uniformly distributed
float
value from (0; 1] range.
◆ rocrand_uniform() [13/14]
__forceinline__ __device__ __host__ float rocrand_uniform | ( | rocrand_state_threefry4x64_20 * | state | ) |
Returns a uniformly distributed random float
value from (0; 1] range.
Generates and returns a uniformly distributed float
value from (0; 1] range (excluding 0.0
, including 1.0
) using ThreeFry generator in state
, and increments position of the generator by one.
- Parameters
-
state - Pointer to a state to use
- Returns
- Uniformly distributed
float
value from (0; 1] range.
◆ rocrand_uniform() [14/14]
__forceinline__ __device__ __host__ float rocrand_uniform | ( | rocrand_state_xorwow * | state | ) |
Returns a uniformly distributed random float
value from (0; 1] range.
Generates and returns a uniformly distributed float
value from (0; 1] range (excluding 0.0f
, including 1.0f
) using XORWOW generator in state
, and increments position of the generator by one.
- Parameters
-
state - Pointer to a state to use
- Returns
- Uniformly distributed
float
value from (0; 1] range.
◆ rocrand_uniform2()
__forceinline__ __device__ __host__ float2 rocrand_uniform2 | ( | rocrand_state_philox4x32_10 * | state | ) |
Returns two uniformly distributed random float
values from (0; 1] range.
Generates and returns two uniformly distributed float
values from (0; 1] range (excluding 0.0f
, including 1.0f
) using Philox generator in state
, and increments position of the generator by two.
- Parameters
-
state - Pointer to a state to use
- Returns
- Two uniformly distributed
float
values from (0; 1] range asfloat2
.
◆ rocrand_uniform4()
__forceinline__ __device__ __host__ float4 rocrand_uniform4 | ( | rocrand_state_philox4x32_10 * | state | ) |
Returns four uniformly distributed random float
values from (0; 1] range.
Generates and returns four uniformly distributed float
values from (0; 1] range (excluding 0.0f
, including 1.0f
) using Philox generator in state
, and increments position of the generator by four.
- Parameters
-
state - Pointer to a state to use
- Returns
- Four uniformly distributed
float
values from (0; 1] range asfloat4
.
◆ rocrand_uniform_double() [1/14]
__forceinline__ __device__ __host__ double rocrand_uniform_double | ( | rocrand_state_lfsr113 * | state | ) |
Returns a uniformly distributed random double
value from (0; 1] range.
Generates and returns a uniformly distributed double
value from (0; 1] range (excluding 0.0
, including 1.0
) using LFSR113 generator in state
, and increments position of the generator by one.
- Parameters
-
state - Pointer to a state to use
Note: In this implementation returned double
value is generated from only 32 random bits (one unsigned int
value).
- Returns
- Uniformly distributed
double
value from (0; 1] range.
◆ rocrand_uniform_double() [2/14]
__forceinline__ __device__ __host__ double rocrand_uniform_double | ( | rocrand_state_mrg31k3p * | state | ) |
Returns a uniformly distributed random double
value from (0; 1] range.
Generates and returns a uniformly distributed double
value from (0; 1] range (excluding 0.0
, including 1.0
) using MRG31K3P generator in state
, and increments position of the generator by one.
- Parameters
-
state - Pointer to a state to use
Note: In this implementation returned double
value is generated from only 32 random bits (one unsigned int
value).
- Returns
- Uniformly distributed
double
value from (0; 1] range.
◆ rocrand_uniform_double() [3/14]
__forceinline__ __device__ __host__ double rocrand_uniform_double | ( | rocrand_state_mrg32k3a * | state | ) |
Returns a uniformly distributed random double
value from (0; 1] range.
Generates and returns a uniformly distributed double
value from (0; 1] range (excluding 0.0
, including 1.0
) using MRG32K3A generator in state
, and increments position of the generator by one.
- Parameters
-
state - Pointer to a state to use
Note: In this implementation returned double
value is generated from only 32 random bits (one unsigned int
value).
- Returns
- Uniformly distributed
double
value from (0; 1] range.
◆ rocrand_uniform_double() [4/14]
__forceinline__ __device__ double rocrand_uniform_double | ( | rocrand_state_mtgp32 * | state | ) |
Returns a uniformly distributed random double
value from (0; 1] range.
Generates and returns a uniformly distributed double
value from (0; 1] range (excluding 0.0
, including 1.0
) using MTGP32 generator in state
, and increments position of the generator by one.
- Parameters
-
state - Pointer to a state to use
Note: In this implementation returned double
value is generated from only 32 random bits (one unsigned int
value).
- Returns
- Uniformly distributed
double
value from (0; 1] range.
◆ rocrand_uniform_double() [5/14]
__forceinline__ __device__ __host__ double rocrand_uniform_double | ( | rocrand_state_philox4x32_10 * | state | ) |
Returns a uniformly distributed random double
value from (0; 1] range.
Generates and returns a uniformly distributed double
value from (0; 1] range (excluding 0.0
, including 1.0
) using Philox generator in state
, and increments position of the generator by two.
- Parameters
-
state - Pointer to a state to use
- Returns
- Uniformly distributed
double
value from (0; 1] range.
◆ rocrand_uniform_double() [6/14]
__forceinline__ __device__ __host__ double rocrand_uniform_double | ( | rocrand_state_scrambled_sobol32 * | state | ) |
Returns a uniformly distributed random double
value from (0; 1] range.
Generates and returns a uniformly distributed double
value from (0; 1] range (excluding 0.0
, including 1.0
) using SCRAMBLED_SOBOL32 generator in state
, and increments position of the generator by one.
- Parameters
-
state - Pointer to a state to use
Note: In this implementation returned double
value is generated from only 32 random bits (one unsigned int
value).
- Returns
- Uniformly distributed
double
value from (0; 1] range.
◆ rocrand_uniform_double() [7/14]
__forceinline__ __device__ __host__ double rocrand_uniform_double | ( | rocrand_state_scrambled_sobol64 * | state | ) |
Returns a uniformly distributed random double
value from (0; 1] range.
Generates and returns a uniformly distributed double
value from (0; 1] range (excluding 0.0
, including 1.0
) using SCRAMBLED_SOBOL64 generator in state
, and increments position of the generator by one.
- Parameters
-
state - Pointer to a state to use
- Returns
- Uniformly distributed
double
value from (0; 1] range.
◆ rocrand_uniform_double() [8/14]
__forceinline__ __device__ __host__ double rocrand_uniform_double | ( | rocrand_state_sobol32 * | state | ) |
Returns a uniformly distributed random double
value from (0; 1] range.
Generates and returns a uniformly distributed double
value from (0; 1] range (excluding 0.0
, including 1.0
) using SOBOL32 generator in state
, and increments position of the generator by one.
- Parameters
-
state - Pointer to a state to use
Note: In this implementation returned double
value is generated from only 32 random bits (one unsigned int
value).
- Returns
- Uniformly distributed
double
value from (0; 1] range.
◆ rocrand_uniform_double() [9/14]
__forceinline__ __device__ __host__ double rocrand_uniform_double | ( | rocrand_state_sobol64 * | state | ) |
Returns a uniformly distributed random double
value from (0; 1] range.
Generates and returns a uniformly distributed double
value from (0; 1] range (excluding 0.0
, including 1.0
) using SOBOL64 generator in state
, and increments position of the generator by one.
- Parameters
-
state - Pointer to a state to use
- Returns
- Uniformly distributed
double
value from (0; 1] range.
◆ rocrand_uniform_double() [10/14]
__forceinline__ __device__ __host__ double rocrand_uniform_double | ( | rocrand_state_threefry2x32_20 * | state | ) |
Returns a uniformly distributed random double
value from (0; 1] range.
Generates and returns a uniformly distributed double
value from (0; 1] range (excluding 0.0
, including 1.0
) using ThreeFry generator in state
, and increments position of the generator by one.
- Parameters
-
state - Pointer to a state to use
Note: In this implementation returned double
value is generated from only 32 random bits (one unsigned int
value).
- Returns
- Uniformly distributed
double
value from (0; 1] range.
◆ rocrand_uniform_double() [11/14]
__forceinline__ __device__ __host__ double rocrand_uniform_double | ( | rocrand_state_threefry2x64_20 * | state | ) |
Returns a uniformly distributed random double
value from (0; 1] range.
Generates and returns a uniformly distributed double
value from (0; 1] range (excluding 0.0
, including 1.0
) using ThreeFry generator in state
, and increments position of the generator by one.
- Parameters
-
state - Pointer to a state to use
Note: In this implementation returned double
value is generated from only 32 random bits (one unsigned int
value).
- Returns
- Uniformly distributed
double
value from (0; 1] range.
◆ rocrand_uniform_double() [12/14]
__forceinline__ __device__ __host__ double rocrand_uniform_double | ( | rocrand_state_threefry4x32_20 * | state | ) |
Returns a uniformly distributed random double
value from (0; 1] range.
Generates and returns a uniformly distributed double
value from (0; 1] range (excluding 0.0
, including 1.0
) using ThreeFry generator in state
, and increments position of the generator by one.
- Parameters
-
state - Pointer to a state to use
Note: In this implementation returned double
value is generated from only 32 random bits (one unsigned int
value).
- Returns
- Uniformly distributed
double
value from (0; 1] range.
◆ rocrand_uniform_double() [13/14]
__forceinline__ __device__ __host__ double rocrand_uniform_double | ( | rocrand_state_threefry4x64_20 * | state | ) |
Returns a uniformly distributed random double
value from (0; 1] range.
Generates and returns a uniformly distributed double
value from (0; 1] range (excluding 0.0
, including 1.0
) using ThreeFry generator in state
, and increments position of the generator by one.
- Parameters
-
state - Pointer to a state to use
Note: In this implementation returned double
value is generated from only 32 random bits (one unsigned int
value).
- Returns
- Uniformly distributed
double
value from (0; 1] range.
◆ rocrand_uniform_double() [14/14]
__forceinline__ __device__ __host__ double rocrand_uniform_double | ( | rocrand_state_xorwow * | state | ) |
Returns a uniformly distributed random double
value from (0; 1] range.
Generates and returns a uniformly distributed double
value from (0; 1] range (excluding 0.0
, including 1.0
) using MRG32K3A generator in state
, and increments position of the generator by two.
- Parameters
-
state - Pointer to a state to use
- Returns
- Uniformly distributed
double
value from (0; 1] range.
◆ rocrand_uniform_double2()
__forceinline__ __device__ __host__ double2 rocrand_uniform_double2 | ( | rocrand_state_philox4x32_10 * | state | ) |
Returns two uniformly distributed random double
values from (0; 1] range.
Generates and returns two uniformly distributed double
values from (0; 1] range (excluding 0.0
, including 1.0
) using Philox generator in state
, and increments position of the generator by four.
- Parameters
-
state - Pointer to a state to use
- Returns
- Two uniformly distributed
double
values from (0; 1] range asdouble2
.
◆ rocrand_uniform_double4()
__forceinline__ __device__ __host__ double4 rocrand_uniform_double4 | ( | rocrand_state_philox4x32_10 * | state | ) |
Returns four uniformly distributed random double
values from (0; 1] range.
Generates and returns four uniformly distributed double
values from (0; 1] range (excluding 0.0
, including 1.0
) using Philox generator in state
, and increments position of the generator by eight.
- Parameters
-
state - Pointer to a state to use
- Returns
- Four uniformly distributed
double
values from (0; 1] range asdouble4
.
◆ skipahead() [1/9]
__forceinline__ __device__ __host__ void skipahead | ( | unsigned long long int | offset, |
rocrand_state_sobol64 * | state | ||
) |
Updates sobol64 state to skip ahead by offset
elements.
Updates the sobol64 state in state
to skip ahead by offset
elements.
- Parameters
-
offset - Number of elements to skip state - Pointer to state to update
◆ skipahead() [2/9]
__forceinline__ __device__ __host__ void skipahead | ( | unsigned long long | offset, |
rocrand_state_lfsr113 * | state | ||
) |
Updates LFSR113 state to skip ahead by offset
elements.
Updates the LFSR113 state in state
to skip ahead by offset
elements.
- Parameters
-
offset - Number of elements to skip state - Pointer to state to update
◆ skipahead() [3/9]
__forceinline__ __device__ __host__ void skipahead | ( | unsigned long long | offset, |
rocrand_state_mrg31k3p * | state | ||
) |
Updates MRG31K3P state to skip ahead by offset
elements.
Updates the MRG31K3P state in state
to skip ahead by offset
elements.
- Parameters
-
offset - Number of elements to skip state - Pointer to state to update
◆ skipahead() [4/9]
__forceinline__ __device__ __host__ void skipahead | ( | unsigned long long | offset, |
rocrand_state_mrg32k3a * | state | ||
) |
Updates MRG32K3A state to skip ahead by offset
elements.
Updates the MRG32K3A state in state
to skip ahead by offset
elements.
- Parameters
-
offset - Number of elements to skip state - Pointer to state to update
◆ skipahead() [5/9]
__forceinline__ __device__ __host__ void skipahead | ( | unsigned long long | offset, |
rocrand_state_philox4x32_10 * | state | ||
) |
Updates Philox state to skip ahead by offset
elements.
Updates the Philox generator state in state
to skip ahead by offset
elements.
- Parameters
-
offset - Number of elements to skip state - Pointer to state to update
◆ skipahead() [6/9]
__forceinline__ __device__ __host__ void skipahead | ( | unsigned long long | offset, |
rocrand_state_scrambled_sobol32 * | state | ||
) |
Updates SCRAMBLED_SOBOL32 state to skip ahead by offset
elements.
Updates the SCRAMBLED_SOBOL32 state in state
to skip ahead by offset
elements.
- Parameters
-
offset - Number of elements to skip state - Pointer to state to update
◆ skipahead() [7/9]
__forceinline__ __device__ __host__ void skipahead | ( | unsigned long long | offset, |
rocrand_state_scrambled_sobol64 * | state | ||
) |
Updates scrambled_sobol64 state to skip ahead by offset
elements.
Updates the scrambled_sobol64 state in state
to skip ahead by offset
elements.
- Parameters
-
offset - Number of elements to skip state - Pointer to state to update
◆ skipahead() [8/9]
__forceinline__ __device__ __host__ void skipahead | ( | unsigned long long | offset, |
rocrand_state_sobol32 * | state | ||
) |
Updates SOBOL32 state to skip ahead by offset
elements.
Updates the SOBOL32 state in state
to skip ahead by offset
elements.
- Parameters
-
offset - Number of elements to skip state - Pointer to state to update
◆ skipahead() [9/9]
__forceinline__ __device__ __host__ void skipahead | ( | unsigned long long | offset, |
rocrand_state_xorwow * | state | ||
) |
Updates XORWOW state to skip ahead by offset
elements.
Updates the XORWOW state in state
to skip ahead by offset
elements.
- Parameters
-
offset - Number of elements to skip state - Pointer to state to update
◆ skipahead_sequence() [1/5]
__forceinline__ __device__ __host__ void skipahead_sequence | ( | unsigned int | sequence, |
rocrand_state_lfsr113 * | state | ||
) |
Updates LFSR113 state to skip ahead by sequence
sequences.
Updates the LFSR113 state
to skip ahead by sequence
sequences. For LFSR113 each sequence is 2^55 numbers long (equal to the size of a subsequence).
- Parameters
-
sequence - Number of sequences to skip state - Pointer to state to update
◆ skipahead_sequence() [2/5]
__forceinline__ __device__ __host__ void skipahead_sequence | ( | unsigned long long | sequence, |
rocrand_state_mrg31k3p * | state | ||
) |
Updates MRG31K3P state to skip ahead by sequence
sequences.
Updates the MRG31K3P state in state
to skip ahead by sequence
sequences. Each sequence is 2^134 numbers long.
- Parameters
-
sequence - Number of sequences to skip state - Pointer to state to update
◆ skipahead_sequence() [3/5]
__forceinline__ __device__ __host__ void skipahead_sequence | ( | unsigned long long | sequence, |
rocrand_state_mrg32k3a * | state | ||
) |
Updates MRG32K3A state to skip ahead by sequence
sequences.
Updates the MRG32K3A state in state
to skip ahead by sequence
sequences. Each sequence is 2^127 numbers long.
- Parameters
-
sequence - Number of sequences to skip state - Pointer to state to update
◆ skipahead_sequence() [4/5]
__forceinline__ __device__ __host__ void skipahead_sequence | ( | unsigned long long | sequence, |
rocrand_state_philox4x32_10 * | state | ||
) |
Updates Philox state to skip ahead by sequence
sequences.
Updates the Philox generator state in state
skipping sequence
sequences ahead. For Philox each sequence is 4 * 2^64 numbers long (equal to the size of a subsequence).
- Parameters
-
sequence - Number of sequences to skip state - Pointer to state to update
◆ skipahead_sequence() [5/5]
__forceinline__ __device__ __host__ void skipahead_sequence | ( | unsigned long long | sequence, |
rocrand_state_xorwow * | state | ||
) |
Updates XORWOW state to skip ahead by sequence
sequences.
Updates the XORWOW state
skipping sequence
sequences ahead. For XORWOW each sequence is 2^67 numbers long (equal to the size of a subsequence).
- Parameters
-
sequence - Number of sequences to skip state - Pointer to state to update
◆ skipahead_subsequence() [1/5]
__forceinline__ __device__ __host__ void skipahead_subsequence | ( | unsigned int | subsequence, |
rocrand_state_lfsr113 * | state | ||
) |
Updates LFSR113 state to skip ahead by subsequence
subsequences.
Updates the LFSR113 state
to skip ahead by subsequence
subsequences. Each subsequence is 2^55 numbers long.
- Parameters
-
subsequence - Number of subsequences to skip state - Pointer to state to update
◆ skipahead_subsequence() [2/5]
__forceinline__ __device__ __host__ void skipahead_subsequence | ( | unsigned long long | subsequence, |
rocrand_state_mrg31k3p * | state | ||
) |
Updates MRG31K3P state to skip ahead by subsequence
subsequences.
Updates the MRG31K3P state in state
to skip ahead by subsequence
subsequences. Each subsequence is 2^72 numbers long.
- Parameters
-
subsequence - Number of subsequences to skip state - Pointer to state to update
◆ skipahead_subsequence() [3/5]
__forceinline__ __device__ __host__ void skipahead_subsequence | ( | unsigned long long | subsequence, |
rocrand_state_mrg32k3a * | state | ||
) |
Updates MRG32K3A state to skip ahead by subsequence
subsequences.
Updates the MRG32K3A state in state
to skip ahead by subsequence
subsequences. Each subsequence is 2^76 numbers long.
- Parameters
-
subsequence - Number of subsequences to skip state - Pointer to state to update
◆ skipahead_subsequence() [4/5]
__forceinline__ __device__ __host__ void skipahead_subsequence | ( | unsigned long long | subsequence, |
rocrand_state_philox4x32_10 * | state | ||
) |
Updates Philox state to skip ahead by subsequence
subsequences.
Updates the Philox generator state in state
to skip ahead by subsequence
subsequences. Each subsequence is 4 * 2^64 numbers long.
- Parameters
-
subsequence - Number of subsequences to skip state - Pointer to state to update
◆ skipahead_subsequence() [5/5]
__forceinline__ __device__ __host__ void skipahead_subsequence | ( | unsigned long long | subsequence, |
rocrand_state_xorwow * | state | ||
) |
Updates XORWOW state to skip ahead by subsequence
subsequences.
Updates the XORWOW state
to skip ahead by subsequence
subsequences. Each subsequence is 2^67 numbers long.
- Parameters
-
subsequence - Number of subsequences to skip state - Pointer to state to update