#include <RandomGenerators.hpp>
Public Types | |
using | result_type = uint64_t |
Public Member Functions | |
uint64_t | operator() () |
void | seed (uint64_t seed) |
SplitMix64 (const SplitMix64 &gen)=default | |
SplitMix64 (SplitMix64 &&gen)=default | |
SplitMix64 (uint64_t seed) | |
Static Public Member Functions | |
static constexpr result_type | max () |
static constexpr result_type | min () |
Private Attributes | |
uint64_t | x |
This is a fixed-increment version of Java 8's SplittableRandom generator See http://dx.doi.org/10.1145/2714064.2660195 and http://docs.oracle.com/javase/8/docs/api/java/util/SplittableRandom.html
It is a very fast generator passing BigCrush, and it can be useful if for some reason you absolutely want 64 bits of state; otherwise, we rather suggest to use a xorshift128+ (for moderately parallel computations) or xorshift1024* (for massively parallel computations) generator.
Definition at line 34 of file RandomGenerators.hpp.
using ApproxMVBB::RandomGenerators::SplitMix64::result_type = uint64_t |
Definition at line 47 of file RandomGenerators.hpp.
|
default |
|
default |
|
inline |
Definition at line 192 of file RandomGenerators.hpp.
|
inlinestatic |
Definition at line 49 of file RandomGenerators.hpp.
|
inlinestatic |
Definition at line 48 of file RandomGenerators.hpp.
|
inline |
Definition at line 196 of file RandomGenerators.hpp.
|
inline |
Definition at line 194 of file RandomGenerators.hpp.
|
private |
Definition at line 36 of file RandomGenerators.hpp.