Hacker News new | ask | show | jobs
by dhekir 3988 days ago
I must have done something wrong, but I tried the basic C implementation (https://github.com/imneme/pcg-c-basic) on a quick Diehard-like test and it failed. I'm still trying to understand why. Probably not its fault, just that the code is not as forgiving and ready-to-consume as I had expected.
1 comments

It passed for me. Where did you get the diehard test? If you compiled it directly from http://www.stat.fsu.edu/pub/diehard/ then it is because that source is broken.
Try using Dieharder. It incorporates most of the Diehard tests, as well as other tests and is much more rigorous.

sudo apt-get install dieharder

http://www.phy.duke.edu/~rgb/General/dieharder.php

If you make a GSL interface for the RNG it will make using dieharder much easier

How do you build dieharder on windows? I guess you just don't...
I actually tried a modified OCaml implementation of a very simple test. The issue is probably due to bad seeding/initialization: if I use the given static seed, it passes, but if I try to provide any other seed, it fails on at least one test.

I'll try to find a more complete/better tested port, or try to do it myself.