Xorshift Generators

88 points44 comments5 days ago
jabl

A number of years ago I implemented xoshiro256** for the GFortran compiler. Previously it used Marsaglia's KISS generator, which wasn't bad but perhaps no longer state of the art on the TESTU1 etc. tests. Additionally, xoshiro256** can be used in parallel by multiple threads; that took a bit of clever hacking to work around the limitations of the Fortran intrinsics API.

larsbrinkhoff

Xorshift-36 for the PDP-10, with help from Sebastiano Vigna.

https://github.com/larsbrinkhoff/xoroshiro-36

delduca

I’ve replaced Lua’s random by this. I’ve posted about it here https://nullonerror.org/2025/08/02/replacing-lua-s-math-rand...

show comments
saithound

Ah yes, Xorshift, the RANDU [1] of the 21st century [2].

There is no real use case for better non-CS generators, as explained by adrian_b back in 2021 [3].

[1] https://en.wikipedia.org/wiki/RANDU [2] https://arxiv.org/abs/1908.10020 [3] https://news.ycombinator.com/item?id=28886698

show comments
AlanZucconi

I'm really curious... How did you manage to post this link before I did?

show comments
smusamashah

> No multiplications. No divisions. No lookup tables. Just a few bitwise instructions.

Would have appreciated this article more if it was written by a human.

show comments