-------------------------------------------------------------------------------
--- Testing Murmur1 "MurmurHash1" POOR

[[[ Sanity Tests ]]]

Verification value 0x9EA7D056 ....... PASS
Running sanity check 1     .......... PASS
Running AppendedZeroesTest .......... PASS

[[[ Speed Tests ]]]

Bulk speed test - 262144-byte keys
Alignment  7 -  0.709 bytes/cycle - 2027.61 MiB/sec @ 3 ghz
Alignment  6 -  0.709 bytes/cycle - 2027.63 MiB/sec @ 3 ghz
Alignment  5 -  0.709 bytes/cycle - 2027.57 MiB/sec @ 3 ghz
Alignment  4 -  0.709 bytes/cycle - 2028.28 MiB/sec @ 3 ghz
Alignment  3 -  0.709 bytes/cycle - 2027.52 MiB/sec @ 3 ghz
Alignment  2 -  0.709 bytes/cycle - 2027.68 MiB/sec @ 3 ghz
Alignment  1 -  0.709 bytes/cycle - 2028.47 MiB/sec @ 3 ghz
Alignment  0 -  0.709 bytes/cycle - 2028.03 MiB/sec @ 3 ghz
Average      -  0.709 bytes/cycle - 2027.85 MiB/sec @ 3 ghz

Small key speed test -    1-byte keys -    28.00 cycles/hash
Small key speed test -    2-byte keys -    30.00 cycles/hash
Small key speed test -    3-byte keys -    31.59 cycles/hash
Small key speed test -    4-byte keys -    28.00 cycles/hash
Small key speed test -    5-byte keys -    34.71 cycles/hash
Small key speed test -    6-byte keys -    35.00 cycles/hash
Small key speed test -    7-byte keys -    36.00 cycles/hash
Small key speed test -    8-byte keys -    34.00 cycles/hash
Small key speed test -    9-byte keys -    39.57 cycles/hash
Small key speed test -   10-byte keys -    41.00 cycles/hash
Small key speed test -   11-byte keys -    42.00 cycles/hash
Small key speed test -   12-byte keys -    39.98 cycles/hash
Small key speed test -   13-byte keys -    45.16 cycles/hash
Small key speed test -   14-byte keys -    47.00 cycles/hash
Small key speed test -   15-byte keys -    47.97 cycles/hash
Small key speed test -   16-byte keys -    45.26 cycles/hash
Small key speed test -   17-byte keys -    51.00 cycles/hash
Small key speed test -   18-byte keys -    52.00 cycles/hash
Small key speed test -   19-byte keys -    53.00 cycles/hash
Small key speed test -   20-byte keys -    50.99 cycles/hash
Small key speed test -   21-byte keys -    57.00 cycles/hash
Small key speed test -   22-byte keys -    57.72 cycles/hash
Small key speed test -   23-byte keys -    58.79 cycles/hash
Small key speed test -   24-byte keys -    56.50 cycles/hash
Small key speed test -   25-byte keys -    63.00 cycles/hash
Small key speed test -   26-byte keys -    63.82 cycles/hash
Small key speed test -   27-byte keys -    64.90 cycles/hash
Small key speed test -   28-byte keys -    62.00 cycles/hash
Small key speed test -   29-byte keys -    67.93 cycles/hash
Small key speed test -   30-byte keys -    69.00 cycles/hash
Small key speed test -   31-byte keys -    70.84 cycles/hash
Average                                    48.507 cycles/hash

[[[ 'Hashmap' Speed Tests ]]]

std::unordered_map
Init std HashMapTest:     705.832 cycles/op (479826 inserts, 1% deletions)
Running std HashMapTest:  602.440 cycles/op (6.4 stdv)

greg7mdp/parallel-hashmap
Init fast HashMapTest:    771.615 cycles/op (479826 inserts, 1% deletions)
Running fast HashMapTest: 459.586 cycles/op (12.2 stdv)  ....... PASS

[[[ Avalanche Tests ]]]

Testing   24-bit keys ->  32-bit hashes, 300000 reps.......... worst bias is 0.557333%
Testing   32-bit keys ->  32-bit hashes, 300000 reps.......... worst bias is 0.744000%
Testing   40-bit keys ->  32-bit hashes, 300000 reps.......... worst bias is 0.620667%
Testing   48-bit keys ->  32-bit hashes, 300000 reps.......... worst bias is 0.807333%
Testing   56-bit keys ->  32-bit hashes, 300000 reps.......... worst bias is 0.611333%
Testing   64-bit keys ->  32-bit hashes, 300000 reps.......... worst bias is 0.608000%
Testing   72-bit keys ->  32-bit hashes, 300000 reps.......... worst bias is 0.609333%
Testing   80-bit keys ->  32-bit hashes, 300000 reps.......... worst bias is 0.843333%
Testing   96-bit keys ->  32-bit hashes, 300000 reps.......... worst bias is 0.706667%
Testing  112-bit keys ->  32-bit hashes, 300000 reps.......... worst bias is 0.733333%
Testing  128-bit keys ->  32-bit hashes, 300000 reps.......... worst bias is 0.855333%
Testing  160-bit keys ->  32-bit hashes, 300000 reps.......... worst bias is 0.760667%
Testing  512-bit keys ->  32-bit hashes, 300000 reps.......... worst bias is 0.825333%
Testing 1024-bit keys ->  32-bit hashes, 300000 reps.......... worst bias is 0.731333%

