The Graphcore Intelligent Processing Unit contains an original pseudorandom number generator (PRNG) called xoroshiro128aox, based on the F2-linear generator xoroshiro128. It is designed to be cheap to implement in hardware and provide high-quality statistical randomness. In this paper, we present a rigorous assessment of the generator's quality using standard statistical test suites and compare the results with the fast contemporary PRNGs xoroshiro128+, pcg64 and philox4x32-10. We show that xoroshiro128aox mitigates the known weakness in the lower order bits of xoroshiro128+ with a new 'AOX' output function by passing the BigCrush and PractRand suites, but we note that the function is not provably uniform. We focus our testing with specific tests for linear artefacts to highlight the weaknesses of both xoroshiro128 PRNGs, but conclude that they are hard to detect, and xoroshiro128aox otherwise provides an excellent trade off between statistical quality and hardware implementation cost.
翻译:石墨智能处理股以F2-线性发电机Xorosho128128为根据,拥有原型假冒号码发电机(PRNG),称为xoroshiro128aox,设计成本低廉,可以用于硬件,提供高质量的统计随机性。在本文中,我们使用标准的统计测试套件对发电机的质量进行严格评估,并将结果与当代快速的PRNGs xrooshiro128+、pcg64和philox4x32-10进行比较。我们表明,xoroshiro128aox通过通过BigCrush和practRand套件来减轻已知的X值低级点的已知弱点,而新的“AOX”输出功能,但我们注意到,该功能并不完全一致。我们把测试的重点放在对线性工艺的具体测试上,以突出Xoroshiro128 PPRNG的弱点,但结论是难以检测的,而xoroshilo128aox则提供了统计质量和硬件执行成本之间的极差。