Speed and portability issues for random number generation on graphical processing units with CUDA and other processing accelerators

  • Authors:
  • K. A. Hawick;A. Leist;D. P. Playne;M. J. Johnson

  • Affiliations:
  • Massey University -- Albany, Auckland, New Zealand;Massey University -- Albany, Auckland, New Zealand;Massey University -- Albany, Auckland, New Zealand;Massey University -- Albany, Auckland, New Zealand

  • Venue:
  • AusPDC '11 Proceedings of the Ninth Australasian Symposium on Parallel and Distributed Computing - Volume 118
  • Year:
  • 2011

Quantified Score

Hi-index 0.00

Visualization

Abstract

Generating quality random numbers is a performance-critical application for many scientific simulations. Modern processing acceleration techniques such as: graphical co-processing units(GPUs), multi-core conventional CPUs; special purpose multi-core CPUs; and parallel computing approaches such as multi-threading on shared memory or message passing on clusters, all offer ways to speed up random number generation (RNG). Providing fast generators that are also portable across hardware and software platforms is non-trivial however, particularly since many of the powerful devices available at present do not yet support full 64-bit operations upon which many good RNG algorithms rely. We report performance data for a range of common RNG algorithms on devices including: GPUs; CellBE; multicore CPUs; and hybrids, and discuss algorithmic and implementation issues.