This repo contains an API to ease the interaction with ranlux
and
dSFMT
, which are libraries for pseudo-random numbers generation.
There also are some examples and benchmarks.
Compile with
./complile.sh
Content:
api-ov
: it shows how to use the APIs. Run withrun-ov.sh
api-ov-bis
: it shows how to use the APIs separating the allocation from the generation. Run withrun-ov-bis.sh
bench-ram
: monitors the permormance ofranlux
anddSFMT
by generating a large random array. Run withrun-ram.sh
bench-disk
: similar torandom-test-ram
, but uses smaller arrays and saves them to the disk. Run withrun-disk.sh
bench-disk-repeat
: repeats the test a certain number of times. Run withrun-disk-repeat.sh
.bench-ram-repeat
: repeats the test a certain number of times. Run withbench-ram-repeat.sh
.
Libraries source code can be found
ranlux
: http://luscher.web.cern.ch/luscher/ranlux/dSFMT
: http://www.math.sci.hiroshima-u.ac.jp/~m-mat/MT/SFMT/
Compiling dSFMT
inspired by http://www.math.sci.hiroshima-u.ac.jp/~m-mat/MT/SFMT/howto-compile.html
I do not own the copyright of ranlux
and dSFMT
. I included their
source code here accordingly to their license.
I only wrote the *-api
libraries and the examples, which are distributed with GPLv3.
I included everything in a single repo to have a solid base to include
in my projects that require solid PRNGs.