SwiftWyhash

May 26, 2025 ยท View on GitHub

This is Swift port of pseudorandom number generator wyrand from wyhash by Wang Yi. On 64-bit hardware, it is should be effectively faster than any other commonly available random number generator. It meets quality standards: it passes Big Crunch.

It conforms to RandomNumberGenerator protocol.

Usage:

var gen = WyRand(seed: 42)
gen.next() // generates a 64-bit random number

(1...10).shuffled(using: &gen)

For a benchmark, see SwiftWyhashBenchmark.

Further reading: The fastest conventional random number generator that can pass Big Crush?