GPU Random Numbers via the Tiny Encryption Algorithm

Fahad Zafar, Marc Olano, Aaron Curtis
University of Maryland, Baltimore County
Proceedings of the ACM SIGGRAPH Eurographics Symposium on High Performance Graphics (2010) Volume: xx, Pages: 25-27


   title={GPU random numbers via the tiny encryption algorithm},

   author={Zafar, F. and Olano, M. and Curtis, A.},

   booktitle={Proceedings of the Conference on High Performance Graphics},



   organization={Eurographics Association}


Download Download (PDF)   View View   Source Source   



Random numbers are extensively used on the GPU. As more computation is ported to the GPU, it can no longer be treated as rendering hardware alone. Random number generators (RNG) are expected to cater general purpose and graphics applications alike. Such diversity adds to expected requirements of a RNG. A good GPU RNG should be able to provide repeatability, random access, multiple independent streams, speed, and random numbers free from detectable statistical bias. A specific application may require some if not all of the above characteristics at one time. In particular, we hypothesize that not all algorithms need the highest-quality random numbers, so a good GPU RNG should provide a speed quality tradeoff that can be tuned for fast low quality or slower high quality random numbers. We propose that the Tiny Encryption Algorithm satisfies all of the requirements of a good GPU Pseudo Random Number Generator. We compare our technique against previous approaches, and present an evaluation using standard randomness test suites as well as Perlin noise and a Monte-Carlo shadow algorithm. We show that the quality of random number generation directly affects the quality of the noise produced, however, good quality noise can still be produced with a lower quality random number generator.
No votes yet.
Please wait...

* * *

* * *

HGPU group © 2010-2021 hgpu.org

All rights belong to the respective authors

Contact us: