Results 1  10
of
19
SPRNG: A Scalable Library for Pseudorandom Number Generation
"... In this article we present background, rationale, and a description of the Scalable Parallel Random
Number Generators (SPRNG) library. We begin by presenting some methods for parallel pseudorandom number generation. We will focus on methods based on parameterization, meaning that we will not conside ..."
Abstract

Cited by 29 (6 self)
 Add to MetaCart
In this article we present background, rationale, and a description of the Scalable Parallel Random
Number Generators (SPRNG) library. We begin by presenting some methods for parallel pseudorandom number generation. We will focus on methods based on parameterization, meaning that we will not consider splitting methods such as the leapfrog or blocking methods. We describe in detail
parameterized versions of the following pseudorandom number generators: (i) linear congruential
generators, (ii) shiftregister generators, and (iii) laggedFibonacci generators. We briey describe
the methods, detail some advantages and disadvantages of each method, and recount results from
number theory that impact our understanding of their quality in parallel applications.
SPRNG was designed around the uniform implementation of dierent families of parameterized random number
generators. We then present a short description of
SPRNG. The description contained within this
document is meant only to outline the rationale behind and the capabilities of SPRNG. Much more
information, including examples and detailed documentation aimed at helping users with putting
and using SPRNG on scalable systems is available at the URL:
http://sprng.cs.fsu.edu/RNG. In this description of SPRNG we discuss the random number generator library as well as the suite of
tests of randomness that is an integral part of SPRNG. Random number tools for parallel Monte
Carlo applications must be subjected to classical as well as new types of empirical tests of ran
domness to eliminate generators that show defects when used in scalable environments.
Uniform Random Number Generators for Supercomputers
 Proc. Fifth Australian Supercomputer Conference
, 1992
"... We consider the requirements for uniform pseudorandom number generators on modern vector and parallel supercomputers, consider the pros and cons of various classes of methods, and outline what is currently available. We propose a class of random number generators which have good statistical propert ..."
Abstract

Cited by 26 (11 self)
 Add to MetaCart
We consider the requirements for uniform pseudorandom number generators on modern vector and parallel supercomputers, consider the pros and cons of various classes of methods, and outline what is currently available. We propose a class of random number generators which have good statistical properties and can be implemented efficiently on vector processors and parallel machines. A good method for initialization of these generators is described, and an implementation on a Fujitsu VP 2200/10 vector processor is discussed. 1
Random Number Generators for Parallel Computers
 The NHSE Review
, 1997
"... Random number generators are used in many applications, from slot machines to simulations of nuclear reactors. For many computational science applications, such as Monte Carlo simulation, it is crucial that the generators have good randomness properties. This is particularly true for largescale ..."
Abstract

Cited by 24 (1 self)
 Add to MetaCart
Random number generators are used in many applications, from slot machines to simulations of nuclear reactors. For many computational science applications, such as Monte Carlo simulation, it is crucial that the generators have good randomness properties. This is particularly true for largescale simulations done on highperformance parallel computers. Good random number generators are hard to find, and many widelyused techniques have been shown to be inadequate. Finding highquality, efficient algorithms for random number generation on parallel computers is even more difficult. Here we present a review of the most commonlyused random number generators for parallel computers, and evaluate each generator based on theoretical knowledge and empirical tests. In conclusion, we provide recommendations for using random number generators on parallel computers. Outline This review is organized as follows: A brief summary of the findings of this review is first presented, giving an overview of the use of parallel random number generators and a list of recommended algorithms. Section 1 is an introduction to random number generators and their use in computer simulations on parallel computers. Section 2 is a summary of the methods used to test and evaluate random number generators, on both sequential and parallel computers. Section 3 gives an overview of the main algorithms used to implement random number generators on sequential computers, provides examples of software implementations of the algorithms, and states any known problems with the algorithms or implementations. Section 4 gives a description of the most common methods used to parallelize the sequential algorithms, provides examples of software implementing these algorithms, and states any known problems ...
Parallel Pseudorandom Number Generation Using Additive LaggedFibonacci Recursions
, 1995
"... . We study the suitability of the additive laggedFibonacci pseudorandom number generator for parallel computation. This generator has a relatively short period with respect to the size of its seed. However, the short period is more than made up for with the huge number of fullperiod cycles it cont ..."
Abstract

