2 research outputs found

    Adaptation of a long-period composite random number generator for parallel processing

    Get PDF
    An efficient and statistically reliable random number generator is one of the most important requirements for effective Monte Carlo simulation. The latest trend in supercomputing being towards parallelization, a random number generator was designed that will allow the generation of several uncorrelated streams of random numbers in parallel. This is achieved by the division of one period of a good serial random number generator into intervals of uniform length, one interval per processor. The serial random number generator chosen was the Marsaglia - Zaman random number generator which is a long period composite random number generator combining a linear congruential sequence with a lagged Fibonacci sequence. The mathematical relation between distantly separated seed values in each of the sequences was considered and a method was developed to obtain values from the Marsaglia - Zaman sequence spaced from each other by the length of a specified interval called the jump distance. Program\u27s implementing the algorithm were written in C and Fortran. Seed values obtained from the programs can be used to initialize different processors to use different portions of the Marsaglia - Zaman sequence. The seed values obtained by looping through all the random numbers in a section of the Marsaglia - Zaman sequence were shown to be identical to the seed values obtained from the developed algorithm. The execution time for the developed method was shown to increase only as the order of log2(jump distance)
    corecore