.. _oneapi-mkl-rng-mrg32k3a: oneapi::mkl::rng::mrg32k3a ========================== .. contents:: :local: :depth: 1 Description *********** The combined multiple recursive pseudorandom number generator MRG32k3a :ref:`[L'Ecuyer99a] `. API *** Syntax ------ .. code-block:: cpp class mrg32k3a { public: static constexpr std::uint32_t default_seed = 1; mrg32k3a(sycl::queue queue, std::uint32_t seed = default_seed); mrg32k3a(sycl::queue queue, std::initializer_list seed); mrg32k3a(const mrg32k3a& other); mrg32k3a(mrg32k3a&& other); mrg32k3a& operator=(const mrg32k3a& other); mrg32k3a& operator=(mrg32k3a&& other); ~mrg32k3a(); }; Devices supported: Host, CPU, and GPU. Include Files ------------- - ``oneapi/mkl/rng.hpp`` Input Parameters ---------------- .. list-table:: :header-rows: 1 * - Name - Type - Description * - queue - ``sycl::queue`` - Valid ``sycl::queue``, calls of the ``oneapi::mkl::rng::generate()`` routine submits kernels in this queue. * - seed - ``std::uint32_t`` ``std::initializer_list`` - Initial conditions of the generator state or engine state. See :ref:`VS Notes ` for the detailed descriptions.