#random #mwc #pcg

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

#902 in Algorithms

Download history 164/week @ 2024-12-07 160/week @ 2024-12-14 78/week @ 2024-12-21 134/week @ 2024-12-28 167/week @ 2025-01-04 181/week @ 2025-01-11 243/week @ 2025-01-18 225/week @ 2025-01-25 234/week @ 2025-02-01 1043/week @ 2025-02-08 4908/week @ 2025-02-15 5922/week @ 2025-02-22 7246/week @ 2025-03-01 6405/week @ 2025-03-08 6440/week @ 2025-03-15 6896/week @ 2025-03-22

27,802 downloads per month
Used in 3 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

~200KB