Fast, high-quality pseudo random number generators for heterogeneous computing

被引:0
|
作者
Barbone, Marco [1 ]
Gaydadjiev, Georgi [3 ]
Howard, Alexander [1 ]
Luk, Wayne [1 ]
Savvidy, George [2 ]
Savvidy, Konstantin [2 ]
Rose, Andrew [1 ]
Tapper, Alexander [1 ]
机构
[1] Imperial Coll London, London, England
[2] Inst Nucl & Particle Phys, Demokritos Natl Res Ctr, GR-15342 Athens, Greece
[3] Univ Groningen, Bernoulli Inst, Nijenborgh 9, NL-9747 AG Groningen, Netherlands
关键词
D O I
10.1051/epjconf/202429511010
中图分类号
TP39 [计算机的应用];
学科分类号
081203 ; 0835 ;
摘要
Random number generation is key to many applications in a wide variety of disciplines. Depending on the application, the quality of the random numbers from a particular generator can directly impact both computational performance and critically the outcome of the calculation. High-energy physics applications use Monte Carlo simulations and machine learning widely, which both require high-quality random numbers. In recent years, to meet increasing performance requirements, many high-energy physics workloads leverage GPU acceleration. While on a CPU, there exist a wide variety of generators with different performance and quality characteristics, the same cannot be stated for GPU and FPGA accelerators. On GPUs, the most common implementation is provided by cuRAND - an NVIDIA library that is not open source or peer reviewed by the scientific community. The highest-quality generator implemented in cuRAND is a version of the Mersenne Twister. Given the availability of better and faster random number generators, high-energy physics moved away from Mersenne Twister several years ago and nowadays MIXMAX is the standard generator in Geant4 via CLHEP. The MIXMAX original design supports parallel streams with a seeding algorithm that makes it especially suited for GPU and FPGA where extreme parallelism is a key factor. In this study we implement the MIXMAX generator on both architectures and analyze its suitability and applicability for accelerator implementations. We evaluated the results against "Mersenne Twister for a Graphic Processor" (MTGP32) on GPUs which resulted in 5, 13 and 14 times higher throughput when a 240, 17 and 8 sized vector space was used respectively. The MIXMAX generator coded in VHDL and implemented on Xilinx Ultrascale+ FPGAs, requires 50% fewer total Look Up Tables (LUTs) compared to a 32-bit Mersenne Twister (MT-19337), or 75% fewer LUTs per output bit. In summary, the state-of-the art MIXMAX pseudo random number generator has been implemented on GPU and FPGA platforms and the performance benchmarked.
引用
收藏
页数:8
相关论文
共 50 条
  • [21] CLASSIFICATION AND REALIZATION OF PSEUDO-RANDOM NUMBER GENERATORS
    MARTIN, CF
    STAMP, M
    SYSTEMS & CONTROL LETTERS, 1990, 14 (02) : 169 - 175
  • [22] ADDITIVE CONGRUENTIAL PSEUDO-RANDOM NUMBER GENERATORS
    MILLER, JCP
    PRENTICE, MJ
    COMPUTER JOURNAL, 1968, 11 (03): : 341 - &
  • [23] THE LATTICE STRUCTURE OF PSEUDO-RANDOM NUMBER GENERATORS
    RIPLEY, BD
    PROCEEDINGS OF THE ROYAL SOCIETY OF LONDON SERIES A-MATHEMATICAL PHYSICAL AND ENGINEERING SCIENCES, 1983, 389 (1796): : 197 - 204
  • [24] DNS Pseudo-Random Number Generators Weakness
    Szmit, Maciej
    Szmit, Anna
    COMPUTER NETWORKS, 2011, 160 : 298 - 305
  • [25] MULTIPLICATIVE CONGRUENTIAL PSEUDO-RANDOM NUMBER GENERATORS
    DOWNHAM, DY
    ROBERTS, FDK
    COMPUTER JOURNAL, 1967, 10 (01): : 74 - &
  • [26] On the quality of random number generators with taps
    Shchur, Lev N.
    Computer Physics Communications, 1999, 121 : 83 - 85
  • [27] Stochastic investigations of pseudo-random number generators
    Ugrin-Sparac, G.
    Computing (Vienna/New York), 1991, 46 (01): : 67 - 86
  • [28] Improving the Statistical Qualities of Pseudo Random Number Generators
    Alvarez, Rafael
    Martinez, Francisco
    Zamora, Antonio
    SYMMETRY-BASEL, 2022, 14 (02):
  • [29] A Repetition Test for Pseudo-Random Number Generators
    Gil, Manuel
    Gonnet, Gaston H.
    Petersen, Wesley P.
    MONTE CARLO METHODS AND APPLICATIONS, 2006, 12 (5-6): : 385 - 393
  • [30] STATISTICAL TEST FOR PSEUDO-RANDOM NUMBER GENERATORS
    GARPMAN, S
    RANDRUP, J
    COMPUTER PHYSICS COMMUNICATIONS, 1978, 15 (1-2) : 5 - 13