[[[ Keyset 'Sparse' Tests ]]]

Keyset 'Sparse' - 16-bit keys with up to 9 bits set - 50643 keys
Testing collisions ( 32-bit) - Expected    0.3, actual      0 (0.00x)
Testing collisions (high 19-25 bits) - Worst is 24 bits: 88/76 (1.15x)
Testing collisions (low  19-25 bits) - Worst is 25 bits: 38/38 (0.99x)
Testing distribution - Worst bias is the 13-bit window at bit  6 - 0.544%

Keyset 'Sparse' - 24-bit keys with up to 8 bits set - 1271626 keys
Testing collisions ( 32-bit) - Expected  188.2, actual      0 (0.00x)
Testing distribution - Worst bias is the 17-bit window at bit  9 - 0.094%

Keyset 'Sparse' - 32-bit keys with up to 7 bits set - 4514873 keys
Testing collisions ( 32-bit) - Expected 2372.2, actual      0 (0.00x)
Testing distribution - Worst bias is the 19-bit window at bit  7 - 0.050%

Keyset 'Sparse' - 40-bit keys with up to 6 bits set - 4598479 keys
Testing collisions ( 32-bit) - Expected 2460.8, actual   2142 (0.87x)
Testing distribution - Worst bias is the 19-bit window at bit 17 - 0.044%

Keyset 'Sparse' - 48-bit keys with up to 6 bits set - 14196869 keys
Testing collisions ( 32-bit) - Expected 23437.8, actual  77516 (3.31x) (54079) !!!!!

Keyset 'Sparse' - 56-bit keys with up to 5 bits set - 4216423 keys
Testing collisions ( 32-bit) - Expected 2069.0, actual   7865 (3.80x) (5797) !!!!!

Keyset 'Sparse' - 64-bit keys with up to 5 bits set - 8303633 keys
Testing collisions ( 32-bit) - Expected 8021.7, actual 353639 (44.09x) (345618) !!!!!

Keyset 'Sparse' - 72-bit keys with up to 5 bits set - 15082603 keys
Testing collisions ( 32-bit) - Expected 26451.8, actual 486947 (18.41x) (460496) !!!!!

Keyset 'Sparse' - 96-bit keys with up to 4 bits set - 3469497 keys
Testing collisions ( 32-bit) - Expected 1401.0, actual  72834 (51.99x) (71434) !!!!!

Keyset 'Sparse' - 160-bit keys with up to 4 bits set - 26977161 keys
Testing collisions ( 32-bit) - Expected 84546.1, actual 439833 (5.20x) (355287) !!!!!

Keyset 'Sparse' - 256-bit keys with up to 3 bits set - 2796417 keys
Testing collisions ( 32-bit) - Expected  910.2, actual  13477 (14.81x) (12567) !!!!!

Keyset 'Sparse' - 512-bit keys with up to 3 bits set - 22370049 keys
Testing collisions ( 32-bit) - Expected 58155.4, actual 105990 (1.82x) (47835)
Testing distribution - Worst bias is the 20-bit window at bit 16 - 0.034%

Keyset 'Sparse' - 1024-bit keys with up to 2 bits set - 524801 keys
Testing collisions ( 32-bit) - Expected   32.1, actual    231 (7.20x) (199) !!!!!

Keyset 'Sparse' - 2048-bit keys with up to 2 bits set - 2098177 keys
Testing collisions ( 32-bit) - Expected  512.4, actual    931 (1.82x) (419)
Testing distribution - Worst bias is the 18-bit window at bit  9 - 0.075%

*********FAIL*********

[[[ Keyset 'Permutation' Tests ]]]

Combination Lowbits Tests:
Keyset 'Combination' - up to 7 blocks from a set of 8 - 2396744 keys
Testing collisions ( 32-bit) - Expected  668.6, actual    711 (1.06x) (43)
Testing distribution - Worst bias is the 18-bit window at bit 27 - 0.068%


Combination Highbits Tests
Keyset 'Combination' - up to 7 blocks from a set of 8 - 2396744 keys
Testing collisions ( 32-bit) - Expected  668.6, actual    256 (0.38x)
Testing distribution - Worst bias is the 17-bit window at bit  5 - 0.035%


Combination Hi-Lo Tests:
Keyset 'Combination' - up to 6 blocks from a set of 15 - 12204240 keys
Testing collisions ( 32-bit) - Expected 17322.9, actual  17557 (1.01x) (235)
Testing distribution - Worst bias is the 20-bit window at bit 23 - 0.020%


Combination 0x8000000 Tests:
Keyset 'Combination' - up to 22 blocks from a set of 2 - 8388606 keys
Testing collisions ( 32-bit) - Expected 8186.7, actual   8488 (1.04x) (302)
Testing distribution - Worst bias is the 20-bit window at bit 23 - 0.036%


