Skip to Main content Skip to Navigation
Conference papers

Repeatability with Random Numbers Using Algorithmic Skeletons

Abstract : This article presents a solution to ensure repeatability at software level when using pseudorandom numbers in parallel computations. This is achieved automatically to ease the developer, without inducing performance loss compared to a manual approach thanks to template metaprogramming. Based on the data flow mechanism proposed in a previous work to design and execute algorithmic skeletons, we automate the correct usage of Pseudorandom Number Generator (PRNG) streams. This mechanism makes it possible to assign a PRNG stream to any part of an algorithm, and reaching repeatability can be done by providing the same random number sequence to any parallelizable task, whether it is in a parallel run, regardless of the degree of parallelism, or in a sequential one. Parallelizable tasks can easily be identified within algorithmic skeletons as they provide information about each component of their structure, accessible at compile-time. We illustrate our solution on a metaheuristic to solve an Operational Research (OR) problem that allows several levels of parallelism.
Complete list of metadata
Contributor : Bruno Bachelet Connect in order to contact the contributor
Submitted on : Friday, April 1, 2022 - 12:41:41 PM
Last modification on : Wednesday, May 25, 2022 - 10:54:03 AM
Long-term archiving on: : Saturday, July 2, 2022 - 6:38:43 PM


Files produced by the author(s)


  • HAL Id : hal-02980472, version 1


Alexis Pereda, David R.C. Hill, Claude Mazel, Bruno Bachelet. Repeatability with Random Numbers Using Algorithmic Skeletons. 34th European Simulation and Modelling Conference (ESM), Oct 2020, Toulouse, France. pp.39-46. ⟨hal-02980472⟩



Record views


Files downloads