------------------------------------------------------------------------------- --- Testing tabulation32 "32-bit Tabulation with Multiply-Shift Mixer" POOR [[[ Sanity Tests ]]] Verification value 0xD0A4D30C ....... SKIP (self- or unseeded) Running sanity check 1 .......... PASS Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys Alignment 7 - 2.018 bytes/cycle - 5773.40 MiB/sec @ 3 ghz Alignment 6 - 2.021 bytes/cycle - 5782.08 MiB/sec @ 3 ghz Alignment 5 - 2.020 bytes/cycle - 5778.71 MiB/sec @ 3 ghz Alignment 4 - 2.019 bytes/cycle - 5775.22 MiB/sec @ 3 ghz Alignment 3 - 2.021 bytes/cycle - 5782.43 MiB/sec @ 3 ghz Alignment 2 - 2.022 bytes/cycle - 5783.79 MiB/sec @ 3 ghz Alignment 1 - 2.022 bytes/cycle - 5784.80 MiB/sec @ 3 ghz Alignment 0 - 2.023 bytes/cycle - 5788.85 MiB/sec @ 3 ghz Average - 2.021 bytes/cycle - 5781.16 MiB/sec @ 3 ghz Small key speed test - 1-byte keys - 29.80 cycles/hash Small key speed test - 2-byte keys - 27.96 cycles/hash Small key speed test - 3-byte keys - 29.00 cycles/hash Small key speed test - 4-byte keys - 27.97 cycles/hash Small key speed test - 5-byte keys - 30.12 cycles/hash Small key speed test - 6-byte keys - 29.42 cycles/hash Small key speed test - 7-byte keys - 31.00 cycles/hash Small key speed test - 8-byte keys - 28.85 cycles/hash Small key speed test - 9-byte keys - 32.53 cycles/hash Small key speed test - 10-byte keys - 30.92 cycles/hash Small key speed test - 11-byte keys - 33.00 cycles/hash Small key speed test - 12-byte keys - 30.00 cycles/hash Small key speed test - 13-byte keys - 33.00 cycles/hash Small key speed test - 14-byte keys - 32.00 cycles/hash Small key speed test - 15-byte keys - 34.00 cycles/hash Small key speed test - 16-byte keys - 45.42 cycles/hash Small key speed test - 17-byte keys - 47.53 cycles/hash Small key speed test - 18-byte keys - 47.00 cycles/hash Small key speed test - 19-byte keys - 47.70 cycles/hash Small key speed test - 20-byte keys - 46.94 cycles/hash Small key speed test - 21-byte keys - 48.30 cycles/hash Small key speed test - 22-byte keys - 47.85 cycles/hash Small key speed test - 23-byte keys - 48.28 cycles/hash Small key speed test - 24-byte keys - 48.19 cycles/hash Small key speed test - 25-byte keys - 49.99 cycles/hash Small key speed test - 26-byte keys - 50.00 cycles/hash Small key speed test - 27-byte keys - 49.63 cycles/hash Small key speed test - 28-byte keys - 50.00 cycles/hash Small key speed test - 29-byte keys - 51.00 cycles/hash Small key speed test - 30-byte keys - 51.33 cycles/hash Small key speed test - 31-byte keys - 51.27 cycles/hash Average 40.000 cycles/hash [[[ 'Hashmap' Speed Tests ]]] std::unordered_map Init std HashMapTest: 678.436 cycles/op (479826 inserts, 1% deletions) Running std HashMapTest: 597.331 cycles/op (0.8 stdv) greg7mdp/parallel-hashmap Init fast HashMapTest: 752.398 cycles/op (479826 inserts, 1% deletions) Running fast HashMapTest: 456.618 cycles/op (3.6 stdv) ....... PASS [[[ Avalanche Tests ]]] Testing 24-bit keys -> 32-bit hashes, 300000 reps worst bias is 0.608667% Testing 32-bit keys -> 32-bit hashes, 300000 reps worst bias is 0.586000% Testing 40-bit keys -> 32-bit hashes, 300000 reps worst bias is 0.713333% Testing 48-bit keys -> 32-bit hashes, 300000 reps worst bias is 0.611333% Testing 56-bit keys -> 32-bit hashes, 300000 reps worst bias is 0.701333% Testing 64-bit keys -> 32-bit hashes, 300000 reps worst bias is 0.600667% Testing 72-bit keys -> 32-bit hashes, 300000 reps worst bias is 0.633333% Testing 80-bit keys -> 32-bit hashes, 300000 reps worst bias is 0.650667% Testing 96-bit keys -> 32-bit hashes, 300000 reps worst bias is 0.670667% Testing 112-bit keys -> 32-bit hashes, 300000 reps worst bias is 0.908667% Testing 128-bit keys -> 32-bit hashes, 300000 reps worst bias is 0.764000% Testing 160-bit keys -> 32-bit hashes, 300000 reps worst bias is 0.629333% Testing 512-bit keys -> 32-bit hashes, 300000 reps worst bias is 0.808667% Testing 1024-bit keys -> 32-bit hashes, 300000 reps worst bias is 0.729333% [[[ 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: 81/76 (1.06x) 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 19-25 bits) - Worst is 22 bits: 329/305 (1.08x) 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 13-bit window at bit 5 - 0.363% Keyset 'Sparse' - 24-bit keys with up to 8 bits set - 1271626 keys Testing collisions ( 32-bit) - Expected 188.2, actual 183 (0.97x) 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 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 26 - 0.059% Keyset 'Sparse' - 32-bit keys with up to 7 bits set - 4514873 keys Testing collisions ( 32-bit) - Expected 2373.0, actual 2769 (1.17x) (396) 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 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 27 - 0.054% Keyset 'Sparse' - 40-bit keys with up to 6 bits set - 4598479 keys Testing collisions ( 32-bit) - Expected 2461.7, actual 4738 (1.92x) (2277) 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 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 16 - 0.048% Keyset 'Sparse' - 48-bit keys with up to 6 bits set - 14196869 keys Testing collisions ( 32-bit) - Expected 23463.6, actual 46680 (1.99x) (23217) 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 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 16 - 0.041% Keyset 'Sparse' - 56-bit keys with up to 5 bits set - 4216423 keys Testing collisions ( 32-bit) - Expected 2069.7, actual 4122 (1.99x) (2053) 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 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 19 - 0.070% Keyset 'Sparse' - 64-bit keys with up to 5 bits set - 8303633 keys Testing collisions ( 32-bit) - Expected 8026.9, actual 16081 (2.00x) (8055) !!!!! Keyset 'Sparse' - 72-bit keys with up to 5 bits set - 15082603 keys Testing collisions ( 32-bit) - Expected 26482.7, actual 52945 (2.00x) (26463) 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 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 20-bit window at bit 7 - 0.046% Keyset 'Sparse' - 96-bit keys with up to 4 bits set - 3469497 keys Testing collisions ( 32-bit) - Expected 1401.3, actual 2816 (2.01x) (1415) !!!!! Keyset 'Sparse' - 160-bit keys with up to 4 bits set - 26977161 keys Testing collisions ( 32-bit) - Expected 84723.3, actual 167464 (1.98x) (82741) 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 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 21 - 0.032% Keyset 'Sparse' - 256-bit keys with up to 3 bits set - 2796417 keys Testing collisions ( 32-bit) - Expected 910.4, actual 1635 (1.80x) (725) 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 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 6 - 0.082% Keyset 'Sparse' - 512-bit keys with up to 3 bits set - 22370049 keys Testing collisions ( 32-bit) - Expected 58256.4, actual 114401 (1.96x) (56145) 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 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 30 - 0.035% Keyset 'Sparse' - 1024-bit keys with up to 2 bits set - 524801 keys Testing collisions ( 32-bit) - Expected 32.1, actual 93 (2.90x) (61) !!!!! Keyset 'Sparse' - 2048-bit keys with up to 2 bits set - 2098177 keys Testing collisions ( 32-bit) - Expected 512.5, actual 1073 (2.09x) (561) !!!!! *********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.7, actual 1161 (1.74x) (493) 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 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 4 - 0.058% Combination Highbits Tests Keyset 'Combination' - up to 7 blocks from a set of 8 - 2396744 keys Testing collisions ( 32-bit) - Expected 668.7, actual 959 (1.43x) (291) 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 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 1 - 0.042% Combination Hi-Lo Tests: Keyset 'Combination' - up to 6 blocks from a set of 15 - 12204240 keys Testing collisions ( 32-bit) - Expected 17339.3, actual 33449 (1.93x) (16110) 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 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 29 - 0.054% Combination 0x8000000 Tests: Keyset 'Combination' - up to 22 blocks from a set of 2 - 8388606 keys Testing collisions ( 32-bit) - Expected 8192.0, actual 8147 (0.99x) (-44) 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 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 23 - 0.040% Combination 0x0000001 Tests: Keyset 'Combination' - up to 22 blocks from a set of 2 - 8388606 keys Testing collisions ( 32-bit) - Expected 8192.0, actual 8065 (0.98x) (-126) 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 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.021% Combination 0x800000000000000 Tests: Keyset 'Combination' - up to 22 blocks from a set of 2 - 8388606 keys Testing collisions ( 32-bit) - Expected 8192.0, actual 8138 (0.99x) (-53) 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 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 29 - 0.047% Combination 0x000000000000001 Tests: Keyset 'Combination' - up to 22 blocks from a set of 2 - 8388606 keys Testing collisions ( 32-bit) - Expected 8192.0, actual 8053 (0.98x) (-138) 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 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 24 - 0.034% Combination 16-bytes [0-1] Tests: Keyset 'Combination' - up to 22 blocks from a set of 2 - 8388606 keys Testing collisions ( 32-bit) - Expected 8192.0, actual 8306 (1.01x) (115) 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 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 11 - 0.019% Combination 16-bytes [0-last] Tests: Keyset 'Combination' - up to 22 blocks from a set of 2 - 8388606 keys Testing collisions ( 32-bit) - Expected 8192.0, actual 8057 (0.98x) (-134) 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 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.033% Combination 32-bytes [0-1] Tests: Keyset 'Combination' - up to 22 blocks from a set of 2 - 8388606 keys Testing collisions ( 32-bit) - Expected 8192.0, actual 8162 (1.00x) (-29) 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 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.024% Combination 32-bytes [0-last] Tests: Keyset 'Combination' - up to 22 blocks from a set of 2 - 8388606 keys Testing collisions ( 32-bit) - Expected 8192.0, actual 8133 (0.99x) (-58) 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 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 19 - 0.031% Combination 64-bytes [0-1] Tests: Keyset 'Combination' - up to 22 blocks from a set of 2 - 8388606 keys Testing collisions ( 32-bit) - Expected 8192.0, actual 15703 (1.92x) (7512) 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 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 21 - 0.054% Combination 64-bytes [0-last] Tests: Keyset 'Combination' - up to 22 blocks from a set of 2 - 8388606 keys Testing collisions ( 32-bit) - Expected 8192.0, actual 24940 (3.04x) (16749) !!!!! *********FAIL********* Combination 128-bytes [0-1] Tests: Keyset 'Combination' - up to 22 blocks from a set of 2 - 8388606 keys Testing collisions ( 32-bit) - Expected 8192.0, actual 16505 (2.01x) (8314) !!!!! *********FAIL********* Combination 128-bytes [0-last] Tests: Keyset 'Combination' - up to 22 blocks from a set of 2 - 8388606 keys Testing collisions ( 32-bit) - Expected 8192.0, actual 16064 (1.96x) (7873) 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 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.066% [[[ 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 131 (1.02x) (4) Window at 1 - Testing collisions ( 32-bit) - Expected 128.0, actual 138 (1.08x) (11) Window at 2 - Testing collisions ( 32-bit) - Expected 128.0, actual 151 (1.18x) (24) Window at 3 - Testing collisions ( 32-bit) - Expected 128.0, actual 118 (0.92x) Window at 4 - Testing collisions ( 32-bit) - Expected 128.0, actual 132 (1.03x) (5) Window at 5 - Testing collisions ( 32-bit) - Expected 128.0, actual 125 (0.98x) Window at 6 - Testing collisions ( 32-bit) - Expected 128.0, actual 122 (0.95x) Window at 7 - Testing collisions ( 32-bit) - Expected 128.0, actual 120 (0.94x) Window at 8 - Testing collisions ( 32-bit) - Expected 128.0, actual 111 (0.87x) Window at 9 - Testing collisions ( 32-bit) - Expected 128.0, actual 161 (1.26x) (34) Window at 10 - Testing collisions ( 32-bit) - Expected 128.0, actual 129 (1.01x) (2) Window at 11 - Testing collisions ( 32-bit) - Expected 128.0, actual 123 (0.96x) Window at 12 - Testing collisions ( 32-bit) - Expected 128.0, actual 123 (0.96x) Window at 13 - Testing collisions ( 32-bit) - Expected 128.0, actual 560 (4.38x) (433) !!!!! Window at 14 - Testing collisions ( 32-bit) - Expected 128.0, actual 290 (2.27x) (163) !!!!! Window at 15 - Testing collisions ( 32-bit) - Expected 128.0, actual 212 (1.66x) (85) Window at 16 - Testing collisions ( 32-bit) - Expected 128.0, actual 243 (1.90x) (116) Window at 17 - Testing collisions ( 32-bit) - Expected 128.0, actual 242 (1.89x) (115) Window at 18 - Testing collisions ( 32-bit) - Expected 128.0, actual 258 (2.02x) (131) !!!!! Window at 19 - Testing collisions ( 32-bit) - Expected 128.0, actual 211 (1.65x) (84) Window at 20 - Testing collisions ( 32-bit) - Expected 128.0, actual 211 (1.65x) (84) Window at 21 - Testing collisions ( 32-bit) - Expected 128.0, actual 261 (2.04x) (134) !!!!! Window at 22 - Testing collisions ( 32-bit) - Expected 128.0, actual 247 (1.93x) (120) Window at 23 - Testing collisions ( 32-bit) - Expected 128.0, actual 248 (1.94x) (121) Window at 24 - Testing collisions ( 32-bit) - Expected 128.0, actual 257 (2.01x) (130) !!!!! Window at 25 - Testing collisions ( 32-bit) - Expected 128.0, actual 276 (2.16x) (149) !!!!! Window at 26 - Testing collisions ( 32-bit) - Expected 128.0, actual 239 (1.87x) (112) Window at 27 - Testing collisions ( 32-bit) - Expected 128.0, actual 196 (1.53x) (69) Window at 28 - Testing collisions ( 32-bit) - Expected 128.0, actual 213 (1.66x) (86) Window at 29 - Testing collisions ( 32-bit) - Expected 128.0, actual 181 (1.41x) (54) Window at 30 - Testing collisions ( 32-bit) - Expected 128.0, actual 184 (1.44x) (57) Window at 31 - Testing collisions ( 32-bit) - Expected 128.0, actual 180 (1.41x) (53) Window at 32 - Testing collisions ( 32-bit) - Expected 128.0, actual 142 (1.11x) (15) Window at 33 - Testing collisions ( 32-bit) - Expected 128.0, actual 122 (0.95x) Window at 34 - Testing collisions ( 32-bit) - Expected 128.0, actual 115 (0.90x) Window at 35 - Testing collisions ( 32-bit) - Expected 128.0, actual 116 (0.91x) Window at 36 - Testing collisions ( 32-bit) - Expected 128.0, actual 123 (0.96x) Window at 37 - Testing collisions ( 32-bit) - Expected 128.0, actual 106 (0.83x) Window at 38 - Testing collisions ( 32-bit) - Expected 128.0, actual 128 (1.00x) (1) Window at 39 - Testing collisions ( 32-bit) - Expected 128.0, actual 141 (1.10x) (14) Window at 40 - Testing collisions ( 32-bit) - Expected 128.0, actual 147 (1.15x) (20) Window at 41 - Testing collisions ( 32-bit) - Expected 128.0, actual 131 (1.02x) (4) Window at 42 - Testing collisions ( 32-bit) - Expected 128.0, actual 123 (0.96x) Window at 43 - Testing collisions ( 32-bit) - Expected 128.0, actual 134 (1.05x) (7) Window at 44 - Testing collisions ( 32-bit) - Expected 128.0, actual 117 (0.91x) Window at 45 - Testing collisions ( 32-bit) - Expected 128.0, actual 203 (1.59x) (76) Window at 46 - Testing collisions ( 32-bit) - Expected 128.0, actual 375 (2.93x) (248) !!!!! Window at 47 - Testing collisions ( 32-bit) - Expected 128.0, actual 339 (2.65x) (212) !!!!! Window at 48 - Testing collisions ( 32-bit) - Expected 128.0, actual 334 (2.61x) (207) !!!!! Window at 49 - Testing collisions ( 32-bit) - Expected 128.0, actual 262 (2.05x) (135) !!!!! Window at 50 - Testing collisions ( 32-bit) - Expected 128.0, actual 274 (2.14x) (147) !!!!! Window at 51 - Testing collisions ( 32-bit) - Expected 128.0, actual 282 (2.20x) (155) !!!!! Window at 52 - Testing collisions ( 32-bit) - Expected 128.0, actual 244 (1.91x) (117) Window at 53 - Testing collisions ( 32-bit) - Expected 128.0, actual 197 (1.54x) (70) Window at 54 - Testing collisions ( 32-bit) - Expected 128.0, actual 218 (1.70x) (91) Window at 55 - Testing collisions ( 32-bit) - Expected 128.0, actual 253 (1.98x) (126) Window at 56 - Testing collisions ( 32-bit) - Expected 128.0, actual 234 (1.83x) (107) Window at 57 - Testing collisions ( 32-bit) - Expected 128.0, actual 261 (2.04x) (134) !!!!! Window at 58 - Testing collisions ( 32-bit) - Expected 128.0, actual 260 (2.03x) (133) !!!!! Window at 59 - Testing collisions ( 32-bit) - Expected 128.0, actual 247 (1.93x) (120) Window at 60 - Testing collisions ( 32-bit) - Expected 128.0, actual 269 (2.10x) (142) !!!!! Window at 61 - Testing collisions ( 32-bit) - Expected 128.0, actual 256 (2.00x) (129) !!!!! Window at 62 - Testing collisions ( 32-bit) - Expected 128.0, actual 240 (1.88x) (113) Window at 63 - Testing collisions ( 32-bit) - Expected 128.0, actual 231 (1.80x) (104) Window at 64 - Testing collisions ( 32-bit) - Expected 128.0, actual 228 (1.78x) (101) Window at 65 - Testing collisions ( 32-bit) - Expected 128.0, actual 252 (1.97x) (125) Window at 66 - Testing collisions ( 32-bit) - Expected 128.0, actual 223 (1.74x) (96) Window at 67 - Testing collisions ( 32-bit) - Expected 128.0, actual 200 (1.56x) (73) Window at 68 - Testing collisions ( 32-bit) - Expected 128.0, actual 188 (1.47x) (61) Window at 69 - Testing collisions ( 32-bit) - Expected 128.0, actual 162 (1.27x) (35) Window at 70 - Testing collisions ( 32-bit) - Expected 128.0, actual 171 (1.34x) (44) Window at 71 - Testing collisions ( 32-bit) - Expected 128.0, actual 195 (1.52x) (68) Window at 72 - Testing collisions ( 32-bit) - Expected 128.0, actual 131 (1.02x) (4) *********FAIL********* [[[ Keyset 'Cyclic' Tests ]]] Keyset 'Cyclic' - 8 cycles of 4 bytes - 1000000 keys Testing collisions ( 32-bit) - Expected 116.4, actual 230 (1.98x) (114) 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 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 22 - 0.088% Keyset 'Cyclic' - 8 cycles of 5 bytes - 1000000 keys Testing collisions ( 32-bit) - Expected 116.4, actual 266 (2.28x) (150) !!!!! Keyset 'Cyclic' - 8 cycles of 6 bytes - 1000000 keys Testing collisions ( 32-bit) - Expected 116.4, actual 266 (2.28x) (150) !!!!! Keyset 'Cyclic' - 8 cycles of 7 bytes - 1000000 keys Testing collisions ( 32-bit) - Expected 116.4, actual 247 (2.12x) (131) !!!!! Keyset 'Cyclic' - 8 cycles of 8 bytes - 1000000 keys Testing collisions ( 32-bit) - Expected 116.4, actual 220 (1.89x) (104) 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 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 12 - 0.132% Keyset 'Cyclic' - 8 cycles of 12 bytes - 1000000 keys Testing collisions ( 32-bit) - Expected 116.4, actual 224 (1.92x) (108) 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 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 21 - 0.106% *********FAIL********* [[[ Keyset 'TwoBytes' Tests ]]] Keyset 'TwoBytes' - up-to-4-byte keys, 652545 total keys Testing collisions ( 32-bit) - Expected 49.6, actual 67 (1.35x) (18) 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 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 15-bit window at bit 1 - 0.086% Keyset 'TwoBytes' - up-to-8-byte keys, 5471025 total keys Testing collisions ( 32-bit) - Expected 3484.6, actual 6538 (1.88x) (3054) 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 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 25 - 0.083% Keyset 'TwoBytes' - up-to-12-byte keys, 18616785 total keys Testing collisions ( 32-bit) - Expected 40347.8, actual 77740 (1.93x) (37393) 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 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 25 - 0.049% Keyset 'TwoBytes' - up-to-16-byte keys, 44251425 total keys Testing collisions ( 32-bit) - Expected 227963.2, actual 444406 (1.95x) (216443) 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 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 1 - 0.029% Keyset 'TwoBytes' - up-to-20-byte keys, 86536545 total keys Testing collisions ( 32-bit) - Expected 871784.7, actual 1701962 (1.95x) (830178) 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 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 27 - 0.028% Keyset 'TwoBytes' - up-to-24-byte keys, 149633745 total keys Testing collisions ( 32-bit) - Expected 2606569.0, actual 5044789 (1.94x) (2438220) Testing collisions (high 12-bit) - Expected 149629649.0, actual 149629649 (1.00x) Testing collisions (high 8-bit) - Expected 149633489.0, actual 149633489 (1.00x) Testing collisions (low 12-bit) - Expected 149629649.0, actual 149629649 (1.00x) Testing collisions (low 8-bit) - Expected 149633489.0, actual 149633489 (1.00x) Testing distribution - Worst bias is the 20-bit window at bit 4 - 0.026% [[[ Keyset 'Text' Tests ]]] Keyset 'Text' - keys of form "FooXXXXBar" - 14776336 keys Testing collisions ( 32-bit) - Expected 25418.1, actual 49969 (1.97x) (24551) 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 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 5 - 0.034% Keyset 'Text' - keys of form "FooBarXXXX" - 14776336 keys Testing collisions ( 32-bit) - Expected 25418.1, actual 50254 (1.98x) (24836) 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 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 23 - 0.047% Keyset 'Text' - keys of form "XXXXFooBar" - 14776336 keys Testing collisions ( 32-bit) - Expected 25418.1, actual 25126 (0.99x) (-292) 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 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 11 - 0.016% Keyset 'Words' - 4000000 random keys of len 6-16 from alnum charset Testing collisions ( 32-bit) - Expected 1862.6, actual 3725 (2.00x) (1863) 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 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 31 - 0.057% Keyset 'Words' - 4000000 random keys of len 6-16 from password charset Testing collisions ( 32-bit) - Expected 1862.6, actual 3760 (2.02x) (1898) !!!!! Keyset 'Words' - 479826 dict words Testing collisions ( 32-bit) - Expected 26.8, actual 41 (1.53x) (15) 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 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 29 - 0.103% *********FAIL********* [[[ Keyset 'Zeroes' Tests ]]] Keyset 'Zeroes' - 204800 keys Testing collisions ( 32-bit) - Expected 4.9, actual 16 (3.28x) (12) ! Testing collisions (high 21-29 bits) - Worst is 29 bits: 59/39 (1.51x) 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 21-29 bits) - Worst is 29 bits: 51/39 (1.31x) 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 15 - 0.491% [[[ Keyset 'Seed' Tests ]]] Keyset 'Seed' - 5000000 keys Testing collisions ( 32-bit) - Expected 2910.4, actual 2987 (1.03x) (77) 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 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 15 - 0.110% [[[ Keyset 'PerlinNoise' Tests ]]] Testing 16777216 coordinates (L2) : Testing collisions ( 32-bit) - Expected 32768.0, actual 33005 (1.01x) (238) 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 12-bit) - Expected 16773120.0, actual 16773120 (1.00x) Testing collisions (low 8-bit) - Expected 16776960.0, actual 16776960 (1.00x) Testing AV variant, 128 count with 4 spacing, 4-12: Testing collisions ( 32-bit) - Expected 1116.4, actual 1164 (1.04x) (48) Testing collisions (high 12-bit) - Expected 3092672.0, actual 3092672 (1.00x) Testing collisions (high 8-bit) - Expected 3096512.0, actual 3096512 (1.00x) Testing collisions (low 12-bit) - Expected 3092672.0, actual 3092672 (1.00x) Testing collisions (low 8-bit) - Expected 3096512.0, actual 3096512 (1.00x) [[[ 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.......... 1 total collisions, of which 1 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.......... 7 total collisions, of which 7 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.......... 3 total collisions, of which 3 single collisions were ignored [[[ DiffDist 'Differential Distribution' Tests ]]] Testing bit 0 Testing collisions ( 32-bit) - Expected 512.0, actual 512 (1.00x) (1) 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 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 ( 32-bit) - Expected 512.0, actual 580 (1.13x) (69) 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 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 ( 32-bit) - Expected 512.0, actual 541 (1.06x) (30) 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 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 ( 32-bit) - Expected 512.0, actual 491 (0.96x) 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 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 ( 32-bit) - Expected 512.0, actual 468 (0.91x) 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 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 ( 32-bit) - Expected 512.0, actual 526 (1.03x) (15) 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 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 ( 32-bit) - Expected 512.0, actual 493 (0.96x) 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 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 ( 32-bit) - Expected 512.0, actual 516 (1.01x) (5) 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 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 ( 32-bit) - Expected 512.0, actual 526 (1.03x) (15) 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 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 ( 32-bit) - Expected 512.0, actual 555 (1.08x) (44) 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 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 ( 32-bit) - Expected 512.0, actual 510 (1.00x) (-1) 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 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 ( 32-bit) - Expected 512.0, actual 531 (1.04x) (20) 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 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 ( 32-bit) - Expected 512.0, actual 505 (0.99x) (-6) 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 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 ( 32-bit) - Expected 512.0, actual 512 (1.00x) (1) 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 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 ( 32-bit) - Expected 512.0, actual 518 (1.01x) (7) 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 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 ( 32-bit) - Expected 512.0, actual 580 (1.13x) (69) 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 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 ( 32-bit) - Expected 512.0, actual 503 (0.98x) (-8) 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 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 ( 32-bit) - Expected 512.0, actual 484 (0.95x) 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 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 ( 32-bit) - Expected 512.0, actual 547 (1.07x) (36) 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 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 ( 32-bit) - Expected 512.0, actual 475 (0.93x) 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 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 ( 32-bit) - Expected 512.0, actual 513 (1.00x) (2) 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 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 ( 32-bit) - Expected 512.0, actual 499 (0.97x) 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 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 ( 32-bit) - Expected 512.0, actual 519 (1.01x) (8) 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 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 ( 32-bit) - Expected 512.0, actual 504 (0.98x) (-7) 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 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 ( 32-bit) - Expected 512.0, actual 503 (0.98x) (-8) 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 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 ( 32-bit) - Expected 512.0, actual 470 (0.92x) 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 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 ( 32-bit) - Expected 512.0, actual 500 (0.98x) 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 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 ( 32-bit) - Expected 512.0, actual 520 (1.02x) (9) 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 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 ( 32-bit) - Expected 512.0, actual 503 (0.98x) (-8) 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 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 ( 32-bit) - Expected 512.0, actual 482 (0.94x) 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 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 ( 32-bit) - Expected 512.0, actual 559 (1.09x) (48) 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 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 ( 32-bit) - Expected 512.0, actual 520 (1.02x) (9) 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 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 ( 32-bit) - Expected 512.0, actual 601 (1.17x) (90) 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 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 ( 32-bit) - Expected 512.0, actual 567 (1.11x) (56) 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 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 ( 32-bit) - Expected 512.0, actual 496 (0.97x) 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 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 ( 32-bit) - Expected 512.0, actual 507 (0.99x) (-4) 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 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 ( 32-bit) - Expected 512.0, actual 495 (0.97x) 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 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 ( 32-bit) - Expected 512.0, actual 503 (0.98x) (-8) 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 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 ( 32-bit) - Expected 512.0, actual 581 (1.13x) (70) 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 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 ( 32-bit) - Expected 512.0, actual 490 (0.96x) 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 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 ( 32-bit) - Expected 512.0, actual 498 (0.97x) 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 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 ( 32-bit) - Expected 512.0, actual 491 (0.96x) 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 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 ( 32-bit) - Expected 512.0, actual 515 (1.01x) (4) 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 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 ( 32-bit) - Expected 512.0, actual 530 (1.04x) (19) 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 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 ( 32-bit) - Expected 512.0, actual 486 (0.95x) 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 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 ( 32-bit) - Expected 512.0, actual 508 (0.99x) (-3) 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 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 ( 32-bit) - Expected 512.0, actual 546 (1.07x) (35) 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 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 ( 32-bit) - Expected 512.0, actual 526 (1.03x) (15) 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 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 ( 32-bit) - Expected 512.0, actual 467 (0.91x) 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 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 ( 32-bit) - Expected 512.0, actual 502 (0.98x) (-9) 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 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 ( 32-bit) - Expected 512.0, actual 521 (1.02x) (10) 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 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 ( 32-bit) - Expected 512.0, actual 531 (1.04x) (20) 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 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 ( 32-bit) - Expected 512.0, actual 517 (1.01x) (6) 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 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 ( 32-bit) - Expected 512.0, actual 530 (1.04x) (19) 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 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 ( 32-bit) - Expected 512.0, actual 475 (0.93x) 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 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 ( 32-bit) - Expected 512.0, actual 525 (1.03x) (14) 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 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 ( 32-bit) - Expected 512.0, actual 554 (1.08x) (43) 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 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 ( 32-bit) - Expected 512.0, actual 548 (1.07x) (37) 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 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 ( 32-bit) - Expected 512.0, actual 506 (0.99x) (-5) 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 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 ( 32-bit) - Expected 512.0, actual 480 (0.94x) 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 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 ( 32-bit) - Expected 512.0, actual 479 (0.94x) 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 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 ( 32-bit) - Expected 512.0, actual 517 (1.01x) (6) 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 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 ( 32-bit) - Expected 512.0, actual 459 (0.90x) 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 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 ( 32-bit) - Expected 512.0, actual 494 (0.96x) 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 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 : 1391290.000000 - 686.666667 4 threads starting... done Popcount 1 stats : 1391386.869203 - 687.412001 Popcount 0 stats : 1391219.003711 - 687.194780 MomentChi2 for bits 1 : 6.82904 MomentChi2 for bits 0 : 3.66884 Derivative stats (transition from 2 consecutive values) : Popcount 1 stats : 1391385.691765 - 687.405698 Popcount 0 stats : 1391224.226821 - 687.239918 MomentChi2 for deriv b1 : 6.66407 MomentChi2 for deriv b0 : 3.14877 Good [[[ Prng Tests ]]] The PRNG test is designed for hashes >= 64-bit Input vcode 0x00000001, Output vcode 0x00000001, Result vcode 0x00000001 Verification value is 0x00000001 - Testing took 705.313102 seconds ------------------------------------------------------------------------------- [[[ BadSeeds Tests ]]] Testing 0 internal secrets: 0x0 PASS Testing the first 0xffffffff seeds ... 4 threads starting... at 40000000 at 80000000 at c0000000 at 0