Cited by 19 (4 self)
 Add to MetaCart
. We study the suitability of the additive laggedFibonacci pseudorandom number generator for parallel computation. This generator has a relatively short period with respect to the size of its seed. However, the short period is more than made up for with the huge number of fullperiod cycles it contains. We call these different fullperiod cycles equivalence classes. We show how to enumerate the equivalence classes and how to compute seeds to select a given equivalence class. The use of these equivalence classes gives an explicit parallelization suitable for a fully reproducible asynchronous MIMD implementation. To explore such an implementation we introduce an exponential sum measure of quality for the additive laggedFibonacci generators used in serial or parallel. We then prove the first nontrivial results we are aware of on this measure of quality. 1. Introduction. In Knuth's well known exposition on pseudorandom number generation [5], several methods of generation are considered...
TestU01: A Software Library in ANSI C for Empirical Testing of Random Number Generators
, 2007
"... This document describes the software library TestU01, implemented in the ANSI C language, and offering a collection of utilities for the (empirical) statistical testing of uniform random number generators (RNG). The library implements several types of generators in generic form, as well as many spec ..."
Abstract

Cited by 18 (2 self)
 Add to MetaCart
This document describes the software library TestU01, implemented in the ANSI C language, and offering a collection of utilities for the (empirical) statistical testing of uniform random number generators (RNG). The library implements several types of generators in generic form, as well as many specific generators proposed in the literature or found in widelyused software. It provides general implementations of the classical statistical tests for random number generators, as well as several others proposed in the literature, and some original ones. These tests can be applied to the generators predefined in the library and to userdefined generators. Specific tests suites for either sequences of uniform random numbers in [0, 1] or bit sequences are also available. Basic tools for plotting vectors of points produced by generators are provided as well. Additional software permits one to perform systematic studies of the interaction between a specific test and the structure of the point sets produced by a given family of RNGs. That is, for a given kind of test and a given class of RNGs, to determine how large should be the sample size of the test, as a function of the generator’s period length, before the generator starts to fail the test systematically.
Random Number Generators for Parallel Applications
 in Monte Carlo Methods in Chemical Physics
, 1998
"... this article is devoted, because these com1 putations require the highest quality of random numbers. The ability to do a multidimensional integral relies on properties of uniformity of ntuples of random numbers and/or the equivalent property that random numbers be uncorrelated. The quality aspect i ..."
Abstract

Cited by 17 (7 self)
 Add to MetaCart
this article is devoted, because these com1 putations require the highest quality of random numbers. The ability to do a multidimensional integral relies on properties of uniformity of ntuples of random numbers and/or the equivalent property that random numbers be uncorrelated. The quality aspect in the other uses is normally less important simply because the models are usually not all that precisely specified. The largest uncertainties are typically due more to approximations arising in the formulation of the model than those caused by lack of randomness in the random number generator. In contrast, the first class of applications can require very precise solutions. Increasingly, computers are being used to solve very welldefined but hard mathematical problems. For example, as Dirac [1] observed in 1929, the physical laws necessary for the mathematical theory of a large part of physics and the whole of chemistry are completely known and it is only necessary to find precise methods for solving the equations for complex systems. In the intervening years fast computers and new computational methods have come into existence. In quantum chemistry, physical properties must be calculated to "chemical accuracy" (say 0.001 Rydbergs) to be relevant to physical properties. This often requires a relative accuracy of 10
Random Number Generators with Period Divisible by a Mersenne Prime
 Proc. ICCSA 2003
