Title :
Parallel random numbers: As easy as 1, 2, 3
Author :
Salmon, John K. ; Moraes, Mark A. ; Dror, Ron O. ; Shaw, David E.
Author_Institution :
D E. Shaw Res., New York, NY, USA
Abstract :
Most pseudorandom number generators (PRNGs) scale poorly to massively parallel high-performance computation because they are designed as sequentially dependent state transformations. We demonstrate that independent, keyed transformations of counters produce a large alternative class of PRNGs with excellent statistical properties (long period, no discernable structure or correlation). These counter-based PRNGs are ideally suited to modern multi- core CPUs, GPUs, clusters, and special-purpose hardware because they vectorize and parallelize well, and require little or no memory for state. We introduce several counter-based PRNGs: some based on cryptographic standards (AES, Threefish) and some completely new (Philox). All our PRNGs pass rigorous statistical tests (including TestUOl´s BigCrush) and produce at least 264 unique parallel streams of random numbers, each with period 2128 or more. In addition to essentially unlimited parallel scalability, our PRNGs offer excellent single-chip performance: Philox is faster than the CURAND library on a single NVIDIA GPU.
Keywords :
cryptography; graphics processing units; multiprocessing systems; random number generation; statistical testing; CURAND library; NVIDIA GPU; clusters; counter-based PRNG; cryptographic standards; dependent state transformations; multicore CPU; parallel high-performance computation; parallel random numbers; pseudorandom number generators; special-purpose hardware; statistical properties; statistical tests; Batteries; Cryptography; Generators; Hardware; Memory management; Radiation detectors; Testing;
Conference_Titel :
High Performance Computing, Networking, Storage and Analysis (SC), 2011 International Conference for
Conference_Location :
Seatle, WA
Electronic_ISBN :
978-1-4503-0771-0