Batched Ranged Random Integer Generation
- Nevin Brackett-Rozinsky,
- Daniel Lemire
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 triple the speed of unbiased random
shuffling for small to moderately large arrays.Submitted to Software: Practice and Experience 12 Jun 2024Review(s) Completed, Editorial Evaluation Pending
15 Jun 2024Reviewer(s) Assigned
30 Jul 2024Editorial Decision: Revise Minor
02 Aug 20241st Revision Received
05 Aug 2024Assigned to Editor
05 Aug 2024Submission Checks Completed
05 Aug 2024Review(s) Completed, Editorial Evaluation Pending
06 Aug 2024Reviewer(s) Assigned
08 Aug 2024Editorial Decision: Revise Minor
12 Aug 20242nd Revision Received
13 Aug 2024Assigned to Editor
13 Aug 2024Submission Checks Completed
13 Aug 2024Review(s) Completed, Editorial Evaluation Pending
13 Aug 2024Editorial Decision: Accept