vSMC
vSMC: Scalable Monte Carlo
|
Go to the source code of this file.
Namespaces | |
vsmc | |
vsmc::internal | |
Macros | |
#define | VSMC_DEFINE_RNG_PHILOX_ROUND_CONSTANT(T, K, I, val) |
#define | VSMC_DEFINE_RNG_PHILOX_WELY_CONSTANT(T, I, val) |
#define | VSMC_RNG_PHILOX_ROUNDS 10 |
PhiloxGenerator default rounds. More... | |
#define | VSMC_RNG_PHILOX_VECTOR_LENGTH 4 |
PhiloxGenerator default vector length. More... | |
Typedefs | |
using | vsmc::Philox = PhiloxEngine< std::uint32_t > |
The default 32-bits Philox engine. More... | |
using | vsmc::Philox2x32 = PhiloxEngine< std::uint32_t, 2 > |
Philox2x32 RNG engine. More... | |
using | vsmc::Philox2x64 = PhiloxEngine< std::uint64_t, 2 > |
Philox2x64 RNG engine. More... | |
using | vsmc::Philox4x32 = PhiloxEngine< std::uint32_t, 4 > |
Philox4x32 RNG engine. More... | |
using | vsmc::Philox4x64 = PhiloxEngine< std::uint64_t, 4 > |
Philox4x64 RNG engine. More... | |
using | vsmc::Philox_64 = PhiloxEngine< std::uint64_t > |
The default 64-bits Philox engine. More... | |
template<typename ResultType , std::size_t K = 4, std::size_t Rounds = 10> | |
using | vsmc::PhiloxEngine = CounterEngine< PhiloxGenerator< ResultType, K, Rounds >> |
Philox RNG engine. More... | |
Functions | |
template<std::size_t K, std::size_t I> | |
void | vsmc::internal::philox_hilo (std::uint32_t b, std::uint32_t &hi, std::uint32_t &lo) |
template<std::size_t K, std::size_t I> | |
void | vsmc::internal::philox_hilo (std::uint64_t b, std::uint64_t &hi, std::uint64_t &lo) |
#define VSMC_DEFINE_RNG_PHILOX_ROUND_CONSTANT | ( | T, | |
K, | |||
I, | |||
val | |||
) |
Definition at line 48 of file philox.hpp.
#define VSMC_DEFINE_RNG_PHILOX_WELY_CONSTANT | ( | T, | |
I, | |||
val | |||
) |
Definition at line 42 of file philox.hpp.