oneapi::mkl::rng::device::uniform_bits

Generates uniformly distributed bits in 32/64-bit chunks.

Description

The oneapi::mkl::rng::device::uniform_bits class object is used to generate uniformly distributed bits in 32/64-bit chunks. It is designed to ensure each bit in the 32/64-bit chunk is uniformly distributed. This distribution is supported for philox4x32x10 and mcg59 engines. When generating 64-bit chunks, twice as much engine offset needs to be provided.

UIntType denotes the chunk size and can be std::uint32_t, std::uint64_t. See VS Notes for details.

API

Syntax

template<typename UIntType = std::uint32_t>
  class uniform_bits {
    using result_type = UIntType;
  };

Include Files

  • oneapi/mkl/rng/device.hpp

Template Parameters

typename UIntType = std::uint32_t

Type of the produced values. The specific values are as follows:

std::uint32_t