Skip to main content
QUICK REVIEW

[Paper Review] Romu: Fast Nonlinear Pseudo-Random Number Generators Providing High Quality

Mark A. Overton|arXiv (Cornell University)|Feb 26, 2020
Chaos-based Image/Signal Encryption4 citations
TL;DR

Romu introduces a family of fast, high-quality pseudo-random number generators (PRNGs) that combine nonlinear rotation with linear multiplication (and optional addition), achieving superior randomness per operation compared to linear-only PRNGs. These generators pass the most rigorous statistical tests (BigCrush and PractRand), achieve zero output latency when inlined, support thousands of independent streams, and provide probabilistic capacity estimates via scaled-down variants.

ABSTRACT

We introduce the Romu family of pseudo-random number generators (PRNGs) which combines the nonlinear operation of rotation with the linear operations of multiplication and (optionally) addition. Compared to conventional linear-only PRNGs, this mixture of linear and nonlinear operations achieves a greater degree of randomness using the same number of arithmetic operations. Or equivalently, it achieves the same randomness with fewer operations, resulting in higher speed. The statistical properties of these generators are strong, as they pass BigCrush and PractRand -- the most stringent test suites available. In addition, Romu generators take maximum advantage of instruction-level parallelism in modern superscalar processors, giving them an output latency of zero clock-cycles when inlined, thus adding no delay to an application. Scaled-down versions of these generators can be created and tested, enabling one to estimate the maximum number of values the full-size generators can supply before their randomness declines, ensuring the success of large jobs. Such capacity-estimates are rare for conventional PRNGs. A linear PRNG has a single cycle of states of known length comprising almost all possible states. However, a Romu generator computes pseudo-random permutations of those states, creating multiple cycles with pseudo-random lengths which cannot be determined by theory. But the ease of creating state-sizes of 128 or more bits allows (1) short cycles to be constrained to vanishingly low probabilities, and (2) thousands of parallel streams to be created having infinitesimal probabilities of overlap.

Motivation & Objective

  • To design a new class of PRNGs that outperform conventional linear generators in randomness quality and speed by integrating nonlinear operations.
  • To address the limitations of linear PRNGs, such as predictable cycle structures and insufficient randomness per operation, through hybrid linear-nonlinear state transitions.
  • To enable practical use in large-scale parallel applications by supporting thousands of independent, low-overlap streams with high state sizes.
  • To provide quantifiable estimates of generator capacity through empirical testing of scaled-down versions, reducing uncertainty in long-running simulations.
  • To demonstrate that nonlinear operations like rotation significantly enhance randomness efficiency compared to purely linear operations.

Proposed method

  • The Romu generators use a core state update function based on rotation (ROTL) and multiplication, with optional addition, forming a nonlinear transformation of the internal state.
  • Each generator is named by its number of 64-bit state variables (e.g., RomuTrio has three 64-bit state words), with 32-bit variants denoted by a '32' suffix.
  • The state update is implemented with minimal arithmetic—e.g., RomuMono32 uses only two operations: rotate-left and multiply—enabling high instruction-level parallelism (ILP).
  • The generators are designed to be inlined into applications, achieving zero output latency (1-cycle throughput) on modern superscalar processors.
  • Capacity estimates are derived by testing reduced-size versions (e.g., 32-bit states) until failure, extrapolating to full-size generators to bound cycle length and stream overlap probabilities.
  • Statistical quality is rigorously validated using the PractRand and BigCrush test suites, with PractRand providing quantitative goodness-of-fit metrics beyond pass/fail outcomes.

Experimental results

Research questions

  • RQ1Can a hybrid approach combining nonlinear rotation and linear multiplication produce PRNGs with better randomness per operation than purely linear generators?
  • RQ2To what extent can instruction-level parallelism (ILP) be exploited in PRNG design to achieve zero-latency output when inlined?
  • RQ3How can the effective capacity of a PRNG be estimated empirically when theoretical cycle length analysis is intractable due to nonlinear state transitions?
  • RQ4What is the probability of cycle shortening or stream overlap in large-scale parallel simulations using Romu generators, and can it be made negligible?
  • RQ5Can a minimal number of operations (e.g., two) produce a PRNG that matches or exceeds the statistical quality of more complex generators like PCG or LCGs?

Key findings

  • Romu generators pass both BigCrush and PractRand test suites, with PractRand testing up to 2^46 bytes, confirming their high statistical quality.
  • RomuMono32, using only two arithmetic operations (rotate-left and multiply), matches the statistical quality of the 32-bit pcg-xsh-rr generator, which requires seven operations.
  • RomuMono32 has a capacity of 2^27 bytes (approximately 134 million 32-bit values) before randomness degrades, far exceeding the 2^16 limit of a comparable LCG.
  • RomuTrio, with 192-bit state, has an estimated capacity of 2^75 bytes, with cycle lengths and stream overlaps having vanishingly low probabilities.
  • Romu generators achieve zero output latency when inlined due to excellent ILP utilization, enabling throughput of one output per clock cycle.
  • The use of nonlinear rotation in combination with multiplication increases randomness efficiency—e.g., no 64-bit linear PRNG can match RomuDuoJr’s quality with only three operations.

Better researchstarts right now

From reading papers to final review, dramatically reduce your research time.

No credit card · Free plan available

This review was created by AI and reviewed by human editors.