Some long-period random number generators using shifts and xors
Richard P. Brent

TL;DR
This paper generalizes Marsaglia's xorshift random number generators to create fast, high-quality RNGs with extremely long periods, using primitive trinomials with large weight, and provides implementations up to size 4096.
Contribution
It introduces a generalized class of xorshift RNGs with long periods and high quality, addressing limitations of previous generators based on primitive trinomials.
Findings
Successfully generated RNGs with periods up to 2^4096-1.
Implemented RNGs in the xorgens software package.
Achieved high-quality randomness with generators having large minimal polynomial weight.
Abstract
Marsaglia recently introduced a class of xorshift random number generators (RNGs) with periods 2n-1 for n = 32, 64, etc. Here we give a generalisation of Marsaglia's xorshift generators in order to obtain fast and high-quality RNGs with extremely long periods. RNGs based on primitive trinomials may be unsatisfactory because a trinomial has very small weight. In contrast, our generators can be chosen so that their minimal polynomials have large weight (number of nonzero terms). A computer search using Magma has found good generators for n a power of two up to 4096. These have been implemented in a free software package xorgens.
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsChaos-based Image/Signal Encryption · Algorithms and Data Compression · Mathematical Dynamics and Fractals
