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.shContent:
api-ov: it shows how to use the APIs. Run withrun-ov.shapi-ov-bis: it shows how to use the APIs separating the allocation from the generation. Run withrun-ov-bis.shbench-ram: monitors the permormance ofranluxanddSFMTby generating a large random array. Run withrun-ram.shbench-disk: similar torandom-test-ram, but uses smaller arrays and saves them to the disk. Run withrun-disk.shbench-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.