Combination 0x0000001 Tests:
Keyset 'Combination' - up to 22 blocks from a set of 2 - 8388606 keys
Testing collisions ( 32-bit) - Expected 8186.7, actual   8246 (1.01x) (60)
Testing distribution - Worst bias is the 19-bit window at bit  3 - 0.030%


Combination 0x800000000000000 Tests:
Keyset 'Combination' - up to 22 blocks from a set of 2 - 8388606 keys
Testing collisions ( 32-bit) - Expected 8186.7, actual   8282 (1.01x) (96)
Testing distribution - Worst bias is the 20-bit window at bit  1 - 0.029%


Combination 0x000000000000001 Tests:
Keyset 'Combination' - up to 22 blocks from a set of 2 - 8388606 keys
Testing collisions ( 32-bit) - Expected 8186.7, actual   7851 (0.96x)
Testing distribution - Worst bias is the 19-bit window at bit 17 - 0.040%


Combination 16-bytes [0-1] Tests:
Keyset 'Combination' - up to 22 blocks from a set of 2 - 8388606 keys
Testing collisions ( 32-bit) - Expected 8186.7, actual   8003 (0.98x)
Testing distribution - Worst bias is the 19-bit window at bit 10 - 0.021%


Combination 16-bytes [0-last] Tests:
Keyset 'Combination' - up to 22 blocks from a set of 2 - 8388606 keys
Testing collisions ( 32-bit) - Expected 8186.7, actual   8238 (1.01x) (52)
Testing distribution - Worst bias is the 20-bit window at bit 30 - 0.035%


Combination 32-bytes [0-1] Tests:
Keyset 'Combination' - up to 22 blocks from a set of 2 - 8388606 keys
Testing collisions ( 32-bit) - Expected 8186.7, actual   8290 (1.01x) (104)
Testing distribution - Worst bias is the 20-bit window at bit 11 - 0.041%


Combination 32-bytes [0-last] Tests:
Keyset 'Combination' - up to 22 blocks from a set of 2 - 8388606 keys
Testing collisions ( 32-bit) - Expected 8186.7, actual   8388 (1.02x) (202)
Testing distribution - Worst bias is the 20-bit window at bit 27 - 0.046%


Combination 64-bytes [0-1] Tests:
Keyset 'Combination' - up to 22 blocks from a set of 2 - 8388606 keys
Testing collisions ( 32-bit) - Expected 8186.7, actual   8060 (0.98x) (-126)
Testing distribution - Worst bias is the 19-bit window at bit 19 - 0.027%


Combination 64-bytes [0-last] Tests:
Keyset 'Combination' - up to 22 blocks from a set of 2 - 8388606 keys
Testing collisions ( 32-bit) - Expected 8186.7, actual   8240 (1.01x) (54)
Testing distribution - Worst bias is the 20-bit window at bit  1 - 0.025%


Combination 128-bytes [0-1] Tests:
Keyset 'Combination' - up to 22 blocks from a set of 2 - 8388606 keys
Testing collisions ( 32-bit) - Expected 8186.7, actual   8014 (0.98x)
Testing distribution - Worst bias is the 20-bit window at bit 26 - 0.048%


Combination 128-bytes [0-last] Tests:
Keyset 'Combination' - up to 22 blocks from a set of 2 - 8388606 keys
Testing collisions ( 32-bit) - Expected 8186.7, actual   7918 (0.97x)
Testing distribution - Worst bias is the 20-bit window at bit  5 - 0.047%


[[[ Keyset 'Window' Tests ]]]

