Pseudo-random number generators for Monte Carlo simulations on ATI Graphics Processing Units

Abstract Basic uniform pseudo-random number generators are implemented on ATI Graphics Processing Units (GPU). The performance results of the realized generators (multiplicative linear congruential (GGL), XOR-shift (XOR128), RANECU, RANMAR, RANLUX and Mersenne Twister (MT19937)) on CPU and GPU are discussed. The obtained speed up factor is hundreds of times in comparison with CPU. RANLUX generator is found to be the most appropriate for using on GPU in Monte Carlo simulations. The brief review of the pseudo-random number generators used in modern software packages for Monte Carlo simulations in high-energy physics is presented.

[1]  F. E. Paige,et al.  ISAJET 7.37: A Monte Carlo Event Generator for $pp$, $\bar pp$, and $e^+e^-$ Interactions , 2003 .

[2]  S. Moretti,et al.  HERWIG 6: an event generator for hadron emission reactions with interfering gluons (including supersymmetric processes) , 2001 .

[3]  Zoltán Fodor,et al.  Lattice QCD as a video game , 2007, Comput. Phys. Commun..

[4]  Pierre L'Ecuyer,et al.  On the xorshift random number generators , 2005, TOMC.

[5]  R. Pittau,et al.  ALPGEN, a generator for hard multiparton processes in hadronic collisions , 2002, hep-ph/0206293.

[6]  Junqi Yin,et al.  Phase diagram and critical behavior of the square-lattice Ising model with competing nearest-neighbor and next-nearest-neighbor interactions. , 2009, Physical review. E, Statistical, nonlinear, and soft matter physics.

[7]  Kipton Barros,et al.  Solving lattice QCD systems of equations using mixed precision solvers on GPUs , 2009, Comput. Phys. Commun..

[8]  Massimo Di Pierro From Monte Carlo Integration to Quantum Chromo Dynamics (an introduction) , 2000 .

[10]  Yuichi Mori,et al.  Handbook of computational statistics : concepts and methods , 2004 .

[11]  William B. Langdon,et al.  A fast high quality pseudo random number generator for nVidia CUDA , 2009, GECCO '09.

[12]  Peter Schröder,et al.  Quantum Monte Carlo on graphical processing units , 2007, Comput. Phys. Commun..

[13]  P. L’Ecuyer Random Number Generation , 2012 .

[14]  Martin Greenberger,et al.  Random number generators , 1959, ACM National Meeting.

[15]  Robert G. Edwards,et al.  The Chroma Software System for Lattice QCD , 2004 .

[16]  R. Hatcher,et al.  The GENIE * Neutrino Monte Carlo Generator , 2009, 0905.2517.

[17]  Takuji Nishimura,et al.  Mersenne twister: a 623-dimensionally equidistributed uniform pseudo-random number generator , 1998, TOMC.

[18]  Ted G. Lewis,et al.  Generalized Feedback Shift Register Pseudorandom Number Algorithm , 1973, JACM.

[19]  R. Tausworthe Random Numbers Generated by Linear Recurrence Modulo Two , 1965 .

[20]  Massimo Di Pierro From Monte Carlo integration to lattice quantum chromodynamics: An Introduction , 2000 .

[21]  George Marsaglia,et al.  Toward a universal random number generator , 1987 .

[22]  Donald E. Knuth The Art of Computer Programming 2 / Seminumerical Algorithms , 1971 .

[23]  Paul Coddington,et al.  Random Number Generators for Parallel Computers , 1997 .

[24]  Mikhail Dubinin,et al.  CompHEP - a package for evaluation of Feynman diagrams and integration over multi-particle phase space. User's manual for version 33 , 1999, hep-ph/9908288.

[25]  S. Frixione,et al.  Matching NLO QCD computations and parton shower simulations , 2002, hep-ph/0204244.

[26]  Harald Niederreiter,et al.  Random number generation and Quasi-Monte Carlo methods , 1992, CBMS-NSF regional conference series in applied mathematics.

[27]  Pierre L'Ecuyer,et al.  TestU01: A C library for empirical testing of random number generators , 2006, TOMS.

[28]  Donald Ervin Knuth,et al.  The Art of Computer Programming , 1968 .

[29]  Craig B. Borkowf,et al.  Random Number Generation and Monte Carlo Methods , 2000, Technometrics.

[30]  Wolfgang Paul,et al.  GPU accelerated Monte Carlo simulation of the 2D and 3D Ising model , 2009, J. Comput. Phys..

[31]  Pierre L'Ecuyer,et al.  Uniform random number generation , 1994, Ann. Oper. Res..

[32]  F. Paige,et al.  ISAJET 7.40: A Monte Carlo event generator for p p, anti-p p, and e+ e- reactions , 1998 .

[33]  G. Marsaglia The Structure of Linear Congruential Sequences , 1972 .

[34]  F. James,et al.  RANLUX: A Fortran implementation of the high-quality pseudorandom number generator of Lüscher , 1994 .

[35]  F. James A Review of Pseudorandom Number Generators , 1990 .

[36]  I. Vattulainen New tests of random numbers for simulations in physical systems , 1994, cond-mat/9411062.

[37]  Harald Niederreiter,et al.  Introduction to finite fields and their applications: List of Symbols , 1986 .

[38]  Alexei Strelchenko,et al.  Monte Carlo simulations on Graphics Processing Units , 2009 .

[39]  Pierre L'Ecuyer,et al.  Efficient and portable combined random number generators , 1988, CACM.

[40]  S. Mrenna,et al.  Pythia 6.3 physics and manual , 2003, hep-ph/0308153.

[41]  G. Marsaglia,et al.  A New Class of Random Number Generators , 1991 .

[42]  G. Marsaglia Random numbers fall mainly in the planes. , 1968, Proceedings of the National Academy of Sciences of the United States of America.

[43]  H. Keng,et al.  Applications of number theory to numerical analysis , 1981 .

[44]  山田 祥寛,et al.  Microsoft Visual C++ 2008 Express Edition入門 , 2006 .

[45]  M. Luescher,et al.  A Portable High-quality Random Number Generator for Lattice Field Theory Simulations , 1993 .

[46]  S. K. Park,et al.  Random number generators: good ones are hard to find , 1988, CACM.

[47]  Pierre L'Ecuyer,et al.  Random numbers for simulation , 1990, CACM.

[48]  Wolfhard Janke Pseudo Random Numbers: Generation and Quality Checks , 2002 .

[49]  Nikos L. Doltsinis,et al.  Quantum Simulations of complex many-body systems:from theory to algorithms , 2002 .

[50]  Massimo Di Pierro,et al.  Lattice QFT with FermiQCD , 2005 .

[51]  Mikhail Dubinin,et al.  CompHEP - a package for evaluation of Feynman diagrams and integration over multi-particle phase space. User's manual for version 33 , 1999 .

[52]  Makoto Matsumoto,et al.  Twisted GFSR generators , 1992, TOMC.

[53]  Peter Virnau,et al.  Multi-GPU accelerated multi-spin Monte Carlo simulations of the 2D Ising model , 2010, Comput. Phys. Commun..

[54]  G.Corcella,et al.  HERWIG 6.5: an event generator for Hadron Emission Reactions With Interfering Gluons (including supersymmetric processes) , 2000, hep-ph/0011363.

[55]  Scott Kirkpatrick,et al.  A very fast shift-register sequence random number generatorjournal of computational physics , 1981 .