Device Distributions#

oneMKL RNG routines are used to generate random numbers with different types of distributions. Each function group is introduced below by the type of underlying distribution and contains a short description of its functionality, as well as specifications of the call sequence and the explanation of input and output parameters. The Device Continuous Distribution Generators table and Device Discrete Distribution Generators table mention random number generator routines with data types and output distributions, and sets correspondence between data types of the generator routines and the basic random number generators.

Device Continuous Distribution Generators

Type of Distribution

Data Types

BRNG Data Type

Description

uniform (Continuous)

float, double

float, double

Uniform continuous distribution on the interval [a,b)

gaussian

float, double

float, double

Normal (Gaussian) distribution

exponential

float, double

float, double

Exponential distribution

lognormal

float, double

float, double

Lognormal distribution

Device Discrete Distribution Generators

Type of Distribution

Data Types

BRNG Data Type

Description

uniform (Discrete)

integer

float

Uniform discrete distribution on the interval [a,b)

bits

integer

integer

Bits of underlying BRNG integer sequence

uniform_bits

integer

integer

Uniformly distributed bits in 32/64-bit chunks

poisson

integer

integer

Poisson distribution

bernoulli

integer

integer

Bernoulli distribution

NOTE: In case of integer check desired distribution for supported data types.

Parent topic: Random Number Generators Device Routines