Keyset 'Window' -  72-bit key,  20-bit window - 72 tests, 1048576 keys per test
Window at   0 - Testing collisions ( 32-bit) - Expected  128.0, actual      0 (0.00x)
Window at   1 - Testing collisions ( 32-bit) - Expected  128.0, actual      0 (0.00x)
Window at   2 - Testing collisions ( 32-bit) - Expected  128.0, actual      0 (0.00x)
Window at   3 - Testing collisions ( 32-bit) - Expected  128.0, actual      0 (0.00x)
Window at   4 - Testing collisions ( 32-bit) - Expected  128.0, actual      0 (0.00x)
Window at   5 - Testing collisions ( 32-bit) - Expected  128.0, actual      0 (0.00x)
Window at   6 - Testing collisions ( 32-bit) - Expected  128.0, actual      0 (0.00x)
Window at   7 - Testing collisions ( 32-bit) - Expected  128.0, actual      0 (0.00x)
Window at   8 - Testing collisions ( 32-bit) - Expected  128.0, actual      0 (0.00x)
Window at   9 - Testing collisions ( 32-bit) - Expected  128.0, actual      0 (0.00x)
Window at  10 - Testing collisions ( 32-bit) - Expected  128.0, actual      0 (0.00x)
Window at  11 - Testing collisions ( 32-bit) - Expected  128.0, actual      0 (0.00x)
Window at  12 - Testing collisions ( 32-bit) - Expected  128.0, actual      0 (0.00x)
Window at  13 - Testing collisions ( 32-bit) - Expected  128.0, actual      0 (0.00x)
Window at  14 - Testing collisions ( 32-bit) - Expected  128.0, actual      0 (0.00x)
Window at  15 - Testing collisions ( 32-bit) - Expected  128.0, actual      0 (0.00x)
Window at  16 - Testing collisions ( 32-bit) - Expected  128.0, actual      0 (0.00x)
Window at  17 - Testing collisions ( 32-bit) - Expected  128.0, actual      0 (0.00x)
Window at  18 - Testing collisions ( 32-bit) - Expected  128.0, actual      0 (0.00x)
Window at  19 - Testing collisions ( 32-bit) - Expected  128.0, actual      0 (0.00x)
Window at  20 - Testing collisions ( 32-bit) - Expected  128.0, actual      0 (0.00x)
Window at  21 - Testing collisions ( 32-bit) - Expected  128.0, actual      0 (0.00x)
Window at  22 - Testing collisions ( 32-bit) - Expected  128.0, actual      0 (0.00x)
Window at  23 - Testing collisions ( 32-bit) - Expected  128.0, actual      0 (0.00x)
Window at  24 - Testing collisions ( 32-bit) - Expected  128.0, actual      0 (0.00x)
Window at  25 - Testing collisions ( 32-bit) - Expected  128.0, actual      0 (0.00x)
Window at  26 - Testing collisions ( 32-bit) - Expected  128.0, actual      0 (0.00x)
Window at  27 - Testing collisions ( 32-bit) - Expected  128.0, actual      0 (0.00x)
Window at  28 - Testing collisions ( 32-bit) - Expected  128.0, actual      0 (0.00x)
Window at  29 - Testing collisions ( 32-bit) - Expected  128.0, actual      0 (0.00x)
Window at  30 - Testing collisions ( 32-bit) - Expected  128.0, actual      0 (0.00x)
Window at  31 - Testing collisions ( 32-bit) - Expected  128.0, actual      0 (0.00x)
Window at  32 - Testing collisions ( 32-bit) - Expected  128.0, actual      0 (0.00x)
Window at  33 - Testing collisions ( 32-bit) - Expected  128.0, actual      0 (0.00x)
Window at  34 - Testing collisions ( 32-bit) - Expected  128.0, actual      0 (0.00x)
Window at  35 - Testing collisions ( 32-bit) - Expected  128.0, actual      0 (0.00x)
Window at  36 - Testing collisions ( 32-bit) - Expected  128.0, actual      0 (0.00x)
Window at  37 - Testing collisions ( 32-bit) - Expected  128.0, actual      0 (0.00x)
Window at  38 - Testing collisions ( 32-bit) - Expected  128.0, actual      0 (0.00x)
Window at  39 - Testing collisions ( 32-bit) - Expected  128.0, actual      0 (0.00x)
Window at  40 - Testing collisions ( 32-bit) - Expected  128.0, actual      0 (0.00x)
Window at  41 - Testing collisions ( 32-bit) - Expected  128.0, actual      0 (0.00x)
Window at  42 - Testing collisions ( 32-bit) - Expected  128.0, actual      0 (0.00x)
Window at  43 - Testing collisions ( 32-bit) - Expected  128.0, actual      0 (0.00x)
Window at  44 - Testing collisions ( 32-bit) - Expected  128.0, actual      0 (0.00x)
Window at  45 - Testing collisions ( 32-bit) - Expected  128.0, actual      0 (0.00x)
Window at  46 - Testing collisions ( 32-bit) - Expected  128.0, actual      0 (0.00x)
Window at  47 - Testing collisions ( 32-bit) - Expected  128.0, actual      0 (0.00x)
Window at  48 - Testing collisions ( 32-bit) - Expected  128.0, actual      0 (0.00x)
Window at  49 - Testing collisions ( 32-bit) - Expected  128.0, actual      0 (0.00x)
Window at  50 - Testing collisions ( 32-bit) - Expected  128.0, actual      0 (0.00x)
Window at  51 - Testing collisions ( 32-bit) - Expected  128.0, actual      0 (0.00x)
Window at  52 - Testing collisions ( 32-bit) - Expected  128.0, actual      0 (0.00x)
Window at  53 - Testing collisions ( 32-bit) - Expected  128.0, actual      0 (0.00x)
Window at  54 - Testing collisions ( 32-bit) - Expected  128.0, actual      0 (0.00x)
Window at  55 - Testing collisions ( 32-bit) - Expected  128.0, actual      0 (0.00x)
Window at  56 - Testing collisions ( 32-bit) - Expected  128.0, actual      0 (0.00x)
Window at  57 - Testing collisions ( 32-bit) - Expected  128.0, actual      0 (0.00x)
Window at  58 - Testing collisions ( 32-bit) - Expected  128.0, actual      0 (0.00x)
Window at  59 - Testing collisions ( 32-bit) - Expected  128.0, actual   5120 (40.00x) (4993) !!!!!
Window at  60 - Testing collisions ( 32-bit) - Expected  128.0, actual   3952 (30.88x) (3825) !!!!!
Window at  61 - Testing collisions ( 32-bit) - Expected  128.0, actual      0 (0.00x)
Window at  62 - Testing collisions ( 32-bit) - Expected  128.0, actual      0 (0.00x)
Window at  63 - Testing collisions ( 32-bit) - Expected  128.0, actual      0 (0.00x)
Window at  64 - Testing collisions ( 32-bit) - Expected  128.0, actual    121 (0.95x)
Window at  65 - Testing collisions ( 32-bit) - Expected  128.0, actual    168 (1.31x) (41)
Window at  66 - Testing collisions ( 32-bit) - Expected  128.0, actual    117 (0.91x)
Window at  67 - Testing collisions ( 32-bit) - Expected  128.0, actual    262 (2.05x) (135) !!!!!
Window at  68 - Testing collisions ( 32-bit) - Expected  128.0, actual    250 (1.95x) (123)
Window at  69 - Testing collisions ( 32-bit) - Expected  128.0, actual    114 (0.89x)
Window at  70 - Testing collisions ( 32-bit) - Expected  128.0, actual    149 (1.16x) (22)
Window at  71 - Testing collisions ( 32-bit) - Expected  128.0, actual     69 (0.54x)
Window at  72 - Testing collisions ( 32-bit) - Expected  128.0, actual      0 (0.00x)
*********FAIL*********

