clRNG is a library for uniform random number generation in OpenCL™. This library is available as open source on GitHub.

The library provides multiple streams (a stream is a sequence of random numbers), and substreams as needed, for parallel applications and simulations. Currently, there are three base generators implemented in the library: MRG31k3p, MRG32k3a and LFSR113. Additionally, there is also a Philox-based generator from Random123 library. clRNG provides both host and device side interfaces. This enables an application to appropriately control device side execution.

For documentation, examples, build instructions, and more information, please go to the project page on GitHub.