GPU Accelerated Scalable Parallel Random Number Generators
Department of Electrical Engineering and Computer Science, University of Tennessee, Knoxville, Tennessee, USA
Symposium on Application Accelerators in High Performance Computing, 2010
@article{gao2010gpu,
title={GPU Accelerated Scalable Parallel Random Number Generators},
author={Gao, S. and Peterson, G.D.},
booktitle={Application Accelerators in High Performance Computing, 2010 Symposium, Papers},
year={2010}
}
SPRNG (Scalable Parallel Random Number Generators) is widely used in computational science applications, particularly on parallel systems. The LFG and LCG are two frequently used random number generators in this library. In this paper, LFG and LCG are implemented on GPUs in CUDA. As a library for providing random number to GPU scientific applications, GASPRNG is designed to have one generator per thread and could generate thousands of random numbers simultaneously. The performance of this implementation is measured on Tesla s1060 and Fermi GTX480 GPUs, which provide 20x ~ 100x speedup compared with the CPU version, and 10x ~ 80x speed up compared with the FPGA implementation. An application of Pi calculation using Monte Carlo methods is also presented, with results showing that this code can integrate to computational science applications.
February 19, 2011 by hgpu