[[[ Keyset 'Cyclic' Tests ]]]

Keyset 'Cyclic' - 8 cycles of 4 bytes - 1000000 keys
Testing collisions ( 32-bit) - Expected  116.4, actual    111 (0.95x)
Testing distribution - Worst bias is the 17-bit window at bit 19 - 0.090%

Keyset 'Cyclic' - 8 cycles of 5 bytes - 1000000 keys
Testing collisions ( 32-bit) - Expected  116.4, actual    106 (0.91x)
Testing distribution - Worst bias is the 17-bit window at bit 26 - 0.089%

Keyset 'Cyclic' - 8 cycles of 6 bytes - 1000000 keys
Testing collisions ( 32-bit) - Expected  116.4, actual    127 (1.09x) (11)
Testing distribution - Worst bias is the 17-bit window at bit 23 - 0.132%

Keyset 'Cyclic' - 8 cycles of 7 bytes - 1000000 keys
Testing collisions ( 32-bit) - Expected  116.4, actual    133 (1.14x) (17)
Testing distribution - Worst bias is the 17-bit window at bit 12 - 0.088%

Keyset 'Cyclic' - 8 cycles of 8 bytes - 1000000 keys
Testing collisions ( 32-bit) - Expected  116.4, actual    128 (1.10x) (12)
Testing distribution - Worst bias is the 17-bit window at bit  0 - 0.110%

Keyset 'Cyclic' - 8 cycles of 12 bytes - 1000000 keys
Testing collisions ( 32-bit) - Expected  116.4, actual    111 (0.95x)
Testing distribution - Worst bias is the 17-bit window at bit 24 - 0.115%


[[[ Keyset 'TwoBytes' Tests ]]]

Keyset 'TwoBytes' - up-to-4-byte keys, 652545 total keys
Testing collisions ( 32-bit) - Expected   49.6, actual      4 (0.08x)
Testing distribution - Worst bias is the 16-bit window at bit  1 - 0.116%

Keyset 'TwoBytes' - up-to-8-byte keys, 5471025 total keys
Testing collisions ( 32-bit) - Expected 3483.1, actual  88209 (25.33x) (84726) !!!!!

Keyset 'TwoBytes' - up-to-12-byte keys, 18616785 total keys
Testing collisions ( 32-bit) - Expected 40289.5, actual 584928 (14.52x) (544639) !!!!!

Keyset 'TwoBytes' - up-to-16-byte keys, 44251425 total keys
Testing collisions ( 32-bit) - Expected 227182.3, actual 1613326 (7.10x) (1386144) !!!!!

Keyset 'TwoBytes' - up-to-20-byte keys, 86536545 total keys
Testing collisions ( 32-bit) - Expected 865959.1, actual 3464777 (4.00x) (2598818) !!!!!

Keyset 'TwoBytes' - up-to-24-byte keys, 149633745 total keys
Testing collisions ( 32-bit) - Expected 2576560.5, actual 6656052 (2.58x) (4079492) !!!!!

*********FAIL*********

[[[ Keyset 'Text' Tests ]]]

Keyset 'Text' - keys of form "FooXXXXBar" - 14776336 keys
Testing collisions ( 32-bit) - Expected 25389.0, actual      0 (0.00x)
Testing distribution - Worst bias is the 16-bit window at bit  6 - 0.004%

Keyset 'Text' - keys of form "FooBarXXXX" - 14776336 keys
Testing collisions ( 32-bit) - Expected 25389.0, actual      0 (0.00x)
Testing distribution - Worst bias is the 15-bit window at bit 11 - 0.003%

Keyset 'Text' - keys of form "XXXXFooBar" - 14776336 keys
Testing collisions ( 32-bit) - Expected 25389.0, actual      0 (0.00x)
Testing distribution - Worst bias is the 17-bit window at bit 13 - 0.007%

Keyset 'Words' - 4000000 random keys of len 6-16 from alnum charset
Testing collisions ( 32-bit) - Expected 1862.1, actual   1928 (1.04x) (66)
Testing distribution - Worst bias is the 19-bit window at bit 10 - 0.046%

