Abstract
Large-scale Monte Carlo simulations require high-quality random number generators to ensure correct results. The contrapositive of this statement is also true — the quality of random number generators can be tested by using them in large-scale Monte Carlo simulations. We have tested many commonly-used random number generators with high precision Monte Carlo simulations of the 2-d Ising model using the Metropolis, Swendsen-Wang, and Wolff algorithms. This work is being extended to the testing of random number generators for parallel computers. The results of these tests are presented, along with recommendations for random number generators for high-performance computers, particularly for lattice Monte Carlo simulations.
Highlights
Random number generators are widely used for simulations in computational science and engineering, in particular for large-scale Monte Carlo simulations on high-performance computers, for which good randomness properties are essential
Large-scale Monte Carlo simulations are commonly performed on high-performance parallel computers
We summarize the results of Monte Carlo tests of random number generators on sequential computers,[7] and provide preliminary results on tests of random number generators for parallel machines.[11]
Summary
Random number generators are widely used for simulations in computational science and engineering, in particular for large-scale Monte Carlo simulations on high-performance computers, for which good randomness properties are essential. A poor random number generator can produce incorrect results from the simulation, which has been seen many times in the computational physics literature.[1,2,3,4,5,6,7] Monte Carlo simulations can provide sensitive tests of the randomness properties of random number generators. We summarize the results of Monte Carlo tests of random number generators on sequential computers,[7] and provide preliminary results on tests of random number generators for parallel machines.[11] We first present the different algorithms used for standard sequential random number generators, and the various methods used to parallelize these algorithms. We discuss the various random number generators in the light of these results, and make recommendations on generators for use on high-performance computers, for lattice Monte Carlo simulations
Talk to us
Join us for a 30 min session where you can share your feedback and ask us any queries you have