![]() |
The ROme OpTimistic Simulator
3.0.0
A General-Purpose Multithreaded Parallel/Distributed Simulation Platform
|
Pseudo random number generator for tests. More...
Include dependency graph for test_rng.h:
This graph shows which files directly or indirectly include this file:Go to the source code of this file.
Macros | |
| #define | LCG_MULTIPLIER ((((__uint128_t)0x0fc94e3bf4e9ab32ULL) << 64) + 0x866458cd56f5e605ULL) |
| The multiplier of this linear congruential PRNG generator. | |
| #define | lcg_init(rng_state, initseq) (rng_state) = ((initseq) << 1u) | 1u |
| Initializes the random number generator. More... | |
| #define | lcg_random_u(rng_state) |
| Computes a pseudo random 64 bit number. More... | |
| #define | lcg_random(rng_state) |
| Computes a pseudo random number in the [0, 1] range. More... | |
Typedefs | |
| typedef __uint128_t | test_rng_state |
| The type of this pseudo random number generator state. | |
Pseudo random number generator for tests.
An acceptable quality pseudo random number generator to be used in tests
Definition in file test_rng.h.
| #define lcg_init | ( | rng_state, | |
| initseq | |||
| ) | (rng_state) = ((initseq) << 1u) | 1u |
Initializes the random number generator.
| rng_state | a test_rng_state object which will be initialized |
| initseq | the seed to use to initialize rng_state |
Definition at line 30 of file test_rng.h.
| #define lcg_random | ( | rng_state | ) |
Computes a pseudo random number in the [0, 1] range.
| rng_state | a test_rng_state object |
Definition at line 49 of file test_rng.h.
| #define lcg_random_u | ( | rng_state | ) |
Computes a pseudo random 64 bit number.
| rng_state | a test_rng_state object |
Definition at line 37 of file test_rng.h.