A simple unpredictable pseudo random number generator
SIAM Journal on Computing
Random number generators for parallel processors
Journal of Computational and Applied Mathematics - Random numbers and simulation
EUROCRYPT '89 Proceedings of the workshop on the theory and application of cryptographic techniques on Advances in cryptology
Inversive pseudorandom number generators: concepts, results and links
WSC '95 Proceedings of the 27th conference on Winter simulation
The art of computer programming, volume 2 (3rd ed.): seminumerical algorithms
The art of computer programming, volume 2 (3rd ed.): seminumerical algorithms
Mersenne twister: a 623-dimensionally equidistributed uniform pseudo-random number generator
ACM Transactions on Modeling and Computer Simulation (TOMACS) - Special issue on uniform random number generation
On the performance of birthday spacings tests with certain families of random number generators
Mathematics and Computers in Simulation - IMACS sponsored Special issue on the second IMACS seminar on Monte Carlo methods
TestU01: A C library for empirical testing of random number generators
ACM Transactions on Mathematical Software (TOMS)
Parallel white noise generation on a GPU via cryptographic hash
Proceedings of the 2008 symposium on Interactive 3D graphics and games
New Features of Latin Dances: Analysis of Salsa, ChaCha, and Rumba
Fast Software Encryption
A fast high quality pseudo random number generator for nVidia CUDA
Proceedings of the 11th Annual Conference Companion on Genetic and Evolutionary Computation Conference: Late Breaking Papers
The design of a stream cipher LEX
SAC'06 Proceedings of the 13th international conference on Selected areas in cryptography
Differential and invertibility properties of BLAKE
FSE'10 Proceedings of the 17th international conference on Fast software encryption
GPU random numbers via the tiny encryption algorithm
Proceedings of the Conference on High Performance Graphics
On credibility of simulation studies of telecommunication networks
IEEE Communications Magazine
Hi-index | 0.00 |
In this paper we present Tyche, a nonlinear pseudorandom number generator designed for computer simulation. Tyche has a small 128-bit state and an expected period length of 2127. Unlike most nonlinear generators, Tyche is consistently fast across architectures, due to its very simple iteration function derived from ChaCha, one of today's fastest stream ciphers. Tyche is especially amenable for the highly parallel environments we find today, in particular for Graphics Processing Units (GPUs), where it enables a very large number of uncorrelated parallel streams running independently. For example, 216 parallel independent streams are expected to generate about 296 pseudorandom numbers each, without overlaps. Additionally, we determine bounds for the period length and parallelism of our generators, and evaluate their statistical quality and performance. We compare Tyche and the variant Tyche-i to the XORWOW and TEA8 generators in CPUs and GPUs. Our comparisons show that Tyche and Tyche-i simultaneously achieve high performance and excellent statistical properties, particularly when compared to other nonlinear generators.