Keyset 'Words' - 4000000 random keys of len 6-16 from password charset
Testing collisions ( 32-bit) - Expected 1862.1, actual   1807 (0.97x)
Testing distribution - Worst bias is the 19-bit window at bit 18 - 0.066%

Keyset 'Words' - 104334 dict words
Testing collisions ( 32-bit) - Expected    1.3, actual      3 (2.37x) (2) !
Testing collisions (high 20-28 bits) - Worst is 25 bits: 176/162 (1.09x)
Testing collisions (low  20-28 bits) - Worst is 25 bits: 183/162 (1.13x)
Testing distribution - Worst bias is the 14-bit window at bit  7 - 0.431%


[[[ Keyset 'Zeroes' Tests ]]]

Keyset 'Zeroes' - 204800 keys
Testing collisions ( 32-bit) - Expected    4.9, actual      7 (1.43x) (3)
Testing collisions (high 21-29 bits) - Worst is 29 bits: 41/39 (1.05x)
Testing collisions (low  21-29 bits) - Worst is 29 bits: 46/39 (1.18x)
Testing distribution - Worst bias is the 15-bit window at bit  3 - 0.224%


[[[ Keyset 'Seed' Tests ]]]

Keyset 'Seed' - 5000000 keys
Testing collisions ( 32-bit) - Expected 2909.3, actual      0 (0.00x)
Testing distribution - Worst bias is the 19-bit window at bit 31 - 0.022%


[[[ Keyset 'PerlinNoise' Tests ]]]

Testing 16777216 coordinates (L2) : 
Testing collisions ( 32-bit) - Expected 32725.4, actual 16769025 (512.42x) (16736300) !!!!!

Testing AV variant, 128 count with 4 spacing, 4-12:
Testing collisions ( 32-bit) - Expected 1116.2, actual 670773 (600.97x) (669657) !!!!!

*********FAIL*********

[[[ Diff 'Differential' Tests ]]]

Testing 8303632 up-to-5-bit differentials in 64-bit keys -> 32 bit hashes.
1000 reps, 8303632000 total tests, expecting 1.93 random collisions..........
4484 total collisions, of which 9 single collisions were ignored !!!!!

Testing 11017632 up-to-4-bit differentials in 128-bit keys -> 32 bit hashes.
1000 reps, 11017632000 total tests, expecting 2.57 random collisions..........
6631 total collisions, of which 1 single collisions were ignored !!!!!

Testing 2796416 up-to-3-bit differentials in 256-bit keys -> 32 bit hashes.
1000 reps, 2796416000 total tests, expecting 0.65 random collisions..........
4969 total collisions, of which 1 single collisions were ignored !!!!!

*********FAIL*********

[[[ DiffDist 'Differential Distribution' Tests ]]]

Testing bit 0
Testing collisions ( 32-bit) - Expected  511.9, actual    482 (0.94x)
Testing distribution - Worst bias is the 18-bit window at bit  5 - 0.055%

Testing bit 1
Testing collisions ( 32-bit) - Expected  511.9, actual    495 (0.97x)
Testing distribution - Worst bias is the 18-bit window at bit 27 - 0.065%

Testing bit 2
Testing collisions ( 32-bit) - Expected  511.9, actual    550 (1.07x) (39)
Testing distribution - Worst bias is the 18-bit window at bit 14 - 0.091%

Testing bit 3
Testing collisions ( 32-bit) - Expected  511.9, actual    503 (0.98x) (-8)
Testing distribution - Worst bias is the 18-bit window at bit 11 - 0.037%

Testing bit 4
Testing collisions ( 32-bit) - Expected  511.9, actual    541 (1.06x) (30)
Testing distribution - Worst bias is the 18-bit window at bit 12 - 0.064%

Testing bit 5
Testing collisions ( 32-bit) - Expected  511.9, actual    491 (0.96x)
Testing distribution - Worst bias is the 18-bit window at bit 17 - 0.071%

Testing bit 6
Testing collisions ( 32-bit) - Expected  511.9, actual    506 (0.99x) (-5)
Testing distribution - Worst bias is the 18-bit window at bit  4 - 0.062%

Testing bit 7
Testing collisions ( 32-bit) - Expected  511.9, actual    473 (0.92x)
Testing distribution - Worst bias is the 18-bit window at bit  2 - 0.066%

Testing bit 8
Testing collisions ( 32-bit) - Expected  511.9, actual    550 (1.07x) (39)
Testing distribution - Worst bias is the 18-bit window at bit  5 - 0.054%

Testing bit 9
Testing collisions ( 32-bit) - Expected  511.9, actual    527 (1.03x) (16)
Testing distribution - Worst bias is the 18-bit window at bit 11 - 0.077%

Testing bit 10
Testing collisions ( 32-bit) - Expected  511.9, actual    489 (0.96x)
Testing distribution - Worst bias is the 18-bit window at bit 21 - 0.044%

Testing bit 11
Testing collisions ( 32-bit) - Expected  511.9, actual    514 (1.00x) (3)
Testing distribution - Worst bias is the 18-bit window at bit  1 - 0.081%

