========= Summary results of BigCrush ========= Version: TestU01 1.2.3 Generator: warren/32/4 Number of statistics: 160 Total CPU time: 06:19:48.03 The following tests gave p-values outside [0.001, 0.9990]: (eps means a value < 1.0e-300): (eps1 means a value < 1.0e-15): Test p-value ---------------------------------------------- 7 CollisionOver, t = 7 3.1e-4 ---------------------------------------------- All other tests were passed (This is with a revised version of Warren's code -- he found a bug -- and for a 32-bit machine, with 4 words of state.) --does it provide a description of this test? I'm not sure whether to believe this is really a test failure; if BigCrush does 160 tests we'd expect 0.32 tests to have p outside [0.001, 0.999]. E.g. they say in the BigCrush paper http://www.iro.umontreal.ca/~lecuyer/myftp/papers/testu01.pdf that the AES cryptosystem failed I think the same CollisionOver randomness test min did, with even worse p=9.2e-5, but then on re-run with different seed it easily passed it, so the failure was not genuine. They also say a "clear failure" is min(p,1-p)<10^(-10). For example "unix random 32" clearly failed 101 different Crush tests... Among generators listed in the BigCrush paper as passing all tests the fastest included ran2, MRGk5-93, Marsa-LFIB4, SuperDuper64, KISS99, Brent-xor4096s, LFib(2^64 ,55, 24,*), and ISAAC. Of those, the four best were probably Marsa-LFIB4, KISS99, Brent-xor4096s, LFib(2^64 ,55, 24,*). Note that all these 4 best generators were invented by Marsaglia and/or Brent. They are definitely the Kings. MarsaLFIB4 is: x[i] = (x[i-55] + x[i-119] + x[i-179] + x[i-256]) using a 256-element state vector and (mod 2^power) addition (any of the + may be replaced by -). Very fast and simple. I just timed it versus my own rand gen MarsaLFIB4: 2.83 sec WarrenRand: 13.23 sec and I'm 4.7X slower. However... it depends on your computer. I presume they weren't lying in the prizewinning paper when they claimed they had the fastest crushproof generators. Only reason MarsaLFIB4 can be slower than way-more-complicated PRNGs like in http://www.thesalmons.org/john/random123/papers/random123sc11.pdf is because of the memory use. With modern processors it pays to do more computing if you touch less memory. Incidentally if you re-run with only 3 state words (or surely if only 2) my randgen will presumably fail more tests, and it would be interesting to know the descriptions of the failed tests so that one then can attempt to strengthen the randgen.