#random #rand #pcg #mwc

no-std pcg-mwc

A fast non-cryptographic psudo random number generator

3 unstable releases

0.2.1 Jun 7, 2021
0.2.0 Jun 7, 2021
0.1.0 May 25, 2021

#2108 in Algorithms

Download history 222/week @ 2024-07-20 147/week @ 2024-07-27 177/week @ 2024-08-03 105/week @ 2024-08-10 83/week @ 2024-08-17 102/week @ 2024-08-24 176/week @ 2024-08-31 146/week @ 2024-09-07 99/week @ 2024-09-14 199/week @ 2024-09-21 158/week @ 2024-09-28 138/week @ 2024-10-05 121/week @ 2024-10-12 155/week @ 2024-10-19 139/week @ 2024-10-26 113/week @ 2024-11-02

550 downloads per month
Used in 2 crates

MIT/Apache

16KB
244 lines

Permuted Mwc random number generator

It is a member of the PCG family but uses an MWC generator instead of an LCG. This an MWC is special form of a MCG generator similar to the PGC-64-fast variant.

Compared to PGC-64-fast, Mwc256XXA64 is both faster and produces higher quality rand numbers (due to using the full 256bit state as opposed to only half of it.)

For a detailed description of the design, see: https://tom-kaitchuck.medium.com/designing-a-new-prng-1c4ffd27124d

Mwc256XXA64

A fast high quality PRNG with 64bits of output, and a 256bit state. This is faster on 64bit architectures.

Mwc128XXA32

A fast high quality PRNG with 32bits of output, and a 128bit state. This is faster on 32bit architectures.

Dependencies

~215KB