.. _oneapi-mkl-rng-mt2203: oneapi::mkl::rng::mt2203 ======================== .. contents:: :local: :depth: 1 Description *********** Set of 6024 Mersenne Twister pseudorandom number generators MT2203 :ref:`[Matsumoto98] `, :ref:`[Matsumoto00] `. Each of them generates a sequence of period length equal to 2\ :sup:`2203`-1. Parameters of the generators provide mutual independence of the corresponding sequences. API *** Syntax ------ .. code-block:: cpp class mt2203 { public: static constexpr std::uint32_t default_seed = 1; mt2203(sycl::queue queue, std::uint32_t seed = default_seed); mt2203(sycl::queue queue, std::uint32_t seed, std::uint32_t engine_idx); mt2203(sycl::queue queue, std::initializer_list seed); mt2203(sycl::queue queue, std::initializer_list seed, std::uint32_t engine_idx); mt2203(const mt2203& other); mt2203(mt2203&& other); mt2203& operator=(const mt2203& other); mt2203& operator=(mt2203&& other); ~mt2203() }; 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 ``oneapi::mkl::rng::generate()`` routine submit kernels in this queue. * - seed - ``std::uint32_t`` ``std::initializer_list`` - Initial conditions of the engine. * - engine_idx - ``std::uint32_t`` - Index of the engine from the set (set contains 6024 basic generators). See :ref:`VS Notes ` for the detailed descriptions.