A Portable Implementation of RANLUX++

A Portable Implementation of RANLUX++
复制标题

RANLUX 的便携式实现

DOI:
--
复制
发表时间:
2021
影响因子:
--
通讯作者:
L. Moneta
L. Moneta
中科院分区:
--
文献类型:
--
作者:
J. Hahnfeld;L. Moneta

文献摘要

被引文献

相似文献

高能物理学对具有高统计质量的随机数生成器 (RNG) 有着持续的需求。在本文中,我们介绍了 RANLUX++ 生成器的 ROOT 实现。我们讨论出于可移植性原因而选择仅依赖标准 C++。在初始实施的基础上,我们描述了一组提高发电机速度的优化。这使得性能非常接近原始汇编器版本。我们在 Apple M1 和 Nvidia GPU 上测试我们的实现,以展示可移植代码的优势。
High energy physics has a constant demand for random number generators (RNGs) with high statistical quality. In this paper, we present ROOT’s implementation of the RANLUX++ generator. We discuss the choice of relying only on standard C++ for portability reasons. Building on an initial implementation, we describe a set of optimizations to increase generator speed. This allows to reach performance very close to the original assembler version. We test our implementation on an Apple M1 and Nvidia GPUs to demonstrate the advantages of portable code.