Testing bit 12
Testing collisions ( 32-bit) - Expected  511.9, actual    501 (0.98x)
Testing distribution - Worst bias is the 18-bit window at bit 29 - 0.055%

Testing bit 13
Testing collisions ( 32-bit) - Expected  511.9, actual    495 (0.97x)
Testing distribution - Worst bias is the 18-bit window at bit 11 - 0.062%

Testing bit 14
Testing collisions ( 32-bit) - Expected  511.9, actual    534 (1.04x) (23)
Testing distribution - Worst bias is the 18-bit window at bit 20 - 0.052%

Testing bit 15
Testing collisions ( 32-bit) - Expected  511.9, actual    523 (1.02x) (12)
Testing distribution - Worst bias is the 18-bit window at bit  2 - 0.087%

Testing bit 16
Testing collisions ( 32-bit) - Expected  511.9, actual    541 (1.06x) (30)
Testing distribution - Worst bias is the 18-bit window at bit 18 - 0.057%

Testing bit 17
Testing collisions ( 32-bit) - Expected  511.9, actual    471 (0.92x)
Testing distribution - Worst bias is the 18-bit window at bit  3 - 0.059%

Testing bit 18
Testing collisions ( 32-bit) - Expected  511.9, actual    527 (1.03x) (16)
Testing distribution - Worst bias is the 18-bit window at bit 18 - 0.049%

Testing bit 19
Testing collisions ( 32-bit) - Expected  511.9, actual    534 (1.04x) (23)
Testing distribution - Worst bias is the 18-bit window at bit  3 - 0.033%

Testing bit 20
Testing collisions ( 32-bit) - Expected  511.9, actual    519 (1.01x) (8)
Testing distribution - Worst bias is the 18-bit window at bit 31 - 0.069%

Testing bit 21
Testing collisions ( 32-bit) - Expected  511.9, actual    540 (1.05x) (29)
Testing distribution - Worst bias is the 18-bit window at bit 23 - 0.048%

Testing bit 22
Testing collisions ( 32-bit) - Expected  511.9, actual    504 (0.98x) (-7)
Testing distribution - Worst bias is the 18-bit window at bit 15 - 0.073%

Testing bit 23
Testing collisions ( 32-bit) - Expected  511.9, actual    506 (0.99x) (-5)
Testing distribution - Worst bias is the 18-bit window at bit 22 - 0.035%

Testing bit 24
Testing collisions ( 32-bit) - Expected  511.9, actual    556 (1.09x) (45)
Testing distribution - Worst bias is the 18-bit window at bit 23 - 0.082%

Testing bit 25
Testing collisions ( 32-bit) - Expected  511.9, actual    553 (1.08x) (42)
Testing distribution - Worst bias is the 18-bit window at bit 23 - 0.042%

Testing bit 26
Testing collisions ( 32-bit) - Expected  511.9, actual    538 (1.05x) (27)
Testing distribution - Worst bias is the 18-bit window at bit 26 - 0.056%

Testing bit 27
Testing collisions ( 32-bit) - Expected  511.9, actual    565 (1.10x) (54)
Testing distribution - Worst bias is the 18-bit window at bit 27 - 0.107%

Testing bit 28
Testing collisions ( 32-bit) - Expected  511.9, actual    560 (1.09x) (49)
Testing distribution - Worst bias is the 18-bit window at bit  2 - 0.109%

Testing bit 29
Testing collisions ( 32-bit) - Expected  511.9, actual    613 (1.20x) (102)
Testing distribution - Worst bias is the 18-bit window at bit  7 - 0.042%

Testing bit 30
Testing collisions ( 32-bit) - Expected  511.9, actual    658 (1.29x) (147)
Testing distribution - Worst bias is the 18-bit window at bit  1 - 0.059%

Testing bit 31
Testing collisions ( 32-bit) - Expected  511.9, actual    991 (1.94x) (480)
Testing distribution - Worst bias is the 18-bit window at bit 16 - 0.131%

Testing bit 32
Testing collisions ( 32-bit) - Expected  511.9, actual   1023 (2.00x) (512)
Testing distribution - Worst bias is the 18-bit window at bit 30 - 0.051%

Testing bit 33
Testing collisions ( 32-bit) - Expected  511.9, actual   1084 (2.12x) (573) !!!!!

Testing bit 34
Testing collisions ( 32-bit) - Expected  511.9, actual    959 (1.87x) (448)
Testing distribution - Worst bias is the 18-bit window at bit 16 - 0.069%

Testing bit 35
Testing collisions ( 32-bit) - Expected  511.9, actual   1011 (1.97x) (500)
Testing distribution - Worst bias is the 18-bit window at bit 13 - 0.094%

Testing bit 36
Testing collisions ( 32-bit) - Expected  511.9, actual    963 (1.88x) (452)
Testing distribution - Worst bias is the 18-bit window at bit 18 - 0.098%

Testing bit 37
Testing collisions ( 32-bit) - Expected  511.9, actual   1048 (2.05x) (537) !!!!!