, 2003
"... Pseudorandom numbers with long periods and good statistical properties are often required for applications in computational finance. We consider the requirements for good uniform random number generators, and describe a class of generators whose period is a Mersenne prime or a small multiple of ..."
Abstract

Cited by 14 (5 self)
 Add to MetaCart
Pseudorandom numbers with long periods and good statistical properties are often required for applications in computational finance. We consider the requirements for good uniform random number generators, and describe a class of generators whose period is a Mersenne prime or a small multiple of a Mersenne prime. These generators are based on "almost primitive" trinomials, that is trinomials having a large primitive factor. They enable very fast vector/parallel implementations with excellent statistical properties.
A fast algorithm for testing irreducibility of trinomials mod 2
 pub199.html
, 2000
"... The standard algorithm for testing reducibility of a trinomial of prime degree r over GF(2) requires 2r+O(1) bits of memory and Θ(r 2) bitoperations. We describe an algorithm which requires only 3r/2 + O(1) bits of memory and significantly fewer bitoperations than the standard algorithm. Using the ..."
Abstract

Cited by 9 (7 self)
 Add to MetaCart
The standard algorithm for testing reducibility of a trinomial of prime degree r over GF(2) requires 2r+O(1) bits of memory and Θ(r 2) bitoperations. We describe an algorithm which requires only 3r/2 + O(1) bits of memory and significantly fewer bitoperations than the standard algorithm. Using the algorithm, we have found 18 new irreducible trinomials of degree r in the range 100151 ≤ r ≤ 700057. If r is a Mersenne exponent (i.e. 2 r −1 is a Mersenne prime), then an irreducible trinomial is primitive. Primitive trinomials are of interest because they can be used to give pseudorandom number generators with period at least 2 r − 1. We give examples of primitive trinomials for r = 756839, 859433, and 3021377. The three results for r = 756839 are new. The results for r = 859433 extend and correct some computations of Kumada et al. [Math. Comp. 69 (2000), 811–814]. The two results for r = 3021377 are primitive trinomials of the highest known degree. 1 Copyright c○2000, the authors. rpb199tr typeset using L ATEX 1 1
Uniform Random Number Generators for Vector and Parallel Computers
 REVISION APPEARED IN PROC. FIFTH AUSTRALIAN SUPERCOMPUTER CONFERENCE
, 1992
"... We consider the requirements for uniform pseudorandom number generators on modern vector and parallel machines; consider the pros and cons of various popular classes of methods and some new methods; and outline what is currently available. We then make a proposal for a class of random number gen ..."
Abstract

Cited by 8 (1 self)
 Add to MetaCart
We consider the requirements for uniform pseudorandom number generators on modern vector and parallel machines; consider the pros and cons of various popular classes of methods and some new methods; and outline what is currently available. We then make a proposal for a class of random number generators which have good statistical properties and can be implemented efficiently on vector processors and parallel machines. A proposal regarding initialization of these generators is made. We also discuss the results of a trial implementation on a Fujitsu VP 2200/10 vector processor.
A fast vectorised implementation of Wallace’s normal random number generator
 The Australian National University
, 1997
"... Abstract. Wallace has proposed a new class of pseudorandom generators for normal variates. These generators do not require a stream of uniform pseudorandom numbers, except for initialisation. The inner loops are essentially matrixvector multiplications and are very suitable for implementation on ..."
Abstract

Cited by 7 (3 self)
 Add to MetaCart
Abstract. Wallace has proposed a new class of pseudorandom generators for normal variates. These generators do not require a stream of uniform pseudorandom numbers, except for initialisation. The inner loops are essentially matrixvector multiplications and are very suitable for implementation on vector processors or vector/parallel processors such as the Fujitsu VPP300. In this report we outline Wallace’s idea, consider some variations on it, and describe a vectorised implementation RANN4 which is more than three times faster than its best competitors (the Polar and BoxMuller methods) on the Fujitsu VP2200 and VPP300. 1.