niederreiter#

Description#

Niederreiter quasi-random number generator [Bratley92], which works in arbitrary dimension.

API#

Syntax#

namespace oneapi::mkl::rng {
  class niederreiter {
  public:
      static constexpr std::uint32_t default_dimensions_number = 1;

      niederreiter(sycl::queue queue, std::uint32_t dimensions = default_dimensions_number);
      niederreiter(sycl::queue queue, std::vector<std::uint32_t>& irred_polynomials);
      niederreiter(const niederreiter& other);
      niederreiter(niederreiter&& other);
      niederreiter& operator=(const niederreiter& other);
      niederreiter& operator=(niederreiter&& other);
      ~niederreiter();
  };
}

Devices supported: 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.

dimensions

std::uint32_t

Number of dimensions.

irred_polynomials

std::vector<std::uint32_t>

User-defined direction numbers.

See VS Notes for the detailed descriptions.