Testing bit 38
Testing collisions ( 32-bit) - Expected  511.9, actual   1058 (2.07x) (547) !!!!!

Testing bit 39
Testing collisions ( 32-bit) - Expected  511.9, actual   1001 (1.96x) (490)
Testing distribution - Worst bias is the 18-bit window at bit 23 - 0.088%

Testing bit 40
Testing collisions ( 32-bit) - Expected  511.9, actual    991 (1.94x) (480)
Testing distribution - Worst bias is the 18-bit window at bit 31 - 0.078%

Testing bit 41
Testing collisions ( 32-bit) - Expected  511.9, actual   1035 (2.02x) (524) !!!!!

Testing bit 42
Testing collisions ( 32-bit) - Expected  511.9, actual   1004 (1.96x) (493)
Testing distribution - Worst bias is the 18-bit window at bit  7 - 0.063%

Testing bit 43
Testing collisions ( 32-bit) - Expected  511.9, actual   1028 (2.01x) (517) !!!!!

Testing bit 44
Testing collisions ( 32-bit) - Expected  511.9, actual   1036 (2.02x) (525) !!!!!

Testing bit 45
Testing collisions ( 32-bit) - Expected  511.9, actual   1028 (2.01x) (517) !!!!!

Testing bit 46
Testing collisions ( 32-bit) - Expected  511.9, actual   1081 (2.11x) (570) !!!!!

Testing bit 47
Testing collisions ( 32-bit) - Expected  511.9, actual   1072 (2.09x) (561) !!!!!

Testing bit 48
Testing collisions ( 32-bit) - Expected  511.9, actual   1053 (2.06x) (542) !!!!!

Testing bit 49
Testing collisions ( 32-bit) - Expected  511.9, actual   1020 (1.99x) (509)
Testing distribution - Worst bias is the 18-bit window at bit 17 - 0.078%

Testing bit 50
Testing collisions ( 32-bit) - Expected  511.9, actual   1049 (2.05x) (538) !!!!!

Testing bit 51
Testing collisions ( 32-bit) - Expected  511.9, actual   1083 (2.12x) (572) !!!!!

Testing bit 52
Testing collisions ( 32-bit) - Expected  511.9, actual   1218 (2.38x) (707) !!!!!

Testing bit 53
Testing collisions ( 32-bit) - Expected  511.9, actual   1169 (2.28x) (658) !!!!!

Testing bit 54
Testing collisions ( 32-bit) - Expected  511.9, actual   1175 (2.30x) (664) !!!!!

Testing bit 55
Testing collisions ( 32-bit) - Expected  511.9, actual   1170 (2.29x) (659) !!!!!

Testing bit 56
Testing collisions ( 32-bit) - Expected  511.9, actual   1292 (2.52x) (781) !!!!!

Testing bit 57
Testing collisions ( 32-bit) - Expected  511.9, actual   1743 (3.40x) (1232) !!!!!

Testing bit 58
Testing collisions ( 32-bit) - Expected  511.9, actual   2204 (4.31x) (1693) !!!!!

Testing bit 59
Testing collisions ( 32-bit) - Expected  511.9, actual   3670 (7.17x) (3159) !!!!!

Testing bit 60
Testing collisions ( 32-bit) - Expected  511.9, actual   8829 (17.25x) (8318) !!!!!

Testing bit 61
Testing collisions ( 32-bit) - Expected  511.9, actual  24840 (48.52x) (24329) !!!!!

Testing bit 62
Testing collisions ( 32-bit) - Expected  511.9, actual  33129 (64.72x) (32618) !!!!!

Testing bit 63
Testing collisions ( 32-bit) - Expected  511.9, actual 102793 (200.80x) (102282) !!!!!

*********FAIL*********

[[[ BIC 'Bit Independence Criteria' Tests ]]]

...........
Max bias 0.090010 - ( 87 :   1, 18)

*********FAIL*********


[[[ MomentChi2 Tests ]]]

Analyze hashes produced from a serie of linearly increasing numbers of 32-bit, using a step of 2 ... 
Target values to approximate : 1391290.000000 - 686.666667 
4 threads starting...  done
Popcount 1 stats : 1391380.379954 - 687.528497
Popcount 0 stats : 1391369.115486 - 687.482862
MomentChi2 for bits 1 :   5.94423 
MomentChi2 for bits 0 :   4.55501 

Derivative stats (transition from 2 consecutive values) : 
Popcount 1 stats : 1391233.924355 - 687.060432
Popcount 0 stats : 1391177.078484 - 687.032866
MomentChi2 for deriv b1 :   2.28901 
MomentChi2 for deriv b0 :   9.28243 

  Good 


[[[ Prng Tests ]]]

Skipping PRNG test; it is designed for hashes >= 64-bits

[[[ BadSeeds Tests ]]]

Testing 1 internal secrets:
0xc6a4a793 Broken seed 0xc6a4a793 => 0 with key[1] of all 0 bytes confirmed => hash 0

*********FAIL*********


Input vcode 0x00000001, Output vcode 0x00000001, Result vcode 0x00000001
Verification value is 0x00000001 - Testing took 668.037814 seconds
-------------------------------------------------------------------------------
