Cargando…
Vectorization of Random Number Generation and Reproducibility of Concurrent Particle Transport Simulation
Efficient random number generation with high quality statistical properties and exact reproducibility of Monte Carlo simulations are important requirements in many areas of computational science. VecRNG is a package providing pseudo-random number generation (pRNG) in the context of a new library Vec...
Autores principales: | , , , , |
---|---|
Lenguaje: | eng |
Publicado: |
IOP
2020
|
Materias: | |
Acceso en línea: | https://dx.doi.org/10.1088/1742-6596/1525/1/012054 http://cds.cern.ch/record/2725591 |
_version_ | 1780966017438056448 |
---|---|
author | Jun, S Y Canal, P Apostolakis, J Gheata, A Moneta, L |
author_facet | Jun, S Y Canal, P Apostolakis, J Gheata, A Moneta, L |
author_sort | Jun, S Y |
collection | CERN |
description | Efficient random number generation with high quality statistical properties and exact reproducibility of Monte Carlo simulations are important requirements in many areas of computational science. VecRNG is a package providing pseudo-random number generation (pRNG) in the context of a new library VecMath. This library bundles up several general-purpose mathematical utilities, data structures, and algorithms having both SIMD and SIMT (GPUs) support based on VecCore.~Several state-of-the-art RNG algorithms are implemented as kernels supporting parallel generation of random numbers in scalar, vector, and Cuda workflows. In this report, we will present design considerations, implementation details, and computing performance of parallel pRNG engines on both CPU and GPU. Reproducibility of propagating multiple particles in parallel for HEP event simulation is demonstrated, using GeantV-based examples, for both sequential and fine-grain track-level concurrent simulation wor kflows. Strategies for efficient uses of vectorized pRNG and non-overlapping streams of random number sequences in concurrent computing environments is discussed as well. |
id | oai-inspirehep.net-1754423 |
institution | Organización Europea para la Investigación Nuclear |
language | eng |
publishDate | 2020 |
publisher | IOP |
record_format | invenio |
spelling | oai-inspirehep.net-17544232021-02-09T10:07:24Zdoi:10.1088/1742-6596/1525/1/012054http://cds.cern.ch/record/2725591engJun, S YCanal, PApostolakis, JGheata, AMoneta, LVectorization of Random Number Generation and Reproducibility of Concurrent Particle Transport SimulationComputing and ComputersEfficient random number generation with high quality statistical properties and exact reproducibility of Monte Carlo simulations are important requirements in many areas of computational science. VecRNG is a package providing pseudo-random number generation (pRNG) in the context of a new library VecMath. This library bundles up several general-purpose mathematical utilities, data structures, and algorithms having both SIMD and SIMT (GPUs) support based on VecCore.~Several state-of-the-art RNG algorithms are implemented as kernels supporting parallel generation of random numbers in scalar, vector, and Cuda workflows. In this report, we will present design considerations, implementation details, and computing performance of parallel pRNG engines on both CPU and GPU. Reproducibility of propagating multiple particles in parallel for HEP event simulation is demonstrated, using GeantV-based examples, for both sequential and fine-grain track-level concurrent simulation wor kflows. Strategies for efficient uses of vectorized pRNG and non-overlapping streams of random number sequences in concurrent computing environments is discussed as well.Efficient random number generation with high quality statistical properties and exact reproducibility of Monte Carlo simulations are important requirements in many areas of computational science. VecRNG is a package providing pseudo-random number generation (pRNG) in the context of a new library VecMath. This library bundles up several general-purpose mathematical utilities, data structures, and algorithms having both SIMD and SIMT (GPUs) support based on VecCore. Several state-of-the-art RNG algorithms are implemented as kernels supporting parallel generation of random numbers in scalar, vector, and Cuda workflows. In this report, we will present design considerations, implementation details, and computing performance of parallel pRNG engines on both CPU and GPU. Reproducibility of propagating multiple particles in parallel for HEP event simulation is demonstrated, using GeantV-based examples, for both sequential and fine-grain track-level concurrent simulation workflows. Strategies for efficient uses of vectorized pRNG and non-overlapping streams of random number sequences in concurrent computing environments is discussed as well.IOPFERMILAB-CONF-19-035-CDoai:inspirehep.net:17544232020 |
spellingShingle | Computing and Computers Jun, S Y Canal, P Apostolakis, J Gheata, A Moneta, L Vectorization of Random Number Generation and Reproducibility of Concurrent Particle Transport Simulation |
title | Vectorization of Random Number Generation and Reproducibility of Concurrent Particle Transport Simulation |
title_full | Vectorization of Random Number Generation and Reproducibility of Concurrent Particle Transport Simulation |
title_fullStr | Vectorization of Random Number Generation and Reproducibility of Concurrent Particle Transport Simulation |
title_full_unstemmed | Vectorization of Random Number Generation and Reproducibility of Concurrent Particle Transport Simulation |
title_short | Vectorization of Random Number Generation and Reproducibility of Concurrent Particle Transport Simulation |
title_sort | vectorization of random number generation and reproducibility of concurrent particle transport simulation |
topic | Computing and Computers |
url | https://dx.doi.org/10.1088/1742-6596/1525/1/012054 http://cds.cern.ch/record/2725591 |
work_keys_str_mv | AT junsy vectorizationofrandomnumbergenerationandreproducibilityofconcurrentparticletransportsimulation AT canalp vectorizationofrandomnumbergenerationandreproducibilityofconcurrentparticletransportsimulation AT apostolakisj vectorizationofrandomnumbergenerationandreproducibilityofconcurrentparticletransportsimulation AT gheataa vectorizationofrandomnumbergenerationandreproducibilityofconcurrentparticletransportsimulation AT monetal vectorizationofrandomnumbergenerationandreproducibilityofconcurrentparticletransportsimulation |