Random number generators: good ones are hard to find
Communications of the ACM
The art of computer programming, volume 2 (3rd ed.): seminumerical algorithms
The art of computer programming, volume 2 (3rd ed.): seminumerical algorithms
Fast Genetic Programming and Artificial Developmental Systems on GPUs
HPCS '07 Proceedings of the 21st International Symposium on High Performance Computing Systems and Applications
Accelerating statistical static timing analysis using graphics processing units
Proceedings of the 2009 Asia and South Pacific Design Automation Conference
Proceedings of the 14th International Conference on Extending Database Technology
Proceedings of the 13th annual conference companion on Genetic and evolutionary computation
A many threaded CUDA interpreter for genetic programming
EuroGP'10 Proceedings of the 13th European conference on Genetic Programming
Fast and small nonlinear pseudorandom number generators for computer simulation
PPAM'11 Proceedings of the 9th international conference on Parallel Processing and Applied Mathematics - Volume Part I
High-performance pseudo-random number generation on graphics processing units
PPAM'11 Proceedings of the 9th international conference on Parallel Processing and Applied Mathematics - Volume Part I
Variants of Mersenne Twister Suitable for Graphic Processors
ACM Transactions on Mathematical Software (TOMS)
Computing 2d robot workspace in parallel with CUDA
SIMPAR'12 Proceedings of the Third international conference on Simulation, Modeling, and Programming for Autonomous Robots
An effective and efficient parallel approach for random graph generation over GPUs
Journal of Parallel and Distributed Computing
AusPDC '11 Proceedings of the Ninth Australasian Symposium on Parallel and Distributed Computing - Volume 118
Hi-index | 0.00 |
Previously either due to hardware GPU limits or older versions of software, careful implementation of PRNGs was required to make good use of the limited numerical precision available on graphics cards. Newer nVidia G80 and Tesla hardware support double precision. This is available to high level programmers via CUDA. This allows a much simpler C++ implementation of Park-Miller random numbers, which provides a four fold speed up compared to an earlier GPU implementation. Code is available via http://www.cs.ucl.ac.uk/staff/W.Langdon/ftp/gp-code/random-numbers/cuda_park-miller.tar.gz