18th International Parallel and Distributed Processing Symposium (IPDPS'04) - Workshop 5
JAPARA — A Java Parallel Random Number Generator Library for High-Performance Computing
Santa Fe, New Mexico
April 26-April 30
ISBN: 0-7695-2132-0
Random number generators are one of the most common numerical library functions used in scientific applications. The standard random number generator provided within Java is fine for most purposes, however it does not adequately meet the needs of large-scale scientific applications, such as Monte Carlo simulations. Previous work has addressed some of these problems by extending the standard Random API in Java and providing an implementation that includes a choice of several different generator algorithms. One issue that was not addressed in this work was concurrency. Implementations of the standard Java random number generator use synchronized methods to support the use of the generator across multiple Java threads, however this is a sequential bottleneck for parallel applications. Here we present a proposal for further extending the standard API to support parallel generation of random number streams, which we have implemented in JAPARA, a Java Parallel Random Number Generator Library for high-performance computing.
Citation:
P. D. Coddington, A. J. Newell, "JAPARA — A Java Parallel Random Number Generator Library for High-Performance Computing," ipdps, vol. 6, pp.156a, 18th International Parallel and Distributed Processing Symposium (IPDPS'04) - Workshop 5, 2004