Skip to Main content Skip to Navigation
Conference papers

ThreadLocalMRG32k3a: A Statistically Sound Substitute to Pseudorandom Number Generation in Parallel Java Applications

Abstract : Parallel And Distributed Simulations (PADS) become more and more spread since scientists always want more accurate results in the shortest time. PADS are often sensitive to several parameters, and when they own a stochastic component, one has to ensure he knows how to correctly deal with randomness in a parallel application. This point can appear to be very tricky for non-experts, who might be tempted to move this part of the simulation aside. Several software efforts have been produced in various programming languages to help developers handle pseudorandom streams partitioning in PADS. However, these tools remain third-party libraries that need to be integrated in already existing applications, and that might be hardly swappable. The latest release of the Java Development Kit (JDK 7) tries to tackle this problem with a new class called ThreadLocalRandom. The latter is in charge of safe pseudorandom number generation across Java threads. The present work studies the pros and cons of this approach, and introduces ThreadLocalMRG32k3a, an alternative to ThreadLocalRandom that shows better results in terms of generation speed and statistical quality. ThreadLocalMRG32k3a respects the same Application Programming Interface (API) as ThreadLocalRandom, thus enabling clients to use it in place of its JDK counterpart at no cost.
Complete list of metadata

Cited literature [26 references]  Display  Hide  Download
Contributor : Jonathan Passerat-Palmbach Connect in order to contact the contributor
Submitted on : Monday, December 29, 2014 - 11:16:21 AM
Last modification on : Wednesday, May 25, 2022 - 10:54:03 AM
Long-term archiving on: : Wednesday, June 3, 2015 - 12:20:25 PM


Files produced by the author(s)


Distributed under a Creative Commons Attribution 4.0 International License



Jonathan Passerat-Palmbach, Claude Mazel, David R.C. Hill. ThreadLocalMRG32k3a: A Statistically Sound Substitute to Pseudorandom Number Generation in Parallel Java Applications. IEEE High Performance Computing and Simulation conference 2012, Jul 2012, Madrid, Spain. pp.543 - 550, ⟨10.1109/HPCSim.2012.6266971⟩. ⟨hal-01098552⟩



Record views


Files downloads