oneapi::mkl::rng::wichmann_hill

Description

Wichmann-Hill pseudorandom number generator (a set of 273 basic generators) from NAG Numerical Libraries [NAG].

API

Syntax

class wichmann_hill {
public:
    static constexpr std::uint32_t default_seed = 1;
    wichmann_hill(sycl::queue queue, std::uint32_t seed = default_seed);
    wichmann_hill(sycl::queue queue, std::uint32_t seed, std::uint32_t engine_idx);
    wichmann_hill(sycl::queue queue, std::initializer_list<std::uint32_t> seed);
    wichmann_hill(sycl::queue queue, std::initializer_list<std::uint32_t> seed, std::uint32_t engine_idx);
    wichmann_hill(const wichmann_hill& other);
    wichmann_hill(wichmann_hill&& other);
    wichmann_hill& operator=(const wichmann_hill& other);
    wichmann_hill& operator=(wichmann_hill&& other);
    ~wichmann_hill();
};

Devices supported: Host and CPU.

Include Files

  • oneapi/mkl/rng.hpp

Input Parameters

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<std::uint32_t>

Initial conditions of the engine.

engine_idx

std::uint32_t

Index of the engine from the set (set contains 273 basic generators)

See VS Notes for the detailed descriptions.