Abstract
Pseudo-random numbers are often required for simulations performed on parallel computers. The requirements for parallel random number generators are more stringent than those for sequential random number generators. As well as passing the usual sequential tests on each processor, a parallel random number generator must give different, independent sequences on each processor. We consider the requirements for a good parallel random number generator, and discuss generators for the uniform and normal distributions. We also describe a new class of generators for the normal distribution (based on a proposal by Wallace). These generators can give very fast vector or parallel implementations. Implementations of uniform and normal generators on vector and vector/parallel computers are discussed.
Chapter PDF
Keywords
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.
References
M. Abramowitz and I. A. Stegun: Handbook of Mathematical Functions. Dover, New York, 1965, Ch. 26.
J. H. Ahrens and U. Dieter: Computer Methods for Sampling from the Exponential and Normal Distributions. Comm. ACM 15 (1972), 873–882.
S. Aluru, G. M. Prabhu and J. Gustafson: A Random Number Generator for Parallel Computers. Parallel Computing 18 (1992), 839.
S. L. Anderson: Random Number Generators on Vector Supercomputers and Other Advanced Architectures, SIAM Review 32 (1990), 221–251.
R. P. Brent: Algorithm 488: A Gaussian Pseudo-Random Number Generator (G5). Comm. ACM 17 (1974), 704–706.
R. P. Brent: Uniform Random Number Generators for Supercomputers. Proc. Fifth Australian Supercomputer Conference, Melbourne, December 1992, 95–104. ftp://nimbus.anu.edu.au/pub/Brent/rpb132.dvi.gz
R. P. Brent: Fast Normal Random Number Generators for Vector Processors. Report TR-CS-93-04, Computer Sciences Laboratory, Australian National University, March 1993. ftp://nimbus.anu.edu.au/pub/Brent/rpb141tr.dvi.gz
R. P. Brent: On the Periods of Generalized Fibonacci Recurrences, Math. Comp. 63 (1994), 389–401.
R. P. Brent: A Fast Vectorised Implementation of Wallace’s Normal Random Number Generator. Report TR-CS-97-07, Computer Sciences Laboratory, Australian National University, Canberra, April 1997. ftp://nimbus.anu.edu.au/pub/Brent/rpb170tr.dvi.gz
C. W. Clenshaw, L. Fox, E. T. Goodwin, D. W. Martin, J. G. L. Michel, G. F. Miller, F. W. J. Olver and J. H. Wilkinson: Modern Computing Methods. 2nd edition, HMSO, London, 1961, Ch. 8.
P. D. Coddington: Random Number Generators for Parallel Computers. The NHSE Review 2 (1996). http://nhse.cs.rice.edu/NHSEreview/RNG/PRNGreview.ps
P. D. Coddington and S-H. Ko: Techniques for Empirical Testing of Parallel Random Number Generators. Proc. International Conference on Supercomputing (ICS’98), Melbourne, Australia, July 1998, to appear.
S. A. Cuccaro, M. Mascagni and D. V. Pryor: Techniques for Testing the Quality of Parallel Pseudo-Random Number Generators. Proc. 7th SIAM Conf. on Parallel Processing for Scientific Computing, SIAM, Philadelphia, 1995, 279–284.
L. Devroye: Non-Uniform Random Variate Generation. Springer-Verlag, New York, 1986.
P. L’Ecuyer: Efficient and Portable Combined Random Number Generators. Comm. ACM 31 (1988), 742–749, 774.
P. L’Ecuyer: Random Numbers for Simulation. Comm. ACM 33, 10 (1990), 85–97.
P. L’Ecuyer and S. CÔté: Implementing a Random Number Package with Splitting Facilities. ACM Trans. Math. Software 17 (1991), 98–111.
W. Evans and B. Sugla: Parallel Random Number Generation. Proc. 4th Conference on Hypercube Concurrent Computers and Applications (ed. J. Gustafson), Golden Gate Enterprises, Los Altos, CA, 1989, 415.
A. M. Ferrenberg, D. P. Landau and Y. J. Wong: Monte Carlo Simulations: Hidden Errors From “Good” Random Number Generators. Phys. Rev. Lett. 69 (1992), 3382–3384.
P. Griffiths and I. D. Hill (editors): Applied Statistics Algorithms. Ellis Horwood, Chichester, 1985.
J. R. Heringa, H. W. J. Blöte and A. Compagner: New Primitive Trinomials of Mersenne-Exponent Degrees for Random-Number Generation. Internat. J. of Modern Physics C 3 (1992), 561–564.
F. James: A Review of Pseudo-Random Number Generators. Computer Physics Communications 60 (1990), 329–344.
A. J. Kinderman and J. F. Monahan: Computer Generation of Random Variables Using the Ratio of Uniform Deviates. ACM Trans. Math. Software 3 (1977), 257–260.
D. E. Knuth: The Art of Computer Programming. Volume 2: Seminumerical Algorithms. 3rd edn. Addison-Wesley, Menlo Park, 1997.
D. H. Lehmer: Mathematical Methods in Large-Scale Computing Units. Ann. Comput. Lab. Harvard Univ. 26 (1951), 141–146.
J. L. Leva: A Fast Normal Random Number Generator. ACM Trans. Math. Software 18 (1992), 449–453.
M. Lüscher:, A Portable High-Quality Random Number Generator for Lattice Field Theory Simulations. Computer Physics Communications 79 (1994), 100–110.
G. Marsaglia: A Current View of Random Number Generators. Computer Science and Statistics: Proc. 16th Symposium on the Interface, Elsevier Science Publishers B. V. (North-Holland), 1985, 3–10.
M. Mascagni, S. A. Cuccaro, D. V. Pryor and M. L. Robinson: A Fast, High-Quality, and Reproducible Lagged-Fibonacci Pseudorandom Number Generator. J. of Computational Physics 15 (1995), 211–219.
M. Mascagni, M. L. Robinson, D. V. Pryor and S. A. Cuccaro: Parallel Pseudorandom Number Generation Using Additive Lagged-Fibonacci Recursions. Springer-Verlag Lecture Notes in Statistics 106 (1995), 263–277.
M. E. Muller: A Comparison of Methods for Generating Normal Variates on Digital Computers. J. ACM 6 (1959), 376–383.
J. von Neumann: Various Techniques Used in Connection With Random Digits. The Monte Carlo Method, National Bureau of Standards (USA) Applied Mathematics Series 12 (1951), 36.
S. K. Park and K. W. Miller: Random Number Generators: Good Ones are Hard to Find. Comm. ACM 31 (1988) 1192–1201.
W. P. Petersen: Some Vectorized Random Number Generators for Uniform, Normal, and Poisson Distributions for CRAY X-MP. J. Supercomputing 1 (1988), 327–335.
W. P. Petersen: Lagged Fibonacci Series Random Number Generators for the NEC SX-3. Internat. J. High Speed Computing 6 (1994), 387–398.
D. V. Pryor, S. A. Cuccaro, M. Mascagni and M. L. Robinson: Implementation and Usage of a Portable and Reproducible Parallel Pseudorandom Number Generator. Proc. Supercomputing ’94, IEEE, New York, 1994, 311–319.
I. Vattulainen, T. Ala-Nissila and K. Kankaala: Physical Tests for Random Numbers in Simulations. Phys. Rev. Lett. 73 (1994), 2513.
I. Vattulainen, T. Ala-Nissila and K. Kankaala: Physical Models as Tests of Randomness. Phys. Rev. E 52 (1995), 3205.
C. S. Wallace: Transformed Rejection Generators for Gamma and Normal Pseudorandom Variables. Australian Computer Journal 8 (1976), 103–105.
C. S. Wallace: Fast Pseudo-Random Generators for Normal and Exponential Variates. ACM Trans. Math. Software 22 (1996), 119–127.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1998 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Brent, R.P. (1998). Random number generation and simulation on vector and parallel computers. In: Pritchard, D., Reeve, J. (eds) Euro-Par’98 Parallel Processing. Euro-Par 1998. Lecture Notes in Computer Science, vol 1470. Springer, Berlin, Heidelberg. https://doi.org/10.1007/BFb0057835
Download citation
DOI: https://doi.org/10.1007/BFb0057835
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-64952-6
Online ISBN: 978-3-540-49920-6
eBook Packages: Springer Book Archive