.. _oneapi-mkl-rng-bits: oneapi::mkl::rng::bits ====================== Generates bits of underlying engine (BRNG) integer reccurence. .. contents:: :local: :depth: 1 Description *********** The ``oneapi::mkl::rng::bits`` class object is used to generate integer random values. Each integer can be treated as a vector of several bits. In a truly random generator, these bits are random, while in pseudorandom generators this randomness can be violated. For example, a drawback of linear congruential generators is that lower bits are less random than higher bits (for example, see :ref:`[Knuth81]`. For this reason, exercise care when using this function. Typically, in a 32-bit LCG only 24 higher bits of an integer value can be considered random. See :ref:`VS Notes` for details. API *** Syntax ------ .. code-block:: cpp template class bits { using result_type = UIntType } Devices supported: Host, CPU, and GPU. Include Files ------------- - ``oneapi/mkl/rng.hpp`` Template Parameters ------------------- .. list-table:: :header-rows: 1 * - Name - Description * - ``typename UIntType = std::uint32_t`` - Type of the produced values. The specific values are as follows: ``std::uint32_t``