Random Number Generators for the Julia Language.



Random number generators for the Julia language.

Build Status Build Status

Code Coverage: codecov.io

Documentation: Stable Documentation Devel Documentation

RandomNumbers.jl is a package of Julia, in which several random number generators (RNGs) are provided.

If you use the Intel Math Kernel Library (MKL), VSL.jl is also a good choice for random number generation.


This package is registered. The stable version of this package requires Julia 0.7+. You can install it by:

(v1.0) pkg> add RandomNumbers

It is recommended to run the test suites before using the package:

(v1.0) pkg> test RandomNumbers

RNG Families

There are four RNG families in this package:

  • PCG: A new family of RNG, based on linear congruential generators, using a permuted function to produce much more random output.
  • Mersenne Twister: The most widely used RNG, with long period.
  • Random123: A family of good-performance counter-based RNG.
  • Xorshift: A class of RNG based on exclusive or and bit shift.

Note that Random123 is now made a separate package as Random123.jl. You can still use your old code with RandomNumbers.Random123 as long as you import Random123 manually.


Please see the documentation for usage of this package.


This package is under MIT License.

First Commit


Last Touched

about 2 months ago


170 commits