A new class of scalable parallel pseudorandom number generators based on Pohlig-Hellman exponentiation ciphers [article]

Paul D. Beale
2015 arXiv   pre-print
Parallel supercomputer-based Monte Carlo applications depend on pseudorandom number generators that produce independent pseudorandom streams across many separate processes. We propose a new scalable class of parallel pseudorandom number generators based on Pohlig--Hellman exponentiation ciphers. The method generates uniformly distributed floating point pseudorandom streams by encrypting simple sequences of integer messages into ciphertexts by exponentiation modulo prime numbers. The advantages
more » ... f the method are: the method is trivially parallelizable by parameterization with each pseudorandom number generator derived from an independent prime modulus, the method is fully scalable on massively parallel computing clusters due to the large number of primes available for each implementation, the seeding and initialization of the independent streams is simple, the method requires only a few integer multiply--mod operations per pseudorandom number, the state of each instance is defined by only a few integer values, the period of each instance is different, and the method passes a battery of intrastream and interstream correlation tests using up to 10^13 pseudorandom numbers per test. The 32-bit implementation we propose has millions of possible instances, all with periods greater than 10^18. A 64-bit implementation depends on 128-bit arithmetic, but would have more than 10^15 possible instances and periods greater than 10^37.
arXiv:1411.2484v4 fatcat:xx6wrmjbybhlvmqplzl2mhgaz4