Visible to Intel only — GUID: GUID-0564374A-8870-40E2-B863-A7D38FA27E4A
Visible to Intel only — GUID: GUID-0564374A-8870-40E2-B863-A7D38FA27E4A
mcg59
Description
The 59-bit multiplicative congruential pseudorandom number generator MCG(1313, 259) from NAG Numerical Libraries [NAG].
API
Syntax
namespace oneapi::mkl::rng::device { template<std::int32_t VecSize = 1> class mcg59 { public: static constexpr std::uint32_t default_seed = 1; static constexpr std::int32_t vec_size = VecSize; mcg59() : mcg59(default_seed) {} mcg59(std::uint32_t seed, std::uint64_t offset = 0); mcg59(std::initializer_list<std::uint32_t> seed, std::uint64_t offset = 0); }; }
Include Files
oneapi/mkl/rng/device.hpp
Template Parameters
Name |
Type |
Description |
---|---|---|
VecSize |
std::int32_t |
Describes the size of vector that will be produced by generate function by this engine. VecSize values may be 1, 2, 3, 4, 8, 16 as sycl::vec class size. By default VecSize = 1, for this case, a single random number is returned by the generate function. |
Constructors Input Parameters
Name |
Type |
Description |
---|---|---|
seed |
std::uint32_tstd::initializer_list<std::uint32_t> |
Initial conditions of the engine state. |
offset |
std::uint64_t |
Number of skipped elements. |
See VS Notes for detailed descriptions.