TL;DR
This paper introduces an efficient algorithm for generating multiple unbiased, uniformly-random integers within a range from a single random binary word, significantly improving speed for array shuffling tasks.
Contribution
The paper presents a novel algorithm that produces multiple independent bounded integers from one random word without bias, optimizing performance over existing methods.
Findings
More than double the speed of unbiased random shuffling for small to medium arrays
Uses one multiplication and no division per generated value in typical cases
Produces multiple independent uniform integers efficiently from a single random word
Abstract
Pseudorandom values are often generated as 64-bit binary words. These random words need to be converted into ranged values without statistical bias. We present an efficient algorithm to generate multiple independent uniformly-random bounded integers from a single uniformly-random binary word, without any bias. In the common case, our method uses one multiplication and no division operations per value produced. In practice, our algorithm can more than double the speed of unbiased random shuffling for small to moderately large arrays.
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.
Code & Models
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
