-------------------------------------------------------------------------------
--- Testing pearsonbhash64 "Pearson block hash, 64-bit" POOR
[[[ Sanity Tests ]]]
Verification value 0xB6FF2DFC ....... PASS
Running sanity check 1 .......... PASS
Running AppendedZeroesTest .......... PASS
[[[ Speed Tests ]]]
Bulk speed test - 262144-byte keys
Alignment 7 - 0.769 bytes/cycle - 2200.44 MiB/sec @ 3 ghz
Alignment 6 - 0.769 bytes/cycle - 2200.44 MiB/sec @ 3 ghz
Alignment 5 - 0.769 bytes/cycle - 2200.44 MiB/sec @ 3 ghz
Alignment 4 - 0.769 bytes/cycle - 2200.48 MiB/sec @ 3 ghz
Alignment 3 - 0.739 bytes/cycle - 2115.15 MiB/sec @ 3 ghz
Alignment 2 - 0.769 bytes/cycle - 2200.44 MiB/sec @ 3 ghz
Alignment 1 - 0.769 bytes/cycle - 2200.44 MiB/sec @ 3 ghz
Alignment 0 - 0.769 bytes/cycle - 2200.48 MiB/sec @ 3 ghz
Average - 0.765 bytes/cycle - 2189.79 MiB/sec @ 3 ghz
Small key speed test - 1-byte keys - 37.00 cycles/hash
Small key speed test - 2-byte keys - 47.41 cycles/hash
Small key speed test - 3-byte keys - 57.95 cycles/hash
Small key speed test - 4-byte keys - 68.15 cycles/hash
Small key speed test - 5-byte keys - 78.96 cycles/hash
Small key speed test - 6-byte keys - 89.00 cycles/hash
Small key speed test - 7-byte keys - 99.19 cycles/hash
Small key speed test - 8-byte keys - 37.00 cycles/hash
Small key speed test - 9-byte keys - 48.00 cycles/hash
Small key speed test - 10-byte keys - 58.00 cycles/hash
Small key speed test - 11-byte keys - 68.86 cycles/hash
Small key speed test - 12-byte keys - 79.00 cycles/hash
Small key speed test - 13-byte keys - 89.00 cycles/hash
Small key speed test - 14-byte keys - 99.00 cycles/hash
Small key speed test - 15-byte keys - 110.00 cycles/hash
Small key speed test - 16-byte keys - 51.96 cycles/hash
Small key speed test - 17-byte keys - 58.00 cycles/hash
Small key speed test - 18-byte keys - 70.01 cycles/hash
Small key speed test - 19-byte keys - 80.55 cycles/hash
Small key speed test - 20-byte keys - 91.27 cycles/hash
Small key speed test - 21-byte keys - 101.68 cycles/hash
Small key speed test - 22-byte keys - 110.95 cycles/hash
Small key speed test - 23-byte keys - 121.00 cycles/hash
Small key speed test - 24-byte keys - 58.00 cycles/hash
Small key speed test - 25-byte keys - 68.00 cycles/hash
Small key speed test - 26-byte keys - 79.00 cycles/hash
Small key speed test - 27-byte keys - 89.00 cycles/hash
Small key speed test - 28-byte keys - 99.68 cycles/hash
Small key speed test - 29-byte keys - 110.00 cycles/hash
Small key speed test - 30-byte keys - 120.42 cycles/hash
Small key speed test - 31-byte keys - 131.00 cycles/hash
Average 80.872 cycles/hash
[[[ 'Hashmap' Speed Tests ]]]
std::unordered_map
Init std HashMapTest: 835.193 cycles/op (479826 inserts, 1% deletions)
Running std HashMapTest: 732.214 cycles/op (45.7 stdv)
greg7mdp/parallel-hashmap
Init fast HashMapTest: 1054.934 cycles/op (479826 inserts, 1% deletions)
Running fast HashMapTest: 558.874 cycles/op (17.0 stdv) ....... PASS
[[[ Avalanche Tests ]]]
Testing 24-bit keys -> 64-bit hashes, 300000 reps worst bias is 0.864667%
Testing 32-bit keys -> 64-bit hashes, 300000 reps worst bias is 0.660000%
Testing 40-bit keys -> 64-bit hashes, 300000 reps worst bias is 0.696000%
Testing 48-bit keys -> 64-bit hashes, 300000 reps worst bias is 0.728000%
Testing 56-bit keys -> 64-bit hashes, 300000 reps worst bias is 0.660667%
Testing 64-bit keys -> 64-bit hashes, 300000 reps worst bias is 0.706667%
Testing 72-bit keys -> 64-bit hashes, 300000 reps worst bias is 0.776667%
Testing 80-bit keys -> 64-bit hashes, 300000 reps worst bias is 0.750000%
Testing 96-bit keys -> 64-bit hashes, 300000 reps worst bias is 0.661333%
Testing 112-bit keys -> 64-bit hashes, 300000 reps worst bias is 0.707333%
Testing 128-bit keys -> 64-bit hashes, 300000 reps worst bias is 0.687333%
Testing 160-bit keys -> 64-bit hashes, 300000 reps worst bias is 0.746667%
Testing 512-bit keys -> 64-bit hashes, 300000 reps worst bias is 0.741333%
Testing 1024-bit keys -> 64-bit hashes, 300000 reps worst bias is 0.810667%
[[[ Keyset 'Sparse' Tests ]]]
Keyset 'Sparse' - 16-bit keys with up to 9 bits set - 50643 keys
Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Testing collisions (high 32-bit) - Expected 0.3, actual 0 (0.00x)
Testing collisions (high 19-25 bits) - Worst is 25 bits: 45/38 (1.18x)
Testing collisions (high 12-bit) - Expected 46547.0, actual 46547 (1.00x)
Testing collisions (high 8-bit) - Expected 50387.0, actual 50387 (1.00x)
Testing collisions (low 32-bit) - Expected 0.3, actual 0 (0.00x)
Testing collisions (low 19-25 bits) - Worst is 24 bits: 83/76 (1.09x)
Testing collisions (low 12-bit) - Expected 46547.0, actual 46547 (1.00x)
Testing collisions (low 8-bit) - Expected 50387.0, actual 50387 (1.00x)
Testing distribution - Worst bias is the 12-bit window at bit 27 - 0.536%
Keyset 'Sparse' - 24-bit keys with up to 8 bits set - 1271626 keys
Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Testing collisions (high 32-bit) - Expected 188.2, actual 183 (0.97x)
Testing collisions (high 24-35 bits) - Worst is 34 bits: 49/47 (1.04x)
Testing collisions (high 12-bit) - Expected 1267530.0, actual 1267530 (1.00x)
Testing collisions (high 8-bit) - Expected 1271370.0, actual 1271370 (1.00x)
Testing collisions (low 32-bit) - Expected 188.2, actual 182 (0.97x)
Testing collisions (low 24-35 bits) - Worst is 35 bits: 25/23 (1.06x)
Testing collisions (low 12-bit) - Expected 1267530.0, actual 1267530 (1.00x)
Testing collisions (low 8-bit) - Expected 1271370.0, actual 1271370 (1.00x)
Testing distribution - Worst bias is the 17-bit window at bit 46 - 0.082%
Keyset 'Sparse' - 32-bit keys with up to 7 bits set - 4514873 keys
Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Testing collisions (high 32-bit) - Expected 2373.0, actual 2361 (0.99x) (-12)
Testing collisions (high 25-38 bits) - Worst is 31 bits: 4744/4746 (1.00x)
Testing collisions (high 12-bit) - Expected 4510777.0, actual 4510777 (1.00x)
Testing collisions (high 8-bit) - Expected 4514617.0, actual 4514617 (1.00x)
Testing collisions (low 32-bit) - Expected 2373.0, actual 2406 (1.01x) (33)
Testing collisions (low 25-38 bits) - Worst is 35 bits: 306/296 (1.03x)
Testing collisions (low 12-bit) - Expected 4510777.0, actual 4510777 (1.00x)
Testing collisions (low 8-bit) - Expected 4514617.0, actual 4514617 (1.00x)
Testing distribution - Worst bias is the 19-bit window at bit 57 - 0.029%
Keyset 'Sparse' - 40-bit keys with up to 6 bits set - 4598479 keys
Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Testing collisions (high 32-bit) - Expected 2461.7, actual 2509 (1.02x) (48)
Testing collisions (high 25-38 bits) - Worst is 38 bits: 43/38 (1.12x)
Testing collisions (high 12-bit) - Expected 4594383.0, actual 4594383 (1.00x)
Testing collisions (high 8-bit) - Expected 4598223.0, actual 4598223 (1.00x)
Testing collisions (low 32-bit) - Expected 2461.7, actual 2419 (0.98x) (-42)
Testing collisions (low 25-38 bits) - Worst is 36 bits: 163/153 (1.06x)
Testing collisions (low 12-bit) - Expected 4594383.0, actual 4594383 (1.00x)
Testing collisions (low 8-bit) - Expected 4598223.0, actual 4598223 (1.00x)
Testing distribution - Worst bias is the 19-bit window at bit 50 - 0.044%
Keyset 'Sparse' - 48-bit keys with up to 6 bits set - 14196869 keys
Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Testing collisions (high 32-bit) - Expected 23463.6, actual 23444 (1.00x) (-19)
Testing collisions (high 27-42 bits) - Worst is 41 bits: 57/45 (1.24x)
Testing collisions (high 12-bit) - Expected 14192773.0, actual 14192773 (1.00x)
Testing collisions (high 8-bit) - Expected 14196613.0, actual 14196613 (1.00x)
Testing collisions (low 32-bit) - Expected 23463.6, actual 23651 (1.01x) (188)
Testing collisions (low 27-42 bits) - Worst is 40 bits: 96/91 (1.05x)
Testing collisions (low 12-bit) - Expected 14192773.0, actual 14192773 (1.00x)
Testing collisions (low 8-bit) - Expected 14196613.0, actual 14196613 (1.00x)
Testing distribution - Worst bias is the 20-bit window at bit 62 - 0.023%
Keyset 'Sparse' - 56-bit keys with up to 5 bits set - 4216423 keys
Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Testing collisions (high 32-bit) - Expected 2069.7, actual 2084 (1.01x) (15)
Testing collisions (high 25-38 bits) - Worst is 33 bits: 1046/1034 (1.01x)
Testing collisions (high 12-bit) - Expected 4212327.0, actual 4212327 (1.00x)
Testing collisions (high 8-bit) - Expected 4216167.0, actual 4216167 (1.00x)
Testing collisions (low 32-bit) - Expected 2069.7, actual 2151 (1.04x) (82)
Testing collisions (low 25-38 bits) - Worst is 34 bits: 545/517 (1.05x)
Testing collisions (low 12-bit) - Expected 4212327.0, actual 4212327 (1.00x)
Testing collisions (low 8-bit) - Expected 4216167.0, actual 4216167 (1.00x)
Testing distribution - Worst bias is the 19-bit window at bit 29 - 0.052%
Keyset 'Sparse' - 64-bit keys with up to 5 bits set - 8303633 keys
Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Testing collisions (high 32-bit) - Expected 8026.9, actual 7960 (0.99x) (-66)
Testing collisions (high 26-40 bits) - Worst is 35 bits: 1042/1003 (1.04x)
Testing collisions (high 12-bit) - Expected 8299537.0, actual 8299537 (1.00x)
Testing collisions (high 8-bit) - Expected 8303377.0, actual 8303377 (1.00x)
Testing collisions (low 32-bit) - Expected 8026.9, actual 8041 (1.00x) (15)
Testing collisions (low 26-40 bits) - Worst is 40 bits: 39/31 (1.24x)
Testing collisions (low 12-bit) - Expected 8299537.0, actual 8299537 (1.00x)
Testing collisions (low 8-bit) - Expected 8303377.0, actual 8303377 (1.00x)
Testing distribution - Worst bias is the 20-bit window at bit 25 - 0.036%
Keyset 'Sparse' - 72-bit keys with up to 5 bits set - 15082603 keys
Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Testing collisions (high 32-bit) - Expected 26482.7, actual 26502 (1.00x) (20)
Testing collisions (high 27-42 bits) - Worst is 41 bits: 59/51 (1.14x)
Testing collisions (high 12-bit) - Expected 15078507.0, actual 15078507 (1.00x)
Testing collisions (high 8-bit) - Expected 15082347.0, actual 15082347 (1.00x)
Testing collisions (low 32-bit) - Expected 26482.7, actual 26567 (1.00x) (85)
Testing collisions (low 27-42 bits) - Worst is 42 bits: 33/25 (1.28x)
Testing collisions (low 12-bit) - Expected 15078507.0, actual 15078507 (1.00x)
Testing collisions (low 8-bit) - Expected 15082347.0, actual 15082347 (1.00x)
Testing distribution - Worst bias is the 19-bit window at bit 46 - 0.018%
Keyset 'Sparse' - 96-bit keys with up to 4 bits set - 3469497 keys
Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Testing collisions (high 32-bit) - Expected 1401.3, actual 1440 (1.03x) (39)
Testing collisions (high 25-38 bits) - Worst is 33 bits: 738/700 (1.05x)
Testing collisions (high 12-bit) - Expected 3465401.0, actual 3465401 (1.00x)
Testing collisions (high 8-bit) - Expected 3469241.0, actual 3469241 (1.00x)
Testing collisions (low 32-bit) - Expected 1401.3, actual 1454 (1.04x) (53)
Testing collisions (low 25-38 bits) - Worst is 32 bits: 1454/1401 (1.04x)
Testing collisions (low 12-bit) - Expected 3465401.0, actual 3465401 (1.00x)
Testing collisions (low 8-bit) - Expected 3469241.0, actual 3469241 (1.00x)
Testing distribution - Worst bias is the 19-bit window at bit 36 - 0.057%
Keyset 'Sparse' - 160-bit keys with up to 4 bits set - 26977161 keys
Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Testing collisions (high 32-bit) - Expected 84723.3, actual 84730 (1.00x) (7)
Testing collisions (high 28-44 bits) - Worst is 35 bits: 10768/10590 (1.02x)
Testing collisions (high 12-bit) - Expected 26973065.0, actual 26973065 (1.00x)
Testing collisions (high 8-bit) - Expected 26976905.0, actual 26976905 (1.00x)
Testing collisions (low 32-bit) - Expected 84723.3, actual 85215 (1.01x) (492)
Testing collisions (low 28-44 bits) - Worst is 40 bits: 350/330 (1.06x)
Testing collisions (low 12-bit) - Expected 26973065.0, actual 26973065 (1.00x)
Testing collisions (low 8-bit) - Expected 26976905.0, actual 26976905 (1.00x)
Testing distribution - Worst bias is the 20-bit window at bit 17 - 0.010%
Keyset 'Sparse' - 256-bit keys with up to 3 bits set - 2796417 keys
Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Testing collisions (high 32-bit) - Expected 910.4, actual 906 (1.00x) (-4)
Testing collisions (high 25-37 bits) - Worst is 37 bits: 33/28 (1.16x)
Testing collisions (high 12-bit) - Expected 2792321.0, actual 2792321 (1.00x)
Testing collisions (high 8-bit) - Expected 2796161.0, actual 2796161 (1.00x)
Testing collisions (low 32-bit) - Expected 910.4, actual 862 (0.95x)
Testing collisions (low 25-37 bits) - Worst is 35 bits: 117/113 (1.03x)
Testing collisions (low 12-bit) - Expected 2792321.0, actual 2792321 (1.00x)
Testing collisions (low 8-bit) - Expected 2796161.0, actual 2796161 (1.00x)
Testing distribution - Worst bias is the 19-bit window at bit 40 - 0.080%
Keyset 'Sparse' - 512-bit keys with up to 3 bits set - 22370049 keys
Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Testing collisions (high 32-bit) - Expected 58256.4, actual 58159 (1.00x) (-97)
Testing collisions (high 28-43 bits) - Worst is 39 bits: 464/455 (1.02x)
Testing collisions (high 12-bit) - Expected 22365953.0, actual 22365953 (1.00x)
Testing collisions (high 8-bit) - Expected 22369793.0, actual 22369793 (1.00x)
Testing collisions (low 32-bit) - Expected 58256.4, actual 57702 (0.99x) (-554)
Testing collisions (low 28-43 bits) - Worst is 43 bits: 36/28 (1.27x)
Testing collisions (low 12-bit) - Expected 22365953.0, actual 22365953 (1.00x)
Testing collisions (low 8-bit) - Expected 22369793.0, actual 22369793 (1.00x)
Testing distribution - Worst bias is the 20-bit window at bit 23 - 0.015%
Keyset 'Sparse' - 1024-bit keys with up to 2 bits set - 524801 keys
Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Testing collisions (high 32-bit) - Expected 32.1, actual 26 (0.81x)
Testing collisions (high 22-32 bits) - Worst is 30 bits: 141/128 (1.10x)
Testing collisions (high 12-bit) - Expected 520705.0, actual 520705 (1.00x)
Testing collisions (high 8-bit) - Expected 524545.0, actual 524545 (1.00x)
Testing collisions (low 32-bit) - Expected 32.1, actual 35 (1.09x) (3)
Testing collisions (low 22-32 bits) - Worst is 32 bits: 35/32 (1.09x)
Testing collisions (low 12-bit) - Expected 520705.0, actual 520705 (1.00x)
Testing collisions (low 8-bit) - Expected 524545.0, actual 524545 (1.00x)
Testing distribution - Worst bias is the 16-bit window at bit 25 - 0.165%
Keyset 'Sparse' - 2048-bit keys with up to 2 bits set - 2098177 keys
Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Testing collisions (high 32-bit) - Expected 512.5, actual 560 (1.09x) (48)
Testing collisions (high 24-36 bits) - Worst is 34 bits: 146/128 (1.14x)
Testing collisions (high 12-bit) - Expected 2094081.0, actual 2094081 (1.00x)
Testing collisions (high 8-bit) - Expected 2097921.0, actual 2097921 (1.00x)
Testing collisions (low 32-bit) - Expected 512.5, actual 554 (1.08x) (42)
Testing collisions (low 24-36 bits) - Worst is 36 bits: 35/32 (1.09x)
Testing collisions (low 12-bit) - Expected 2094081.0, actual 2094081 (1.00x)
Testing collisions (low 8-bit) - Expected 2097921.0, actual 2097921 (1.00x)
Testing distribution - Worst bias is the 18-bit window at bit 43 - 0.060%
[[[ Keyset 'Permutation' Tests ]]]
Combination Lowbits Tests:
Keyset 'Combination' - up to 7 blocks from a set of 8 - 2396744 keys
Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Testing collisions (high 32-bit) - Expected 668.7, actual 590 (0.88x)
Testing collisions (high 25-37 bits) - Worst is 37 bits: 26/20 (1.24x)
Testing collisions (high 12-bit) - Expected 2392648.0, actual 2392648 (1.00x)
Testing collisions (high 8-bit) - Expected 2396488.0, actual 2396488 (1.00x)
Testing collisions (low 32-bit) - Expected 668.7, actual 675 (1.01x) (7)
Testing collisions (low 25-37 bits) - Worst is 36 bits: 52/41 (1.24x)
Testing collisions (low 12-bit) - Expected 2392648.0, actual 2392648 (1.00x)
Testing collisions (low 8-bit) - Expected 2396488.0, actual 2396488 (1.00x)
Testing distribution - Worst bias is the 18-bit window at bit 0 - 0.070%
Combination Highbits Tests
Keyset 'Combination' - up to 7 blocks from a set of 8 - 2396744 keys
Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Testing collisions (high 32-bit) - Expected 668.7, actual 672 (1.00x) (4)
Testing collisions (high 25-37 bits) - Worst is 34 bits: 175/167 (1.05x)
Testing collisions (high 12-bit) - Expected 2392648.0, actual 2392648 (1.00x)
Testing collisions (high 8-bit) - Expected 2396488.0, actual 2396488 (1.00x)
Testing collisions (low 32-bit) - Expected 668.7, actual 628 (0.94x)
Testing collisions (low 25-37 bits) - Worst is 28 bits: 10771/10699 (1.01x)
Testing collisions (low 12-bit) - Expected 2392648.0, actual 2392648 (1.00x)
Testing collisions (low 8-bit) - Expected 2396488.0, actual 2396488 (1.00x)
Testing distribution - Worst bias is the 18-bit window at bit 6 - 0.060%
Combination Hi-Lo Tests:
Keyset 'Combination' - up to 6 blocks from a set of 15 - 12204240 keys
Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Testing collisions (high 32-bit) - Expected 17339.3, actual 17212 (0.99x) (-127)
Testing collisions (high 27-41 bits) - Worst is 31 bits: 34708/34678 (1.00x)
Testing collisions (high 12-bit) - Expected 12200144.0, actual 12200144 (1.00x)
Testing collisions (high 8-bit) - Expected 12203984.0, actual 12203984 (1.00x)
Testing collisions (low 32-bit) - Expected 17339.3, actual 17272 (1.00x) (-67)
Testing collisions (low 27-41 bits) - Worst is 38 bits: 292/270 (1.08x)
Testing collisions (low 12-bit) - Expected 12200144.0, actual 12200144 (1.00x)
Testing collisions (low 8-bit) - Expected 12203984.0, actual 12203984 (1.00x)
Testing distribution - Worst bias is the 20-bit window at bit 25 - 0.019%
Combination 0x8000000 Tests:
Keyset 'Combination' - up to 22 blocks from a set of 2 - 8388606 keys
Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Testing collisions (high 32-bit) - Expected 8192.0, actual 8156 (1.00x) (-35)
Testing collisions (high 26-40 bits) - Worst is 39 bits: 66/63 (1.03x)
Testing collisions (high 12-bit) - Expected 8384510.0, actual 8384510 (1.00x)
Testing collisions (high 8-bit) - Expected 8388350.0, actual 8388350 (1.00x)
Testing collisions (low 32-bit) - Expected 8192.0, actual 8292 (1.01x) (101)
Testing collisions (low 26-40 bits) - Worst is 40 bits: 36/31 (1.13x)
Testing collisions (low 12-bit) - Expected 8384510.0, actual 8384510 (1.00x)
Testing collisions (low 8-bit) - Expected 8388350.0, actual 8388350 (1.00x)
Testing distribution - Worst bias is the 20-bit window at bit 7 - 0.031%
Combination 0x0000001 Tests:
Keyset 'Combination' - up to 22 blocks from a set of 2 - 8388606 keys
Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Testing collisions (high 32-bit) - Expected 8192.0, actual 8331 (1.02x) (140)
Testing collisions (high 26-40 bits) - Worst is 40 bits: 37/31 (1.16x)
Testing collisions (high 12-bit) - Expected 8384510.0, actual 8384510 (1.00x)
Testing collisions (high 8-bit) - Expected 8388350.0, actual 8388350 (1.00x)
Testing collisions (low 32-bit) - Expected 8192.0, actual 7983 (0.97x)
Testing collisions (low 26-40 bits) - Worst is 35 bits: 1022/1023 (1.00x)
Testing collisions (low 12-bit) - Expected 8384510.0, actual 8384510 (1.00x)
Testing collisions (low 8-bit) - Expected 8388350.0, actual 8388350 (1.00x)
Testing distribution - Worst bias is the 19-bit window at bit 18 - 0.039%
Combination 0x800000000000000 Tests:
Keyset 'Combination' - up to 22 blocks from a set of 2 - 8388606 keys
Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Testing collisions (high 32-bit) - Expected 8192.0, actual 8189 (1.00x) (-2)
Testing collisions (high 26-40 bits) - Worst is 40 bits: 33/31 (1.03x)
Testing collisions (high 12-bit) - Expected 8384510.0, actual 8384510 (1.00x)
Testing collisions (high 8-bit) - Expected 8388350.0, actual 8388350 (1.00x)
Testing collisions (low 32-bit) - Expected 8192.0, actual 8315 (1.02x) (124)
Testing collisions (low 26-40 bits) - Worst is 35 bits: 1063/1023 (1.04x)
Testing collisions (low 12-bit) - Expected 8384510.0, actual 8384510 (1.00x)
Testing collisions (low 8-bit) - Expected 8388350.0, actual 8388350 (1.00x)
Testing distribution - Worst bias is the 20-bit window at bit 16 - 0.038%
Combination 0x000000000000001 Tests:
Keyset 'Combination' - up to 22 blocks from a set of 2 - 8388606 keys
Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Testing collisions (high 32-bit) - Expected 8192.0, actual 8306 (1.01x) (115)
Testing collisions (high 26-40 bits) - Worst is 40 bits: 45/31 (1.41x)
Testing collisions (high 12-bit) - Expected 8384510.0, actual 8384510 (1.00x)
Testing collisions (high 8-bit) - Expected 8388350.0, actual 8388350 (1.00x)
Testing collisions (low 32-bit) - Expected 8192.0, actual 8112 (0.99x) (-79)
Testing collisions (low 26-40 bits) - Worst is 38 bits: 132/127 (1.03x)
Testing collisions (low 12-bit) - Expected 8384510.0, actual 8384510 (1.00x)
Testing collisions (low 8-bit) - Expected 8388350.0, actual 8388350 (1.00x)
Testing distribution - Worst bias is the 20-bit window at bit 20 - 0.050%
Combination 16-bytes [0-1] Tests:
Keyset 'Combination' - up to 22 blocks from a set of 2 - 8388606 keys
Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Testing collisions (high 32-bit) - Expected 8192.0, actual 8174 (1.00x) (-17)
Testing collisions (high 26-40 bits) - Worst is 34 bits: 2075/2047 (1.01x)
Testing collisions (high 12-bit) - Expected 8384510.0, actual 8384510 (1.00x)
Testing collisions (high 8-bit) - Expected 8388350.0, actual 8388350 (1.00x)
Testing collisions (low 32-bit) - Expected 8192.0, actual 8196 (1.00x) (5)
Testing collisions (low 26-40 bits) - Worst is 35 bits: 1050/1023 (1.03x)
Testing collisions (low 12-bit) - Expected 8384510.0, actual 8384510 (1.00x)
Testing collisions (low 8-bit) - Expected 8388350.0, actual 8388350 (1.00x)
Testing distribution - Worst bias is the 20-bit window at bit 40 - 0.055%
Combination 16-bytes [0-last] Tests:
Keyset 'Combination' - up to 22 blocks from a set of 2 - 8388606 keys
Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Testing collisions (high 32-bit) - Expected 8192.0, actual 8192 (1.00x) (1)
Testing collisions (high 26-40 bits) - Worst is 35 bits: 1044/1023 (1.02x)
Testing collisions (high 12-bit) - Expected 8384510.0, actual 8384510 (1.00x)
Testing collisions (high 8-bit) - Expected 8388350.0, actual 8388350 (1.00x)
Testing collisions (low 32-bit) - Expected 8192.0, actual 8211 (1.00x) (20)
Testing collisions (low 26-40 bits) - Worst is 32 bits: 8211/8191 (1.00x)
Testing collisions (low 12-bit) - Expected 8384510.0, actual 8384510 (1.00x)
Testing collisions (low 8-bit) - Expected 8388350.0, actual 8388350 (1.00x)
Testing distribution - Worst bias is the 20-bit window at bit 32 - 0.026%
Combination 32-bytes [0-1] Tests:
Keyset 'Combination' - up to 22 blocks from a set of 2 - 8388606 keys
Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Testing collisions (high 32-bit) - Expected 8192.0, actual 8152 (1.00x) (-39)
Testing collisions (high 26-40 bits) - Worst is 33 bits: 4128/4095 (1.01x)
Testing collisions (high 12-bit) - Expected 8384510.0, actual 8384510 (1.00x)
Testing collisions (high 8-bit) - Expected 8388350.0, actual 8388350 (1.00x)
Testing collisions (low 32-bit) - Expected 8192.0, actual 8093 (0.99x) (-98)
Testing collisions (low 26-40 bits) - Worst is 37 bits: 266/255 (1.04x)
Testing collisions (low 12-bit) - Expected 8384510.0, actual 8384510 (1.00x)
Testing collisions (low 8-bit) - Expected 8388350.0, actual 8388350 (1.00x)
Testing distribution - Worst bias is the 20-bit window at bit 55 - 0.043%
Combination 32-bytes [0-last] Tests:
Keyset 'Combination' - up to 22 blocks from a set of 2 - 8388606 keys
Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Testing collisions (high 32-bit) - Expected 8192.0, actual 8175 (1.00x) (-16)
Testing collisions (high 26-40 bits) - Worst is 38 bits: 142/127 (1.11x)
Testing collisions (high 12-bit) - Expected 8384510.0, actual 8384510 (1.00x)
Testing collisions (high 8-bit) - Expected 8388350.0, actual 8388350 (1.00x)
Testing collisions (low 32-bit) - Expected 8192.0, actual 8185 (1.00x) (-6)
Testing collisions (low 26-40 bits) - Worst is 40 bits: 35/31 (1.09x)
Testing collisions (low 12-bit) - Expected 8384510.0, actual 8384510 (1.00x)
Testing collisions (low 8-bit) - Expected 8388350.0, actual 8388350 (1.00x)
Testing distribution - Worst bias is the 20-bit window at bit 11 - 0.056%
Combination 64-bytes [0-1] Tests:
Keyset 'Combination' - up to 22 blocks from a set of 2 - 8388606 keys
Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Testing collisions (high 32-bit) - Expected 8192.0, actual 8238 (1.01x) (47)
Testing collisions (high 26-40 bits) - Worst is 39 bits: 76/63 (1.19x)
Testing collisions (high 12-bit) - Expected 8384510.0, actual 8384510 (1.00x)
Testing collisions (high 8-bit) - Expected 8388350.0, actual 8388350 (1.00x)
Testing collisions (low 32-bit) - Expected 8192.0, actual 8244 (1.01x) (53)
Testing collisions (low 26-40 bits) - Worst is 34 bits: 2066/2047 (1.01x)
Testing collisions (low 12-bit) - Expected 8384510.0, actual 8384510 (1.00x)
Testing collisions (low 8-bit) - Expected 8388350.0, actual 8388350 (1.00x)
Testing distribution - Worst bias is the 20-bit window at bit 16 - 0.037%
Combination 64-bytes [0-last] Tests:
Keyset 'Combination' - up to 22 blocks from a set of 2 - 8388606 keys
Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Testing collisions (high 32-bit) - Expected 8192.0, actual 8052 (0.98x) (-139)
Testing collisions (high 26-40 bits) - Worst is 40 bits: 45/31 (1.41x)
Testing collisions (high 12-bit) - Expected 8384510.0, actual 8384510 (1.00x)
Testing collisions (high 8-bit) - Expected 8388350.0, actual 8388350 (1.00x)
Testing collisions (low 32-bit) - Expected 8192.0, actual 8087 (0.99x) (-104)
Testing collisions (low 26-40 bits) - Worst is 30 bits: 32641/32767 (1.00x)
Testing collisions (low 12-bit) - Expected 8384510.0, actual 8384510 (1.00x)
Testing collisions (low 8-bit) - Expected 8388350.0, actual 8388350 (1.00x)
Testing distribution - Worst bias is the 20-bit window at bit 45 - 0.041%
Combination 128-bytes [0-1] Tests:
Keyset 'Combination' - up to 22 blocks from a set of 2 - 8388606 keys
Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Testing collisions (high 32-bit) - Expected 8192.0, actual 8175 (1.00x) (-16)
Testing collisions (high 26-40 bits) - Worst is 36 bits: 517/511 (1.01x)
Testing collisions (high 12-bit) - Expected 8384510.0, actual 8384510 (1.00x)
Testing collisions (high 8-bit) - Expected 8388350.0, actual 8388350 (1.00x)
Testing collisions (low 32-bit) - Expected 8192.0, actual 8137 (0.99x) (-54)
Testing collisions (low 26-40 bits) - Worst is 29 bits: 65614/65535 (1.00x)
Testing collisions (low 12-bit) - Expected 8384510.0, actual 8384510 (1.00x)
Testing collisions (low 8-bit) - Expected 8388350.0, actual 8388350 (1.00x)
Testing distribution - Worst bias is the 20-bit window at bit 53 - 0.037%
Combination 128-bytes [0-last] Tests:
Keyset 'Combination' - up to 22 blocks from a set of 2 - 8388606 keys
Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Testing collisions (high 32-bit) - Expected 8192.0, actual 8379 (1.02x) (188)
Testing collisions (high 26-40 bits) - Worst is 39 bits: 68/63 (1.06x)
Testing collisions (high 12-bit) - Expected 8384510.0, actual 8384510 (1.00x)
Testing collisions (high 8-bit) - Expected 8388350.0, actual 8388350 (1.00x)
Testing collisions (low 32-bit) - Expected 8192.0, actual 8228 (1.00x) (37)
Testing collisions (low 26-40 bits) - Worst is 37 bits: 262/255 (1.02x)
Testing collisions (low 12-bit) - Expected 8384510.0, actual 8384510 (1.00x)
Testing collisions (low 8-bit) - Expected 8388350.0, actual 8388350 (1.00x)
Testing distribution - Worst bias is the 20-bit window at bit 55 - 0.023%
[[[ Keyset 'Window' Tests ]]]
Keyset 'Window' - 32-bit key, 25-bit window - 32 tests, 33554432 keys per test
Window at 0 - Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Window at 1 - Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Window at 2 - Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Window at 3 - Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Window at 4 - Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Window at 5 - Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Window at 6 - Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Window at 7 - Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Window at 8 - Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Window at 9 - Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Window at 10 - Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Window at 11 - Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Window at 12 - Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Window at 13 - Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Window at 14 - Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Window at 15 - Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Window at 16 - Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Window at 17 - Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Window at 18 - Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Window at 19 - Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Window at 20 - Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Window at 21 - Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Window at 22 - Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Window at 23 - Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Window at 24 - Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Window at 25 - Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Window at 26 - Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Window at 27 - Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Window at 28 - Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Window at 29 - Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Window at 30 - Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Window at 31 - Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Window at 32 - Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
[[[ Keyset 'Cyclic' Tests ]]]
Keyset 'Cyclic' - 8 cycles of 8 bytes - 1000000 keys
Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Testing collisions (high 32-bit) - Expected 116.4, actual 126 (1.08x) (10)
Testing collisions (high 23-34 bits) - Worst is 33 bits: 70/58 (1.20x)
Testing collisions (high 12-bit) - Expected 995904.0, actual 995904 (1.00x)
Testing collisions (high 8-bit) - Expected 999744.0, actual 999744 (1.00x)
Testing collisions (low 32-bit) - Expected 116.4, actual 109 (0.94x)
Testing collisions (low 23-34 bits) - Worst is 30 bits: 485/465 (1.04x)
Testing collisions (low 12-bit) - Expected 995904.0, actual 995904 (1.00x)
Testing collisions (low 8-bit) - Expected 999744.0, actual 999744 (1.00x)
Testing distribution - Worst bias is the 16-bit window at bit 7 - 0.087%
Keyset 'Cyclic' - 8 cycles of 9 bytes - 1000000 keys
Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Testing collisions (high 32-bit) - Expected 116.4, actual 128 (1.10x) (12)
Testing collisions (high 23-34 bits) - Worst is 33 bits: 66/58 (1.13x)
Testing collisions (high 12-bit) - Expected 995904.0, actual 995904 (1.00x)
Testing collisions (high 8-bit) - Expected 999744.0, actual 999744 (1.00x)
Testing collisions (low 32-bit) - Expected 116.4, actual 129 (1.11x) (13)
Testing collisions (low 23-34 bits) - Worst is 34 bits: 36/29 (1.24x)
Testing collisions (low 12-bit) - Expected 995904.0, actual 995904 (1.00x)
Testing collisions (low 8-bit) - Expected 999744.0, actual 999744 (1.00x)
Testing distribution - Worst bias is the 17-bit window at bit 58 - 0.131%
Keyset 'Cyclic' - 8 cycles of 10 bytes - 1000000 keys
Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Testing collisions (high 32-bit) - Expected 116.4, actual 137 (1.18x) (21)
Testing collisions (high 23-34 bits) - Worst is 32 bits: 137/116 (1.18x)
Testing collisions (high 12-bit) - Expected 995904.0, actual 995904 (1.00x)
Testing collisions (high 8-bit) - Expected 999744.0, actual 999744 (1.00x)
Testing collisions (low 32-bit) - Expected 116.4, actual 105 (0.90x)
Testing collisions (low 23-34 bits) - Worst is 30 bits: 473/465 (1.02x)
Testing collisions (low 12-bit) - Expected 995904.0, actual 995904 (1.00x)
Testing collisions (low 8-bit) - Expected 999744.0, actual 999744 (1.00x)
Testing distribution - Worst bias is the 17-bit window at bit 14 - 0.132%
Keyset 'Cyclic' - 8 cycles of 11 bytes - 1000000 keys
Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Testing collisions (high 32-bit) - Expected 116.4, actual 120 (1.03x) (4)
Testing collisions (high 23-34 bits) - Worst is 32 bits: 120/116 (1.03x)
Testing collisions (high 12-bit) - Expected 995904.0, actual 995904 (1.00x)
Testing collisions (high 8-bit) - Expected 999744.0, actual 999744 (1.00x)
Testing collisions (low 32-bit) - Expected 116.4, actual 119 (1.02x) (3)
Testing collisions (low 23-34 bits) - Worst is 30 bits: 483/465 (1.04x)
Testing collisions (low 12-bit) - Expected 995904.0, actual 995904 (1.00x)
Testing collisions (low 8-bit) - Expected 999744.0, actual 999744 (1.00x)
Testing distribution - Worst bias is the 17-bit window at bit 9 - 0.095%
Keyset 'Cyclic' - 8 cycles of 12 bytes - 1000000 keys
Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Testing collisions (high 32-bit) - Expected 116.4, actual 108 (0.93x)
Testing collisions (high 23-34 bits) - Worst is 25 bits: 14681/14901 (0.99x)
Testing collisions (high 12-bit) - Expected 995904.0, actual 995904 (1.00x)
Testing collisions (high 8-bit) - Expected 999744.0, actual 999744 (1.00x)
Testing collisions (low 32-bit) - Expected 116.4, actual 111 (0.95x)
Testing collisions (low 23-34 bits) - Worst is 34 bits: 31/29 (1.07x)
Testing collisions (low 12-bit) - Expected 995904.0, actual 995904 (1.00x)
Testing collisions (low 8-bit) - Expected 999744.0, actual 999744 (1.00x)
Testing distribution - Worst bias is the 17-bit window at bit 31 - 0.120%
Keyset 'Cyclic' - 8 cycles of 16 bytes - 1000000 keys
Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Testing collisions (high 32-bit) - Expected 116.4, actual 114 (0.98x)
Testing collisions (high 23-34 bits) - Worst is 33 bits: 61/58 (1.05x)
Testing collisions (high 12-bit) - Expected 995904.0, actual 995904 (1.00x)
Testing collisions (high 8-bit) - Expected 999744.0, actual 999744 (1.00x)
Testing collisions (low 32-bit) - Expected 116.4, actual 120 (1.03x) (4)
Testing collisions (low 23-34 bits) - Worst is 32 bits: 120/116 (1.03x)
Testing collisions (low 12-bit) - Expected 995904.0, actual 995904 (1.00x)
Testing collisions (low 8-bit) - Expected 999744.0, actual 999744 (1.00x)
Testing distribution - Worst bias is the 17-bit window at bit 23 - 0.084%
[[[ Keyset 'TwoBytes' Tests ]]]
Keyset 'TwoBytes' - up-to-4-byte keys, 652545 total keys
Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Testing collisions (high 32-bit) - Expected 49.6, actual 47 (0.95x)
Testing collisions (high 23-33 bits) - Worst is 33 bits: 31/24 (1.25x)
Testing collisions (high 12-bit) - Expected 648449.0, actual 648449 (1.00x)
Testing collisions (high 8-bit) - Expected 652289.0, actual 652289 (1.00x)
Testing collisions (low 32-bit) - Expected 49.6, actual 40 (0.81x)
Testing collisions (low 23-33 bits) - Worst is 33 bits: 29/24 (1.17x)
Testing collisions (low 12-bit) - Expected 648449.0, actual 648449 (1.00x)
Testing collisions (low 8-bit) - Expected 652289.0, actual 652289 (1.00x)
Testing distribution - Worst bias is the 16-bit window at bit 59 - 0.091%
Keyset 'TwoBytes' - up-to-8-byte keys, 5471025 total keys
Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Testing collisions (high 32-bit) - Expected 3484.6, actual 3422 (0.98x) (-62)
Testing collisions (high 26-39 bits) - Worst is 38 bits: 57/54 (1.05x)
Testing collisions (high 12-bit) - Expected 5466929.0, actual 5466929 (1.00x)
Testing collisions (high 8-bit) - Expected 5470769.0, actual 5470769 (1.00x)
Testing collisions (low 32-bit) - Expected 3484.6, actual 3447 (0.99x) (-37)
Testing collisions (low 26-39 bits) - Worst is 38 bits: 66/54 (1.21x)
Testing collisions (low 12-bit) - Expected 5466929.0, actual 5466929 (1.00x)
Testing collisions (low 8-bit) - Expected 5470769.0, actual 5470769 (1.00x)
Testing distribution - Worst bias is the 20-bit window at bit 20 - 0.047%
Keyset 'TwoBytes' - up-to-12-byte keys, 18616785 total keys
Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Testing collisions (high 32-bit) - Expected 40347.8, actual 40005 (0.99x) (-342)
Testing collisions (high 27-42 bits) - Worst is 42 bits: 48/39 (1.22x)
Testing collisions (high 12-bit) - Expected 18612689.0, actual 18612689 (1.00x)
Testing collisions (high 8-bit) - Expected 18616529.0, actual 18616529 (1.00x)
Testing collisions (low 32-bit) - Expected 40347.8, actual 40090 (0.99x) (-257)
Testing collisions (low 27-42 bits) - Worst is 32 bits: 40090/40347 (0.99x)
Testing collisions (low 12-bit) - Expected 18612689.0, actual 18612689 (1.00x)
Testing collisions (low 8-bit) - Expected 18616529.0, actual 18616529 (1.00x)
Testing distribution - Worst bias is the 20-bit window at bit 32 - 0.023%
Keyset 'TwoBytes' - up-to-16-byte keys, 44251425 total keys
Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Testing collisions (high 32-bit) - Expected 227963.2, actual 226326 (0.99x) (-1637)
Testing collisions (high 29-45 bits) - Worst is 44 bits: 71/55 (1.28x)
Testing collisions (high 12-bit) - Expected 44247329.0, actual 44247329 (1.00x)
Testing collisions (high 8-bit) - Expected 44251169.0, actual 44251169 (1.00x)
Testing collisions (low 32-bit) - Expected 227963.2, actual 226326 (0.99x) (-1637)
Testing collisions (low 29-45 bits) - Worst is 39 bits: 1824/1780 (1.02x)
Testing collisions (low 12-bit) - Expected 44247329.0, actual 44247329 (1.00x)
Testing collisions (low 8-bit) - Expected 44251169.0, actual 44251169 (1.00x)
Testing distribution - Worst bias is the 20-bit window at bit 41 - 0.009%
Keyset 'TwoBytes' - up-to-20-byte keys, 86536545 total keys
Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Testing collisions (high 32-bit) - Expected 871784.7, actual 864559 (0.99x) (-7225)
Testing collisions (high 30-47 bits) - Worst is 40 bits: 3405/3405 (1.00x)
Testing collisions (high 12-bit) - Expected 86532449.0, actual 86532449 (1.00x)
Testing collisions (high 8-bit) - Expected 86536289.0, actual 86536289 (1.00x)
Testing collisions (low 32-bit) - Expected 871784.7, actual 865350 (0.99x) (-6434)
Testing collisions (low 30-47 bits) - Worst is 46 bits: 62/53 (1.17x)
Testing collisions (low 12-bit) - Expected 86532449.0, actual 86532449 (1.00x)
Testing collisions (low 8-bit) - Expected 86536289.0, actual 86536289 (1.00x)
Testing distribution - Worst bias is the 20-bit window at bit 54 - 0.003%
[[[ Keyset 'Text' Tests ]]]
Keyset 'Text' - keys of form "FooXXXXBar" - 14776336 keys
Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Testing collisions (high 32-bit) - Expected 25418.1, actual 25232 (0.99x) (-186)
Testing collisions (high 27-42 bits) - Worst is 38 bits: 429/397 (1.08x)
Testing collisions (high 12-bit) - Expected 14772240.0, actual 14772240 (1.00x)
Testing collisions (high 8-bit) - Expected 14776080.0, actual 14776080 (1.00x)
Testing collisions (low 32-bit) - Expected 25418.1, actual 25313 (1.00x) (-105)
Testing collisions (low 27-42 bits) - Worst is 41 bits: 64/49 (1.29x)
Testing collisions (low 12-bit) - Expected 14772240.0, actual 14772240 (1.00x)
Testing collisions (low 8-bit) - Expected 14776080.0, actual 14776080 (1.00x)
Testing distribution - Worst bias is the 20-bit window at bit 45 - 0.014%
Keyset 'Text' - keys of form "FooBarXXXX" - 14776336 keys
Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Testing collisions (high 32-bit) - Expected 25418.1, actual 25414 (1.00x) (-4)
Testing collisions (high 27-42 bits) - Worst is 32 bits: 25414/25418 (1.00x)
Testing collisions (high 12-bit) - Expected 14772240.0, actual 14772240 (1.00x)
Testing collisions (high 8-bit) - Expected 14776080.0, actual 14776080 (1.00x)
Testing collisions (low 32-bit) - Expected 25418.1, actual 25129 (0.99x) (-289)
Testing collisions (low 27-42 bits) - Worst is 35 bits: 3182/3177 (1.00x)
Testing collisions (low 12-bit) - Expected 14772240.0, actual 14772240 (1.00x)
Testing collisions (low 8-bit) - Expected 14776080.0, actual 14776080 (1.00x)
Testing distribution - Worst bias is the 20-bit window at bit 35 - 0.018%
Keyset 'Text' - keys of form "XXXXFooBar" - 14776336 keys
Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Testing collisions (high 32-bit) - Expected 25418.1, actual 25279 (0.99x) (-139)
Testing collisions (high 27-42 bits) - Worst is 37 bits: 804/794 (1.01x)
Testing collisions (high 12-bit) - Expected 14772240.0, actual 14772240 (1.00x)
Testing collisions (high 8-bit) - Expected 14776080.0, actual 14776080 (1.00x)
Testing collisions (low 32-bit) - Expected 25418.1, actual 25254 (0.99x) (-164)
Testing collisions (low 27-42 bits) - Worst is 41 bits: 56/49 (1.13x)
Testing collisions (low 12-bit) - Expected 14772240.0, actual 14772240 (1.00x)
Testing collisions (low 8-bit) - Expected 14776080.0, actual 14776080 (1.00x)
Testing distribution - Worst bias is the 20-bit window at bit 28 - 0.020%
Keyset 'Words' - 4000000 random keys of len 6-16 from alnum charset
Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Testing collisions (high 32-bit) - Expected 1862.6, actual 1796 (0.96x)
Testing collisions (high 25-38 bits) - Worst is 37 bits: 64/58 (1.10x)
Testing collisions (high 12-bit) - Expected 3995904.0, actual 3995904 (1.00x)
Testing collisions (high 8-bit) - Expected 3999744.0, actual 3999744 (1.00x)
Testing collisions (low 32-bit) - Expected 1862.6, actual 1831 (0.98x) (-31)
Testing collisions (low 25-38 bits) - Worst is 28 bits: 29772/29802 (1.00x)
Testing collisions (low 12-bit) - Expected 3995904.0, actual 3995904 (1.00x)
Testing collisions (low 8-bit) - Expected 3999744.0, actual 3999744 (1.00x)
Testing distribution - Worst bias is the 19-bit window at bit 35 - 0.048%
Keyset 'Words' - 4000000 random keys of len 6-16 from password charset
Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Testing collisions (high 32-bit) - Expected 1862.6, actual 1792 (0.96x)
Testing collisions (high 25-38 bits) - Worst is 36 bits: 126/116 (1.08x)
Testing collisions (high 12-bit) - Expected 3995904.0, actual 3995904 (1.00x)
Testing collisions (high 8-bit) - Expected 3999744.0, actual 3999744 (1.00x)
Testing collisions (low 32-bit) - Expected 1862.6, actual 1828 (0.98x) (-34)
Testing collisions (low 25-38 bits) - Worst is 38 bits: 37/29 (1.27x)
Testing collisions (low 12-bit) - Expected 3995904.0, actual 3995904 (1.00x)
Testing collisions (low 8-bit) - Expected 3999744.0, actual 3999744 (1.00x)
Testing distribution - Worst bias is the 19-bit window at bit 9 - 0.053%
Keyset 'Words' - 479826 dict words
Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Testing collisions (high 32-bit) - Expected 26.8, actual 19 (0.71x)
Testing collisions (high 22-32 bits) - Worst is 29 bits: 220/214 (1.03x)
Testing collisions (high 12-bit) - Expected 475730.0, actual 475730 (1.00x)
Testing collisions (high 8-bit) - Expected 479570.0, actual 479570 (1.00x)
Testing collisions (low 32-bit) - Expected 26.8, actual 31 (1.16x) (5)
Testing collisions (low 22-32 bits) - Worst is 31 bits: 66/53 (1.23x)
Testing collisions (low 12-bit) - Expected 475730.0, actual 475730 (1.00x)
Testing collisions (low 8-bit) - Expected 479570.0, actual 479570 (1.00x)
Testing distribution - Worst bias is the 16-bit window at bit 30 - 0.166%
[[[ Keyset 'Zeroes' Tests ]]]
Keyset 'Zeroes' - 204800 keys
Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Testing collisions (high 32-bit) - Expected 4.9, actual 4 (0.82x)
Testing collisions (high 21-29 bits) - Worst is 26 bits: 326/312 (1.04x)
Testing collisions (high 12-bit) - Expected 200704.0, actual 200704 (1.00x)
Testing collisions (high 8-bit) - Expected 204544.0, actual 204544 (1.00x)
Testing collisions (low 32-bit) - Expected 4.9, actual 8 (1.64x) (4)
Testing collisions (low 21-29 bits) - Worst is 23 bits: 2504/2499 (1.00x)
Testing collisions (low 12-bit) - Expected 200704.0, actual 200704 (1.00x)
Testing collisions (low 8-bit) - Expected 204544.0, actual 204544 (1.00x)
Testing distribution - Worst bias is the 15-bit window at bit 34 - 0.237%
[[[ Keyset 'Seed' Tests ]]]
Keyset 'Seed' - 5000000 keys
Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Testing collisions (high 32-bit) - Expected 2910.4, actual 2838 (0.98x)
Testing collisions (high 26-39 bits) - Worst is 30 bits: 11594/11641 (1.00x)
Testing collisions (high 12-bit) - Expected 4995904.0, actual 4995904 (1.00x)
Testing collisions (high 8-bit) - Expected 4999744.0, actual 4999744 (1.00x)
Testing collisions (low 32-bit) - Expected 2910.4, actual 2897 (1.00x) (-13)
Testing collisions (low 26-39 bits) - Worst is 39 bits: 24/22 (1.06x)
Testing collisions (low 12-bit) - Expected 4995904.0, actual 4995904 (1.00x)
Testing collisions (low 8-bit) - Expected 4999744.0, actual 4999744 (1.00x)
Testing distribution - Worst bias is the 19-bit window at bit 46 - 0.060%
[[[ Keyset 'PerlinNoise' Tests ]]]
Testing 16777216 coordinates (L2) :
Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Testing collisions (high 32-bit) - Expected 32768.0, actual 33131 (1.01x) (364)
Testing collisions (high 27-42 bits) - Worst is 32 bits: 33131/32767 (1.01x)
Testing collisions (high 12-bit) - Expected 16773120.0, actual 16773120 (1.00x)
Testing collisions (high 8-bit) - Expected 16776960.0, actual 16776960 (1.00x)
Testing collisions (low 32-bit) - Expected 32768.0, actual 32506 (0.99x) (-261)
Testing collisions (low 27-42 bits) - Worst is 42 bits: 35/31 (1.09x)
Testing collisions (low 12-bit) - Expected 16773120.0, actual 16773120 (1.00x)
Testing collisions (low 8-bit) - Expected 16776960.0, actual 16776960 (1.00x)
[[[ Diff 'Differential' Tests ]]]
Testing 8303632 up-to-5-bit differentials in 64-bit keys -> 64 bit hashes.
1000 reps, 8303632000 total tests, expecting 0.00 random collisions..........
0 total collisions, of which 0 single collisions were ignored
Testing 11017632 up-to-4-bit differentials in 128-bit keys -> 64 bit hashes.
1000 reps, 11017632000 total tests, expecting 0.00 random collisions..........
0 total collisions, of which 0 single collisions were ignored
Testing 2796416 up-to-3-bit differentials in 256-bit keys -> 64 bit hashes.
1000 reps, 2796416000 total tests, expecting 0.00 random collisions..........
0 total collisions, of which 0 single collisions were ignored
[[[ DiffDist 'Differential Distribution' Tests ]]]
Testing bit 0
Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Testing collisions (high 32-bit) - Expected 512.0, actual 552 (1.08x) (41)
Testing collisions (high 24-36 bits) - Worst is 31 bits: 1109/1023 (1.08x)
Testing collisions (high 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (high 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing collisions (low 32-bit) - Expected 512.0, actual 483 (0.94x)
Testing collisions (low 24-36 bits) - Worst is 36 bits: 41/31 (1.28x)
Testing collisions (low 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (low 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing bit 1
Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Testing collisions (high 32-bit) - Expected 512.0, actual 509 (0.99x) (-2)
Testing collisions (high 24-36 bits) - Worst is 36 bits: 35/31 (1.09x)
Testing collisions (high 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (high 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing collisions (low 32-bit) - Expected 512.0, actual 478 (0.93x)
Testing collisions (low 24-36 bits) - Worst is 26 bits: 32527/32767 (0.99x)
Testing collisions (low 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (low 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing bit 2
Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Testing collisions (high 32-bit) - Expected 512.0, actual 493 (0.96x)
Testing collisions (high 24-36 bits) - Worst is 27 bits: 16571/16383 (1.01x)
Testing collisions (high 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (high 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing collisions (low 32-bit) - Expected 512.0, actual 527 (1.03x) (16)
Testing collisions (low 24-36 bits) - Worst is 35 bits: 75/63 (1.17x)
Testing collisions (low 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (low 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing bit 3
Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Testing collisions (high 32-bit) - Expected 512.0, actual 487 (0.95x)
Testing collisions (high 24-36 bits) - Worst is 34 bits: 137/127 (1.07x)
Testing collisions (high 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (high 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing collisions (low 32-bit) - Expected 512.0, actual 527 (1.03x) (16)
Testing collisions (low 24-36 bits) - Worst is 32 bits: 527/511 (1.03x)
Testing collisions (low 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (low 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing bit 4
Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Testing collisions (high 32-bit) - Expected 512.0, actual 543 (1.06x) (32)
Testing collisions (high 24-36 bits) - Worst is 34 bits: 152/127 (1.19x)
Testing collisions (high 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (high 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing collisions (low 32-bit) - Expected 512.0, actual 492 (0.96x)
Testing collisions (low 24-36 bits) - Worst is 28 bits: 8201/8191 (1.00x)
Testing collisions (low 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (low 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing bit 5
Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Testing collisions (high 32-bit) - Expected 512.0, actual 482 (0.94x)
Testing collisions (high 24-36 bits) - Worst is 36 bits: 34/31 (1.06x)
Testing collisions (high 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (high 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing collisions (low 32-bit) - Expected 512.0, actual 508 (0.99x) (-3)
Testing collisions (low 24-36 bits) - Worst is 33 bits: 268/255 (1.05x)
Testing collisions (low 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (low 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing bit 6
Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Testing collisions (high 32-bit) - Expected 512.0, actual 541 (1.06x) (30)
Testing collisions (high 24-36 bits) - Worst is 33 bits: 282/255 (1.10x)
Testing collisions (high 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (high 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing collisions (low 32-bit) - Expected 512.0, actual 517 (1.01x) (6)
Testing collisions (low 24-36 bits) - Worst is 36 bits: 35/31 (1.09x)
Testing collisions (low 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (low 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing bit 7
Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Testing collisions (high 32-bit) - Expected 512.0, actual 483 (0.94x)
Testing collisions (high 24-36 bits) - Worst is 35 bits: 66/63 (1.03x)
Testing collisions (high 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (high 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing collisions (low 32-bit) - Expected 512.0, actual 542 (1.06x) (31)
Testing collisions (low 24-36 bits) - Worst is 32 bits: 542/511 (1.06x)
Testing collisions (low 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (low 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing bit 8
Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Testing collisions (high 32-bit) - Expected 512.0, actual 506 (0.99x) (-5)
Testing collisions (high 24-36 bits) - Worst is 36 bits: 34/31 (1.06x)
Testing collisions (high 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (high 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing collisions (low 32-bit) - Expected 512.0, actual 510 (1.00x) (-1)
Testing collisions (low 24-36 bits) - Worst is 33 bits: 260/255 (1.02x)
Testing collisions (low 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (low 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing bit 9
Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Testing collisions (high 32-bit) - Expected 512.0, actual 529 (1.03x) (18)
Testing collisions (high 24-36 bits) - Worst is 35 bits: 67/63 (1.05x)
Testing collisions (high 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (high 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing collisions (low 32-bit) - Expected 512.0, actual 492 (0.96x)
Testing collisions (low 24-36 bits) - Worst is 36 bits: 40/31 (1.25x)
Testing collisions (low 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (low 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing bit 10
Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Testing collisions (high 32-bit) - Expected 512.0, actual 575 (1.12x) (64)
Testing collisions (high 24-36 bits) - Worst is 36 bits: 39/31 (1.22x)
Testing collisions (high 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (high 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing collisions (low 32-bit) - Expected 512.0, actual 550 (1.07x) (39)
Testing collisions (low 24-36 bits) - Worst is 35 bits: 70/63 (1.09x)
Testing collisions (low 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (low 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing bit 11
Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Testing collisions (high 32-bit) - Expected 512.0, actual 513 (1.00x) (2)
Testing collisions (high 24-36 bits) - Worst is 34 bits: 138/127 (1.08x)
Testing collisions (high 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (high 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing collisions (low 32-bit) - Expected 512.0, actual 521 (1.02x) (10)
Testing collisions (low 24-36 bits) - Worst is 36 bits: 39/31 (1.22x)
Testing collisions (low 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (low 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing bit 12
Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Testing collisions (high 32-bit) - Expected 512.0, actual 493 (0.96x)
Testing collisions (high 24-36 bits) - Worst is 35 bits: 69/63 (1.08x)
Testing collisions (high 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (high 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing collisions (low 32-bit) - Expected 512.0, actual 493 (0.96x)
Testing collisions (low 24-36 bits) - Worst is 36 bits: 34/31 (1.06x)
Testing collisions (low 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (low 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing bit 13
Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Testing collisions (high 32-bit) - Expected 512.0, actual 544 (1.06x) (33)
Testing collisions (high 24-36 bits) - Worst is 36 bits: 36/31 (1.13x)
Testing collisions (high 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (high 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing collisions (low 32-bit) - Expected 512.0, actual 486 (0.95x)
Testing collisions (low 24-36 bits) - Worst is 35 bits: 78/63 (1.22x)
Testing collisions (low 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (low 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing bit 14
Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Testing collisions (high 32-bit) - Expected 512.0, actual 524 (1.02x) (13)
Testing collisions (high 24-36 bits) - Worst is 31 bits: 1058/1023 (1.03x)
Testing collisions (high 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (high 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing collisions (low 32-bit) - Expected 512.0, actual 490 (0.96x)
Testing collisions (low 24-36 bits) - Worst is 27 bits: 16263/16383 (0.99x)
Testing collisions (low 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (low 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing bit 15
Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Testing collisions (high 32-bit) - Expected 512.0, actual 513 (1.00x) (2)
Testing collisions (high 24-36 bits) - Worst is 33 bits: 264/255 (1.03x)
Testing collisions (high 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (high 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing collisions (low 32-bit) - Expected 512.0, actual 478 (0.93x)
Testing collisions (low 24-36 bits) - Worst is 28 bits: 8150/8191 (0.99x)
Testing collisions (low 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (low 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing bit 16
Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Testing collisions (high 32-bit) - Expected 512.0, actual 505 (0.99x) (-6)
Testing collisions (high 24-36 bits) - Worst is 34 bits: 132/127 (1.03x)
Testing collisions (high 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (high 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing collisions (low 32-bit) - Expected 512.0, actual 474 (0.93x)
Testing collisions (low 24-36 bits) - Worst is 26 bits: 32623/32767 (1.00x)
Testing collisions (low 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (low 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing bit 17
Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Testing collisions (high 32-bit) - Expected 512.0, actual 527 (1.03x) (16)
Testing collisions (high 24-36 bits) - Worst is 36 bits: 37/31 (1.16x)
Testing collisions (high 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (high 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing collisions (low 32-bit) - Expected 512.0, actual 523 (1.02x) (12)
Testing collisions (low 24-36 bits) - Worst is 32 bits: 523/511 (1.02x)
Testing collisions (low 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (low 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing bit 18
Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Testing collisions (high 32-bit) - Expected 512.0, actual 563 (1.10x) (52)
Testing collisions (high 24-36 bits) - Worst is 33 bits: 283/255 (1.11x)
Testing collisions (high 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (high 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing collisions (low 32-bit) - Expected 512.0, actual 548 (1.07x) (37)
Testing collisions (low 24-36 bits) - Worst is 34 bits: 144/127 (1.13x)
Testing collisions (low 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (low 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing bit 19
Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Testing collisions (high 32-bit) - Expected 512.0, actual 495 (0.97x)
Testing collisions (high 24-36 bits) - Worst is 34 bits: 130/127 (1.02x)
Testing collisions (high 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (high 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing collisions (low 32-bit) - Expected 512.0, actual 546 (1.07x) (35)
Testing collisions (low 24-36 bits) - Worst is 36 bits: 35/31 (1.09x)
Testing collisions (low 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (low 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing bit 20
Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Testing collisions (high 32-bit) - Expected 512.0, actual 522 (1.02x) (11)
Testing collisions (high 24-36 bits) - Worst is 36 bits: 38/31 (1.19x)
Testing collisions (high 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (high 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing collisions (low 32-bit) - Expected 512.0, actual 493 (0.96x)
Testing collisions (low 24-36 bits) - Worst is 28 bits: 8122/8191 (0.99x)
Testing collisions (low 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (low 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing bit 21
Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Testing collisions (high 32-bit) - Expected 512.0, actual 500 (0.98x)
Testing collisions (high 24-36 bits) - Worst is 36 bits: 33/31 (1.03x)
Testing collisions (high 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (high 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing collisions (low 32-bit) - Expected 512.0, actual 495 (0.97x)
Testing collisions (low 24-36 bits) - Worst is 36 bits: 33/31 (1.03x)
Testing collisions (low 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (low 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing bit 22
Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Testing collisions (high 32-bit) - Expected 512.0, actual 497 (0.97x)
Testing collisions (high 24-36 bits) - Worst is 36 bits: 35/31 (1.09x)
Testing collisions (high 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (high 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing collisions (low 32-bit) - Expected 512.0, actual 497 (0.97x)
Testing collisions (low 24-36 bits) - Worst is 36 bits: 38/31 (1.19x)
Testing collisions (low 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (low 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing bit 23
Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Testing collisions (high 32-bit) - Expected 512.0, actual 501 (0.98x)
Testing collisions (high 24-36 bits) - Worst is 35 bits: 65/63 (1.02x)
Testing collisions (high 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (high 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing collisions (low 32-bit) - Expected 512.0, actual 479 (0.94x)
Testing collisions (low 24-36 bits) - Worst is 34 bits: 137/127 (1.07x)
Testing collisions (low 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (low 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing bit 24
Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Testing collisions (high 32-bit) - Expected 512.0, actual 524 (1.02x) (13)
Testing collisions (high 24-36 bits) - Worst is 34 bits: 135/127 (1.05x)
Testing collisions (high 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (high 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing collisions (low 32-bit) - Expected 512.0, actual 463 (0.90x)
Testing collisions (low 24-36 bits) - Worst is 29 bits: 4164/4095 (1.02x)
Testing collisions (low 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (low 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing bit 25
Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Testing collisions (high 32-bit) - Expected 512.0, actual 503 (0.98x) (-8)
Testing collisions (high 24-36 bits) - Worst is 36 bits: 32/31 (1.00x)
Testing collisions (high 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (high 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing collisions (low 32-bit) - Expected 512.0, actual 533 (1.04x) (22)
Testing collisions (low 24-36 bits) - Worst is 35 bits: 69/63 (1.08x)
Testing collisions (low 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (low 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing bit 26
Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Testing collisions (high 32-bit) - Expected 512.0, actual 490 (0.96x)
Testing collisions (high 24-36 bits) - Worst is 33 bits: 266/255 (1.04x)
Testing collisions (high 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (high 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing collisions (low 32-bit) - Expected 512.0, actual 484 (0.95x)
Testing collisions (low 24-36 bits) - Worst is 27 bits: 16413/16383 (1.00x)
Testing collisions (low 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (low 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing bit 27
Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Testing collisions (high 32-bit) - Expected 512.0, actual 529 (1.03x) (18)
Testing collisions (high 24-36 bits) - Worst is 36 bits: 37/31 (1.16x)
Testing collisions (high 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (high 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing collisions (low 32-bit) - Expected 512.0, actual 508 (0.99x) (-3)
Testing collisions (low 24-36 bits) - Worst is 35 bits: 69/63 (1.08x)
Testing collisions (low 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (low 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing bit 28
Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Testing collisions (high 32-bit) - Expected 512.0, actual 507 (0.99x) (-4)
Testing collisions (high 24-36 bits) - Worst is 36 bits: 36/31 (1.13x)
Testing collisions (high 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (high 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing collisions (low 32-bit) - Expected 512.0, actual 528 (1.03x) (17)
Testing collisions (low 24-36 bits) - Worst is 32 bits: 528/511 (1.03x)
Testing collisions (low 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (low 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing bit 29
Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Testing collisions (high 32-bit) - Expected 512.0, actual 538 (1.05x) (27)
Testing collisions (high 24-36 bits) - Worst is 32 bits: 538/511 (1.05x)
Testing collisions (high 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (high 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing collisions (low 32-bit) - Expected 512.0, actual 512 (1.00x) (1)
Testing collisions (low 24-36 bits) - Worst is 36 bits: 42/31 (1.31x)
Testing collisions (low 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (low 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing bit 30
Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Testing collisions (high 32-bit) - Expected 512.0, actual 540 (1.05x) (29)
Testing collisions (high 24-36 bits) - Worst is 33 bits: 274/255 (1.07x)
Testing collisions (high 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (high 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing collisions (low 32-bit) - Expected 512.0, actual 526 (1.03x) (15)
Testing collisions (low 24-36 bits) - Worst is 35 bits: 74/63 (1.16x)
Testing collisions (low 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (low 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing bit 31
Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Testing collisions (high 32-bit) - Expected 512.0, actual 497 (0.97x)
Testing collisions (high 24-36 bits) - Worst is 36 bits: 33/31 (1.03x)
Testing collisions (high 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (high 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing collisions (low 32-bit) - Expected 512.0, actual 469 (0.92x)
Testing collisions (low 24-36 bits) - Worst is 36 bits: 32/31 (1.00x)
Testing collisions (low 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (low 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing bit 32
Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Testing collisions (high 32-bit) - Expected 512.0, actual 494 (0.96x)
Testing collisions (high 24-36 bits) - Worst is 27 bits: 16381/16383 (1.00x)
Testing collisions (high 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (high 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing collisions (low 32-bit) - Expected 512.0, actual 513 (1.00x) (2)
Testing collisions (low 24-36 bits) - Worst is 30 bits: 2074/2047 (1.01x)
Testing collisions (low 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (low 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing bit 33
Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Testing collisions (high 32-bit) - Expected 512.0, actual 538 (1.05x) (27)
Testing collisions (high 24-36 bits) - Worst is 34 bits: 153/127 (1.20x)
Testing collisions (high 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (high 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing collisions (low 32-bit) - Expected 512.0, actual 531 (1.04x) (20)
Testing collisions (low 24-36 bits) - Worst is 34 bits: 143/127 (1.12x)
Testing collisions (low 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (low 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing bit 34
Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Testing collisions (high 32-bit) - Expected 512.0, actual 533 (1.04x) (22)
Testing collisions (high 24-36 bits) - Worst is 35 bits: 76/63 (1.19x)
Testing collisions (high 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (high 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing collisions (low 32-bit) - Expected 512.0, actual 535 (1.04x) (24)
Testing collisions (low 24-36 bits) - Worst is 31 bits: 1084/1023 (1.06x)
Testing collisions (low 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (low 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing bit 35
Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Testing collisions (high 32-bit) - Expected 512.0, actual 488 (0.95x)
Testing collisions (high 24-36 bits) - Worst is 29 bits: 4055/4095 (0.99x)
Testing collisions (high 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (high 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing collisions (low 32-bit) - Expected 512.0, actual 519 (1.01x) (8)
Testing collisions (low 24-36 bits) - Worst is 33 bits: 271/255 (1.06x)
Testing collisions (low 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (low 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing bit 36
Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Testing collisions (high 32-bit) - Expected 512.0, actual 500 (0.98x)
Testing collisions (high 24-36 bits) - Worst is 36 bits: 37/31 (1.16x)
Testing collisions (high 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (high 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing collisions (low 32-bit) - Expected 512.0, actual 521 (1.02x) (10)
Testing collisions (low 24-36 bits) - Worst is 34 bits: 146/127 (1.14x)
Testing collisions (low 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (low 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing bit 37
Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Testing collisions (high 32-bit) - Expected 512.0, actual 496 (0.97x)
Testing collisions (high 24-36 bits) - Worst is 29 bits: 4227/4095 (1.03x)
Testing collisions (high 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (high 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing collisions (low 32-bit) - Expected 512.0, actual 508 (0.99x) (-3)
Testing collisions (low 24-36 bits) - Worst is 36 bits: 36/31 (1.13x)
Testing collisions (low 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (low 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing bit 38
Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Testing collisions (high 32-bit) - Expected 512.0, actual 531 (1.04x) (20)
Testing collisions (high 24-36 bits) - Worst is 34 bits: 134/127 (1.05x)
Testing collisions (high 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (high 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing collisions (low 32-bit) - Expected 512.0, actual 500 (0.98x)
Testing collisions (low 24-36 bits) - Worst is 36 bits: 34/31 (1.06x)
Testing collisions (low 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (low 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing bit 39
Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Testing collisions (high 32-bit) - Expected 512.0, actual 476 (0.93x)
Testing collisions (high 24-36 bits) - Worst is 36 bits: 36/31 (1.13x)
Testing collisions (high 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (high 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing collisions (low 32-bit) - Expected 512.0, actual 508 (0.99x) (-3)
Testing collisions (low 24-36 bits) - Worst is 36 bits: 35/31 (1.09x)
Testing collisions (low 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (low 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing bit 40
Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Testing collisions (high 32-bit) - Expected 512.0, actual 542 (1.06x) (31)
Testing collisions (high 24-36 bits) - Worst is 32 bits: 542/511 (1.06x)
Testing collisions (high 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (high 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing collisions (low 32-bit) - Expected 512.0, actual 512 (1.00x) (1)
Testing collisions (low 24-36 bits) - Worst is 33 bits: 268/255 (1.05x)
Testing collisions (low 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (low 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing bit 41
Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Testing collisions (high 32-bit) - Expected 512.0, actual 523 (1.02x) (12)
Testing collisions (high 24-36 bits) - Worst is 36 bits: 44/31 (1.38x)
Testing collisions (high 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (high 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing collisions (low 32-bit) - Expected 512.0, actual 497 (0.97x)
Testing collisions (low 24-36 bits) - Worst is 36 bits: 35/31 (1.09x)
Testing collisions (low 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (low 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing bit 42
Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Testing collisions (high 32-bit) - Expected 512.0, actual 524 (1.02x) (13)
Testing collisions (high 24-36 bits) - Worst is 36 bits: 36/31 (1.13x)
Testing collisions (high 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (high 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing collisions (low 32-bit) - Expected 512.0, actual 492 (0.96x)
Testing collisions (low 24-36 bits) - Worst is 36 bits: 33/31 (1.03x)
Testing collisions (low 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (low 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing bit 43
Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Testing collisions (high 32-bit) - Expected 512.0, actual 529 (1.03x) (18)
Testing collisions (high 24-36 bits) - Worst is 34 bits: 142/127 (1.11x)
Testing collisions (high 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (high 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing collisions (low 32-bit) - Expected 512.0, actual 516 (1.01x) (5)
Testing collisions (low 24-36 bits) - Worst is 35 bits: 67/63 (1.05x)
Testing collisions (low 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (low 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing bit 44
Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Testing collisions (high 32-bit) - Expected 512.0, actual 522 (1.02x) (11)
Testing collisions (high 24-36 bits) - Worst is 34 bits: 148/127 (1.16x)
Testing collisions (high 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (high 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing collisions (low 32-bit) - Expected 512.0, actual 542 (1.06x) (31)
Testing collisions (low 24-36 bits) - Worst is 34 bits: 142/127 (1.11x)
Testing collisions (low 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (low 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing bit 45
Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Testing collisions (high 32-bit) - Expected 512.0, actual 512 (1.00x) (1)
Testing collisions (high 24-36 bits) - Worst is 35 bits: 67/63 (1.05x)
Testing collisions (high 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (high 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing collisions (low 32-bit) - Expected 512.0, actual 509 (0.99x) (-2)
Testing collisions (low 24-36 bits) - Worst is 30 bits: 2113/2047 (1.03x)
Testing collisions (low 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (low 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing bit 46
Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Testing collisions (high 32-bit) - Expected 512.0, actual 521 (1.02x) (10)
Testing collisions (high 24-36 bits) - Worst is 34 bits: 137/127 (1.07x)
Testing collisions (high 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (high 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing collisions (low 32-bit) - Expected 512.0, actual 487 (0.95x)
Testing collisions (low 24-36 bits) - Worst is 36 bits: 42/31 (1.31x)
Testing collisions (low 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (low 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing bit 47
Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Testing collisions (high 32-bit) - Expected 512.0, actual 484 (0.95x)
Testing collisions (high 24-36 bits) - Worst is 27 bits: 16350/16383 (1.00x)
Testing collisions (high 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (high 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing collisions (low 32-bit) - Expected 512.0, actual 548 (1.07x) (37)
Testing collisions (low 24-36 bits) - Worst is 33 bits: 276/255 (1.08x)
Testing collisions (low 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (low 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing bit 48
Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Testing collisions (high 32-bit) - Expected 512.0, actual 513 (1.00x) (2)
Testing collisions (high 24-36 bits) - Worst is 34 bits: 140/127 (1.09x)
Testing collisions (high 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (high 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing collisions (low 32-bit) - Expected 512.0, actual 500 (0.98x)
Testing collisions (low 24-36 bits) - Worst is 34 bits: 139/127 (1.09x)
Testing collisions (low 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (low 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing bit 49
Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Testing collisions (high 32-bit) - Expected 512.0, actual 467 (0.91x)
Testing collisions (high 24-36 bits) - Worst is 30 bits: 2132/2047 (1.04x)
Testing collisions (high 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (high 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing collisions (low 32-bit) - Expected 512.0, actual 498 (0.97x)
Testing collisions (low 24-36 bits) - Worst is 36 bits: 32/31 (1.00x)
Testing collisions (low 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (low 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing bit 50
Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Testing collisions (high 32-bit) - Expected 512.0, actual 493 (0.96x)
Testing collisions (high 24-36 bits) - Worst is 27 bits: 16235/16383 (0.99x)
Testing collisions (high 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (high 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing collisions (low 32-bit) - Expected 512.0, actual 515 (1.01x) (4)
Testing collisions (low 24-36 bits) - Worst is 36 bits: 48/31 (1.50x)
Testing collisions (low 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (low 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing bit 51
Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Testing collisions (high 32-bit) - Expected 512.0, actual 525 (1.03x) (14)
Testing collisions (high 24-36 bits) - Worst is 36 bits: 41/31 (1.28x)
Testing collisions (high 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (high 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing collisions (low 32-bit) - Expected 512.0, actual 505 (0.99x) (-6)
Testing collisions (low 24-36 bits) - Worst is 36 bits: 37/31 (1.16x)
Testing collisions (low 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (low 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing bit 52
Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Testing collisions (high 32-bit) - Expected 512.0, actual 545 (1.06x) (34)
Testing collisions (high 24-36 bits) - Worst is 32 bits: 545/511 (1.06x)
Testing collisions (high 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (high 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing collisions (low 32-bit) - Expected 512.0, actual 521 (1.02x) (10)
Testing collisions (low 24-36 bits) - Worst is 36 bits: 33/31 (1.03x)
Testing collisions (low 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (low 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing bit 53
Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Testing collisions (high 32-bit) - Expected 512.0, actual 586 (1.14x) (75)
Testing collisions (high 24-36 bits) - Worst is 36 bits: 39/31 (1.22x)
Testing collisions (high 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (high 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing collisions (low 32-bit) - Expected 512.0, actual 495 (0.97x)
Testing collisions (low 24-36 bits) - Worst is 31 bits: 1049/1023 (1.02x)
Testing collisions (low 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (low 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing bit 54
Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Testing collisions (high 32-bit) - Expected 512.0, actual 473 (0.92x)
Testing collisions (high 24-36 bits) - Worst is 27 bits: 16156/16383 (0.99x)
Testing collisions (high 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (high 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing collisions (low 32-bit) - Expected 512.0, actual 511 (1.00x)
Testing collisions (low 24-36 bits) - Worst is 36 bits: 38/31 (1.19x)
Testing collisions (low 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (low 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing bit 55
Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Testing collisions (high 32-bit) - Expected 512.0, actual 512 (1.00x) (1)
Testing collisions (high 24-36 bits) - Worst is 36 bits: 33/31 (1.03x)
Testing collisions (high 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (high 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing collisions (low 32-bit) - Expected 512.0, actual 544 (1.06x) (33)
Testing collisions (low 24-36 bits) - Worst is 31 bits: 1099/1023 (1.07x)
Testing collisions (low 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (low 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing bit 56
Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Testing collisions (high 32-bit) - Expected 512.0, actual 551 (1.08x) (40)
Testing collisions (high 24-36 bits) - Worst is 34 bits: 141/127 (1.10x)
Testing collisions (high 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (high 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing collisions (low 32-bit) - Expected 512.0, actual 503 (0.98x) (-8)
Testing collisions (low 24-36 bits) - Worst is 36 bits: 32/31 (1.00x)
Testing collisions (low 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (low 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing bit 57
Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Testing collisions (high 32-bit) - Expected 512.0, actual 503 (0.98x) (-8)
Testing collisions (high 24-36 bits) - Worst is 35 bits: 72/63 (1.13x)
Testing collisions (high 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (high 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing collisions (low 32-bit) - Expected 512.0, actual 511 (1.00x)
Testing collisions (low 24-36 bits) - Worst is 28 bits: 8196/8191 (1.00x)
Testing collisions (low 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (low 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing bit 58
Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Testing collisions (high 32-bit) - Expected 512.0, actual 486 (0.95x)
Testing collisions (high 24-36 bits) - Worst is 36 bits: 42/31 (1.31x)
Testing collisions (high 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (high 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing collisions (low 32-bit) - Expected 512.0, actual 553 (1.08x) (42)
Testing collisions (low 24-36 bits) - Worst is 33 bits: 279/255 (1.09x)
Testing collisions (low 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (low 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing bit 59
Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Testing collisions (high 32-bit) - Expected 512.0, actual 512 (1.00x) (1)
Testing collisions (high 24-36 bits) - Worst is 36 bits: 38/31 (1.19x)
Testing collisions (high 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (high 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing collisions (low 32-bit) - Expected 512.0, actual 474 (0.93x)
Testing collisions (low 24-36 bits) - Worst is 27 bits: 16298/16383 (0.99x)
Testing collisions (low 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (low 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing bit 60
Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Testing collisions (high 32-bit) - Expected 512.0, actual 539 (1.05x) (28)
Testing collisions (high 24-36 bits) - Worst is 32 bits: 539/511 (1.05x)
Testing collisions (high 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (high 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing collisions (low 32-bit) - Expected 512.0, actual 514 (1.00x) (3)
Testing collisions (low 24-36 bits) - Worst is 36 bits: 39/31 (1.22x)
Testing collisions (low 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (low 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing bit 61
Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Testing collisions (high 32-bit) - Expected 512.0, actual 516 (1.01x) (5)
Testing collisions (high 24-36 bits) - Worst is 36 bits: 36/31 (1.13x)
Testing collisions (high 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (high 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing collisions (low 32-bit) - Expected 512.0, actual 526 (1.03x) (15)
Testing collisions (low 24-36 bits) - Worst is 36 bits: 33/31 (1.03x)
Testing collisions (low 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (low 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing bit 62
Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Testing collisions (high 32-bit) - Expected 512.0, actual 494 (0.96x)
Testing collisions (high 24-36 bits) - Worst is 30 bits: 2115/2047 (1.03x)
Testing collisions (high 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (high 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing collisions (low 32-bit) - Expected 512.0, actual 497 (0.97x)
Testing collisions (low 24-36 bits) - Worst is 27 bits: 16480/16383 (1.01x)
Testing collisions (low 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (low 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing bit 63
Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Testing collisions (high 32-bit) - Expected 512.0, actual 475 (0.93x)
Testing collisions (high 24-36 bits) - Worst is 26 bits: 32716/32767 (1.00x)
Testing collisions (high 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (high 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
Testing collisions (low 32-bit) - Expected 512.0, actual 496 (0.97x)
Testing collisions (low 24-36 bits) - Worst is 28 bits: 8391/8191 (1.02x)
Testing collisions (low 12-bit) - Expected 2093056.0, actual 2093056 (1.00x)
Testing collisions (low 8-bit) - Expected 2096896.0, actual 2096896 (1.00x)
[[[ MomentChi2 Tests ]]]
Analyze hashes produced from a serie of linearly increasing numbers of 32-bit, using a step of 2 ...
Target values to approximate : 38918200.000000 - 273633.333333
4 threads starting... done
Popcount 1 stats : 38919225.990657 - 273640.703787
Popcount 0 stats : 38918122.437455 - 273619.159815
MomentChi2 for bits 1 : 1.92345
MomentChi2 for bits 0 : 0.010993
Derivative stats (transition from 2 consecutive values) :
Popcount 1 stats : 38919516.780674 - 273638.019008
Popcount 0 stats : 38918245.205298 - 273643.483822
MomentChi2 for deriv b1 : 3.16828
MomentChi2 for deriv b0 : 0.00373398
Great !!
[[[ Prng Tests ]]]
Generating 33554432 random numbers :
Testing collisions ( 64-bit) - Expected 0.0, actual 0 (0.00x)
Testing collisions (high 32-bit) - Expected 131072.0, actual 130960 (1.00x) (-111)
Testing collisions (high 28-44 bits) - Worst is 44 bits: 35/31 (1.09x)
Testing collisions (high 12-bit) - Expected 33550336.0, actual 33550336 (1.00x)
Testing collisions (high 8-bit) - Expected 33554176.0, actual 33554176 (1.00x)
Testing collisions (low 32-bit) - Expected 131072.0, actual 131455 (1.00x) (384)
Testing collisions (low 28-44 bits) - Worst is 44 bits: 36/31 (1.13x)
Testing collisions (low 12-bit) - Expected 33550336.0, actual 33550336 (1.00x)
Testing collisions (low 8-bit) - Expected 33554176.0, actual 33554176 (1.00x)
[[[ BadSeeds Tests ]]]
Testing 0 internal secrets:
0x0 PASS
Input vcode 0x00000001, Output vcode 0x00000001, Result vcode 0x00000001
Verification value is 0x00000001 - Testing took 1381.495974 seconds
-------------------------------------------------------------------------------