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]

Read more

Summary

Introduction

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

Linear Congruential Generators
Lagged Fibonnaci and Shift Register Generators
Combined Generators
The Leapfrog Method
Sequence Splitting
Independent Generators
Other Methods
Monte Carlo Tests
X X RANMAR
Full Text
Paper version not known

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call