------------------------------------------------------------------------------- --- Testing fasthash32 "fast-hash 32bit" GOOD [[[ Sanity Tests ]]] Verification value 0xE9481AFC ....... PASS Running sanity check 1 .......... PASS Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys Alignment 7 - 2.142 bytes/cycle - 6129.39 MiB/sec @ 3 ghz Alignment 6 - 2.142 bytes/cycle - 6128.06 MiB/sec @ 3 ghz Alignment 5 - 2.142 bytes/cycle - 6127.65 MiB/sec @ 3 ghz Alignment 4 - 2.142 bytes/cycle - 6127.95 MiB/sec @ 3 ghz Alignment 3 - 2.142 bytes/cycle - 6128.70 MiB/sec @ 3 ghz Alignment 2 - 2.142 bytes/cycle - 6128.12 MiB/sec @ 3 ghz Alignment 1 - 2.141 bytes/cycle - 6126.02 MiB/sec @ 3 ghz Alignment 0 - 2.143 bytes/cycle - 6130.32 MiB/sec @ 3 ghz Average - 2.142 bytes/cycle - 6128.28 MiB/sec @ 3 ghz Small key speed test - 1-byte keys - 34.00 cycles/hash Small key speed test - 2-byte keys - 35.00 cycles/hash Small key speed test - 3-byte keys - 36.63 cycles/hash Small key speed test - 4-byte keys - 37.00 cycles/hash Small key speed test - 5-byte keys - 37.99 cycles/hash Small key speed test - 6-byte keys - 39.00 cycles/hash Small key speed test - 7-byte keys - 39.12 cycles/hash Small key speed test - 8-byte keys - 32.00 cycles/hash Small key speed test - 9-byte keys - 36.91 cycles/hash Small key speed test - 10-byte keys - 37.64 cycles/hash Small key speed test - 11-byte keys - 38.00 cycles/hash Small key speed test - 12-byte keys - 38.97 cycles/hash Small key speed test - 13-byte keys - 39.00 cycles/hash Small key speed test - 14-byte keys - 40.59 cycles/hash Small key speed test - 15-byte keys - 41.00 cycles/hash Small key speed test - 16-byte keys - 36.00 cycles/hash Small key speed test - 17-byte keys - 40.48 cycles/hash Small key speed test - 18-byte keys - 40.74 cycles/hash Small key speed test - 19-byte keys - 40.78 cycles/hash Small key speed test - 20-byte keys - 41.00 cycles/hash Small key speed test - 21-byte keys - 42.51 cycles/hash Small key speed test - 22-byte keys - 43.15 cycles/hash Small key speed test - 23-byte keys - 43.86 cycles/hash Small key speed test - 24-byte keys - 39.65 cycles/hash Small key speed test - 25-byte keys - 44.00 cycles/hash Small key speed test - 26-byte keys - 44.00 cycles/hash Small key speed test - 27-byte keys - 44.57 cycles/hash Small key speed test - 28-byte keys - 45.00 cycles/hash Small key speed test - 29-byte keys - 46.23 cycles/hash Small key speed test - 30-byte keys - 46.85 cycles/hash Small key speed test - 31-byte keys - 47.72 cycles/hash Average 40.303 cycles/hash [[[ 'Hashmap' Speed Tests (when inlined) ]]] std::unordered_map Init std HashMapTest: 516.432 cycles/op (102401 inserts, 1% deletions) Running std HashMapTest: 333.592 cycles/op (2.5 stdv) greg7mdp/parallel-hashmap Init fast HashMapTest: 410.238 cycles/op (102401 inserts, 1% deletions) Running fast HashMapTest: 214.532 cycles/op (2.9 stdv) ....... PASS [[[ Avalanche Tests ]]] Testing 24-bit keys -> 32-bit hashes, 300000 reps.......... worst bias is 0.562667% Testing 32-bit keys -> 32-bit hashes, 300000 reps.......... worst bias is 0.632000% Testing 40-bit keys -> 32-bit hashes, 300000 reps.......... worst bias is 0.616000% Testing 48-bit keys -> 32-bit hashes, 300000 reps.......... worst bias is 0.690000% Testing 56-bit keys -> 32-bit hashes, 300000 reps.......... worst bias is 0.723333% Testing 64-bit keys -> 32-bit hashes, 300000 reps.......... worst bias is 0.736667% Testing 72-bit keys -> 32-bit hashes, 300000 reps.......... worst bias is 0.604000% Testing 80-bit keys -> 32-bit hashes, 300000 reps.......... worst bias is 0.626667% Testing 96-bit keys -> 32-bit hashes, 300000 reps.......... worst bias is 0.672667% Testing 112-bit keys -> 32-bit hashes, 300000 reps.......... worst bias is 0.651333% Testing 128-bit keys -> 32-bit hashes, 300000 reps.......... worst bias is 0.828667% Testing 160-bit keys -> 32-bit hashes, 300000 reps.......... worst bias is 0.678667% Testing 512-bit keys -> 32-bit hashes, 300000 reps.......... worst bias is 0.761333% Testing 1024-bit keys -> 32-bit hashes, 300000 reps.......... worst bias is 0.856667% [[[ Keyset 'Sparse' Tests ]]] Keyset 'Sparse' - 16-bit keys with up to 9 bits set - 50643 keys Testing collisions ( 32-bit) - Expected 0.3, actual 1 (3.35x) (1) ! Testing collisions (high 19-25 bits) - Worst is 24 bits: 83/76 (1.09x) Testing collisions (low 19-25 bits) - Worst is 23 bits: 161/152 (1.06x) Testing distribution - Worst bias is the 13-bit window at bit 21 - 0.583% 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 distribution - Worst bias is the 17-bit window at bit 7 - 0.061% Keyset 'Sparse' - 32-bit keys with up to 7 bits set - 4514873 keys Testing collisions ( 32-bit) - Expected 2372.2, actual 2294 (0.97x) Testing distribution - Worst bias is the 19-bit window at bit 25 - 0.039% Keyset 'Sparse' - 40-bit keys with up to 6 bits set - 4598479 keys Testing collisions ( 32-bit) - Expected 2460.8, actual 2460 (1.00x) Testing distribution - Worst bias is the 19-bit window at bit 21 - 0.063% Keyset 'Sparse' - 48-bit keys with up to 6 bits set - 14196869 keys Testing collisions ( 32-bit) - Expected 23437.8, actual 23486 (1.00x) (49) Testing distribution - Worst bias is the 20-bit window at bit 6 - 0.023% Keyset 'Sparse' - 56-bit keys with up to 5 bits set - 4216423 keys Testing collisions ( 32-bit) - Expected 2069.0, actual 2125 (1.03x) (57) Testing distribution - Worst bias is the 19-bit window at bit 7 - 0.043% Keyset 'Sparse' - 64-bit keys with up to 5 bits set - 8303633 keys Testing collisions ( 32-bit) - Expected 8021.7, actual 7923 (0.99x) (-98) Testing distribution - Worst bias is the 20-bit window at bit 4 - 0.017% Keyset 'Sparse' - 72-bit keys with up to 5 bits set - 15082603 keys Testing collisions ( 32-bit) - Expected 26451.8, actual 26484 (1.00x) (33) Testing distribution - Worst bias is the 20-bit window at bit 4 - 0.022% Keyset 'Sparse' - 96-bit keys with up to 4 bits set - 3469497 keys Testing collisions ( 32-bit) - Expected 1401.0, actual 1363 (0.97x) Testing distribution - Worst bias is the 19-bit window at bit 27 - 0.042% Keyset 'Sparse' - 160-bit keys with up to 4 bits set - 26977161 keys Testing collisions ( 32-bit) - Expected 84546.1, actual 84053 (0.99x) (-493) Testing distribution - Worst bias is the 20-bit window at bit 6 - 0.013% Keyset 'Sparse' - 256-bit keys with up to 3 bits set - 2796417 keys Testing collisions ( 32-bit) - Expected 910.2, actual 914 (1.00x) (4) Testing distribution - Worst bias is the 19-bit window at bit 3 - 0.064% Keyset 'Sparse' - 512-bit keys with up to 3 bits set - 22370049 keys Testing collisions ( 32-bit) - Expected 58155.4, actual 58447 (1.01x) (292) Testing distribution - Worst bias is the 20-bit window at bit 20 - 0.011% Keyset 'Sparse' - 1024-bit keys with up to 2 bits set - 524801 keys Testing collisions ( 32-bit) - Expected 32.1, actual 27 (0.84x) Testing distribution - Worst bias is the 16-bit window at bit 10 - 0.174% Keyset 'Sparse' - 2048-bit keys with up to 2 bits set - 2098177 keys Testing collisions ( 32-bit) - Expected 512.4, actual 503 (0.98x) (-9) Testing distribution - Worst bias is the 18-bit window at bit 20 - 0.096% [[[ Keyset 'Permutation' Tests ]]] Combination Lowbits Tests: Keyset 'Combination' - up to 7 blocks from a set of 8 - 2396744 keys Testing collisions ( 32-bit) - Expected 668.6, actual 729 (1.09x) (61) Testing distribution - Worst bias is the 18-bit window at bit 22 - 0.065% Combination Highbits Tests Keyset 'Combination' - up to 7 blocks from a set of 8 - 2396744 keys Testing collisions ( 32-bit) - Expected 668.6, actual 691 (1.03x) (23) Testing distribution - Worst bias is the 18-bit window at bit 19 - 0.062% Combination Hi-Lo Tests: Keyset 'Combination' - up to 6 blocks from a set of 15 - 12204240 keys Testing collisions ( 32-bit) - Expected 17322.9, actual 17240 (1.00x) (-82) Testing distribution - Worst bias is the 20-bit window at bit 11 - 0.017% Combination 0x8000000 Tests: Keyset 'Combination' - up to 22 blocks from a set of 2 - 8388606 keys Testing collisions ( 32-bit) - Expected 8186.7, actual 8441 (1.03x) (255) Testing distribution - Worst bias is the 20-bit window at bit 11 - 0.035% Combination 0x0000001 Tests: Keyset 'Combination' - up to 22 blocks from a set of 2 - 8388606 keys Testing collisions ( 32-bit) - Expected 8186.7, actual 8176 (1.00x) (-10) Testing distribution - Worst bias is the 20-bit window at bit 21 - 0.040% Combination 0x800000000000000 Tests: Keyset 'Combination' - up to 22 blocks from a set of 2 - 8388606 keys Testing collisions ( 32-bit) - Expected 8186.7, actual 8233 (1.01x) (47) Testing distribution - Worst bias is the 20-bit window at bit 16 - 0.032% Combination 0x000000000000001 Tests: Keyset 'Combination' - up to 22 blocks from a set of 2 - 8388606 keys Testing collisions ( 32-bit) - Expected 8186.7, actual 8294 (1.01x) (108) Testing distribution - Worst bias is the 20-bit window at bit 19 - 0.045% Combination 16-bytes [0-1] Tests: Keyset 'Combination' - up to 22 blocks from a set of 2 - 8388606 keys Testing collisions ( 32-bit) - Expected 8186.7, actual 8345 (1.02x) (159) Testing distribution - Worst bias is the 20-bit window at bit 18 - 0.031% Combination 16-bytes [0-last] Tests: Keyset 'Combination' - up to 22 blocks from a set of 2 - 8388606 keys Testing collisions ( 32-bit) - Expected 8186.7, actual 8252 (1.01x) (66) Testing distribution - Worst bias is the 20-bit window at bit 31 - 0.016% Combination 32-bytes [0-1] Tests: Keyset 'Combination' - up to 22 blocks from a set of 2 - 8388606 keys Testing collisions ( 32-bit) - Expected 8186.7, actual 8187 (1.00x) (1) Testing distribution - Worst bias is the 20-bit window at bit 31 - 0.027% Combination 32-bytes [0-last] Tests: Keyset 'Combination' - up to 22 blocks from a set of 2 - 8388606 keys Testing collisions ( 32-bit) - Expected 8186.7, actual 8527 (1.04x) (341) Testing distribution - Worst bias is the 20-bit window at bit 3 - 0.039% Combination 64-bytes [0-1] Tests: Keyset 'Combination' - up to 22 blocks from a set of 2 - 8388606 keys Testing collisions ( 32-bit) - Expected 8186.7, actual 8321 (1.02x) (135) Testing distribution - Worst bias is the 20-bit window at bit 2 - 0.022% Combination 64-bytes [0-last] Tests: Keyset 'Combination' - up to 22 blocks from a set of 2 - 8388606 keys Testing collisions ( 32-bit) - Expected 8186.7, actual 8193 (1.00x) (7) Testing distribution - Worst bias is the 20-bit window at bit 17 - 0.033% Combination 128-bytes [0-1] Tests: Keyset 'Combination' - up to 22 blocks from a set of 2 - 8388606 keys Testing collisions ( 32-bit) - Expected 8186.7, actual 8155 (1.00x) (-31) Testing distribution - Worst bias is the 20-bit window at bit 20 - 0.042% Combination 128-bytes [0-last] Tests: Keyset 'Combination' - up to 22 blocks from a set of 2 - 8388606 keys Testing collisions ( 32-bit) - Expected 8186.7, actual 8302 (1.01x) (116) Testing distribution - Worst bias is the 20-bit window at bit 8 - 0.020% [[[ 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 111 (0.87x) Window at 1 - Testing collisions ( 32-bit) - Expected 128.0, actual 137 (1.07x) (10) Window at 2 - Testing collisions ( 32-bit) - Expected 128.0, actual 117 (0.91x) Window at 3 - Testing collisions ( 32-bit) - Expected 128.0, actual 130 (1.02x) (3) Window at 4 - Testing collisions ( 32-bit) - Expected 128.0, actual 139 (1.09x) (12) Window at 5 - Testing collisions ( 32-bit) - Expected 128.0, actual 141 (1.10x) (14) 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 133 (1.04x) (6) Window at 8 - Testing collisions ( 32-bit) - Expected 128.0, actual 113 (0.88x) Window at 9 - Testing collisions ( 32-bit) - Expected 128.0, actual 134 (1.05x) (7) Window at 10 - Testing collisions ( 32-bit) - Expected 128.0, actual 121 (0.95x) Window at 11 - Testing collisions ( 32-bit) - Expected 128.0, actual 125 (0.98x) Window at 12 - Testing collisions ( 32-bit) - Expected 128.0, actual 130 (1.02x) (3) Window at 13 - Testing collisions ( 32-bit) - Expected 128.0, actual 137 (1.07x) (10) Window at 14 - Testing collisions ( 32-bit) - Expected 128.0, actual 122 (0.95x) Window at 15 - Testing collisions ( 32-bit) - Expected 128.0, actual 118 (0.92x) Window at 16 - Testing collisions ( 32-bit) - Expected 128.0, actual 128 (1.00x) (1) Window at 17 - Testing collisions ( 32-bit) - Expected 128.0, actual 133 (1.04x) (6) Window at 18 - Testing collisions ( 32-bit) - Expected 128.0, actual 145 (1.13x) (18) Window at 19 - Testing collisions ( 32-bit) - Expected 128.0, actual 145 (1.13x) (18) Window at 20 - Testing collisions ( 32-bit) - Expected 128.0, actual 138 (1.08x) (11) Window at 21 - Testing collisions ( 32-bit) - Expected 128.0, actual 150 (1.17x) (23) Window at 22 - Testing collisions ( 32-bit) - Expected 128.0, actual 122 (0.95x) Window at 23 - Testing collisions ( 32-bit) - Expected 128.0, actual 141 (1.10x) (14) Window at 24 - Testing collisions ( 32-bit) - Expected 128.0, actual 137 (1.07x) (10) Window at 25 - Testing collisions ( 32-bit) - Expected 128.0, actual 115 (0.90x) Window at 26 - Testing collisions ( 32-bit) - Expected 128.0, actual 143 (1.12x) (16) Window at 27 - Testing collisions ( 32-bit) - Expected 128.0, actual 139 (1.09x) (12) Window at 28 - Testing collisions ( 32-bit) - Expected 128.0, actual 143 (1.12x) (16) Window at 29 - Testing collisions ( 32-bit) - Expected 128.0, actual 144 (1.13x) (17) Window at 30 - Testing collisions ( 32-bit) - Expected 128.0, actual 141 (1.10x) (14) Window at 31 - Testing collisions ( 32-bit) - Expected 128.0, actual 133 (1.04x) (6) Window at 32 - Testing collisions ( 32-bit) - Expected 128.0, actual 133 (1.04x) (6) Window at 33 - Testing collisions ( 32-bit) - Expected 128.0, actual 123 (0.96x) Window at 34 - Testing collisions ( 32-bit) - Expected 128.0, actual 112 (0.88x) Window at 35 - Testing collisions ( 32-bit) - Expected 128.0, actual 130 (1.02x) (3) Window at 36 - Testing collisions ( 32-bit) - Expected 128.0, actual 125 (0.98x) Window at 37 - Testing collisions ( 32-bit) - Expected 128.0, actual 107 (0.84x) Window at 38 - Testing collisions ( 32-bit) - Expected 128.0, actual 117 (0.91x) Window at 39 - Testing collisions ( 32-bit) - Expected 128.0, actual 116 (0.91x) Window at 40 - Testing collisions ( 32-bit) - Expected 128.0, actual 131 (1.02x) (4) Window at 41 - Testing collisions ( 32-bit) - Expected 128.0, actual 138 (1.08x) (11) Window at 42 - Testing collisions ( 32-bit) - Expected 128.0, actual 135 (1.05x) (8) Window at 43 - Testing collisions ( 32-bit) - Expected 128.0, actual 139 (1.09x) (12) Window at 44 - Testing collisions ( 32-bit) - Expected 128.0, actual 110 (0.86x) Window at 45 - Testing collisions ( 32-bit) - Expected 128.0, actual 120 (0.94x) Window at 46 - Testing collisions ( 32-bit) - Expected 128.0, actual 126 (0.98x) (-1) Window at 47 - Testing collisions ( 32-bit) - Expected 128.0, actual 120 (0.94x) Window at 48 - Testing collisions ( 32-bit) - Expected 128.0, actual 114 (0.89x) Window at 49 - Testing collisions ( 32-bit) - Expected 128.0, actual 118 (0.92x) Window at 50 - Testing collisions ( 32-bit) - Expected 128.0, actual 115 (0.90x) Window at 51 - Testing collisions ( 32-bit) - Expected 128.0, actual 132 (1.03x) (5) Window at 52 - Testing collisions ( 32-bit) - Expected 128.0, actual 119 (0.93x) Window at 53 - Testing collisions ( 32-bit) - Expected 128.0, actual 135 (1.05x) (8) Window at 54 - Testing collisions ( 32-bit) - Expected 128.0, actual 123 (0.96x) Window at 55 - Testing collisions ( 32-bit) - Expected 128.0, actual 118 (0.92x) Window at 56 - Testing collisions ( 32-bit) - Expected 128.0, actual 126 (0.98x) (-1) Window at 57 - Testing collisions ( 32-bit) - Expected 128.0, actual 140 (1.09x) (13) Window at 58 - Testing collisions ( 32-bit) - Expected 128.0, actual 134 (1.05x) (7) Window at 59 - Testing collisions ( 32-bit) - Expected 128.0, actual 106 (0.83x) Window at 60 - Testing collisions ( 32-bit) - Expected 128.0, actual 125 (0.98x) Window at 61 - Testing collisions ( 32-bit) - Expected 128.0, actual 114 (0.89x) Window at 62 - Testing collisions ( 32-bit) - Expected 128.0, actual 113 (0.88x) Window at 63 - Testing collisions ( 32-bit) - Expected 128.0, actual 116 (0.91x) Window at 64 - Testing collisions ( 32-bit) - Expected 128.0, actual 115 (0.90x) Window at 65 - Testing collisions ( 32-bit) - Expected 128.0, actual 110 (0.86x) Window at 66 - Testing collisions ( 32-bit) - Expected 128.0, actual 144 (1.13x) (17) Window at 67 - Testing collisions ( 32-bit) - Expected 128.0, actual 133 (1.04x) (6) Window at 68 - Testing collisions ( 32-bit) - Expected 128.0, actual 118 (0.92x) Window at 69 - Testing collisions ( 32-bit) - Expected 128.0, actual 141 (1.10x) (14) Window at 70 - Testing collisions ( 32-bit) - Expected 128.0, actual 128 (1.00x) (1) Window at 71 - Testing collisions ( 32-bit) - Expected 128.0, actual 118 (0.92x) Window at 72 - Testing collisions ( 32-bit) - Expected 128.0, actual 111 (0.87x) [[[ Keyset 'Cyclic' Tests ]]] Keyset 'Cyclic' - 8 cycles of 4 bytes - 1000000 keys Testing collisions ( 32-bit) - Expected 116.4, actual 126 (1.08x) (10) Testing distribution - Worst bias is the 17-bit window at bit 23 - 0.094% Keyset 'Cyclic' - 8 cycles of 5 bytes - 1000000 keys Testing collisions ( 32-bit) - Expected 116.4, actual 118 (1.01x) (2) Testing distribution - Worst bias is the 17-bit window at bit 15 - 0.070% Keyset 'Cyclic' - 8 cycles of 6 bytes - 1000000 keys Testing collisions ( 32-bit) - Expected 116.4, actual 136 (1.17x) (20) Testing distribution - Worst bias is the 17-bit window at bit 31 - 0.092% Keyset 'Cyclic' - 8 cycles of 7 bytes - 1000000 keys Testing collisions ( 32-bit) - Expected 116.4, actual 125 (1.07x) (9) Testing distribution - Worst bias is the 17-bit window at bit 25 - 0.096% Keyset 'Cyclic' - 8 cycles of 8 bytes - 1000000 keys Testing collisions ( 32-bit) - Expected 116.4, actual 116 (1.00x) Testing distribution - Worst bias is the 17-bit window at bit 1 - 0.120% Keyset 'Cyclic' - 8 cycles of 12 bytes - 1000000 keys Testing collisions ( 32-bit) - Expected 116.4, actual 128 (1.10x) (12) Testing distribution - Worst bias is the 17-bit window at bit 11 - 0.133% [[[ Keyset 'TwoBytes' Tests ]]] Keyset 'TwoBytes' - up-to-4-byte keys, 652545 total keys Testing collisions ( 32-bit) - Expected 49.6, actual 48 (0.97x) Testing distribution - Worst bias is the 16-bit window at bit 16 - 0.101% Keyset 'TwoBytes' - up-to-8-byte keys, 5471025 total keys Testing collisions ( 32-bit) - Expected 3483.1, actual 3520 (1.01x) (37) Testing distribution - Worst bias is the 20-bit window at bit 13 - 0.029% Keyset 'TwoBytes' - up-to-12-byte keys, 18616785 total keys Testing collisions ( 32-bit) - Expected 40289.5, actual 40265 (1.00x) (-24) Testing distribution - Worst bias is the 20-bit window at bit 13 - 0.023% Keyset 'TwoBytes' - up-to-16-byte keys, 44251425 total keys Testing collisions ( 32-bit) - Expected 227182.3, actual 227756 (1.00x) (574) Testing distribution - Worst bias is the 20-bit window at bit 13 - 0.008% Keyset 'TwoBytes' - up-to-20-byte keys, 86536545 total keys Testing collisions ( 32-bit) - Expected 865959.1, actual 866122 (1.00x) (163) Testing distribution - Worst bias is the 20-bit window at bit 12 - 0.004% Keyset 'TwoBytes' - up-to-24-byte keys, 149633745 total keys Testing collisions ( 32-bit) - Expected 2576560.5, actual 2577559 (1.00x) (999) Testing distribution - Worst bias is the 20-bit window at bit 20 - 0.002% [[[ 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 : 1391280.063262 - 687.281570 Popcount 0 stats : 1391268.718614 - 687.228849 MomentChi2 for bits 1 : 0.071865 MomentChi2 for bits 0 : 0.329645 Derivative stats (transition from 2 consecutive values) : Popcount 1 stats : 1391319.514400 - 687.340450 Popcount 0 stats : 1391287.567254 - 687.287427 MomentChi2 for deriv b1 : 0.633985 MomentChi2 for deriv b0 : 0.00430746 Great [[[ Keyset 'Text' Tests ]]] Keyset 'Text' - keys of form "FooXXXXBar" - 14776336 keys Testing collisions ( 32-bit) - Expected 25389.0, actual 25451 (1.00x) (62) Testing distribution - Worst bias is the 20-bit window at bit 20 - 0.029% Keyset 'Text' - keys of form "FooBarXXXX" - 14776336 keys Testing collisions ( 32-bit) - Expected 25389.0, actual 25496 (1.00x) (107) Testing distribution - Worst bias is the 20-bit window at bit 13 - 0.024% Keyset 'Text' - keys of form "XXXXFooBar" - 14776336 keys Testing collisions ( 32-bit) - Expected 25389.0, actual 25244 (0.99x) (-145) Testing distribution - Worst bias is the 20-bit window at bit 26 - 0.020% Keyset 'Words' - 4000000 random keys of len 6-16 from alnum charset Testing collisions ( 32-bit) - Expected 1862.1, actual 1854 (1.00x) (-8) Testing distribution - Worst bias is the 18-bit window at bit 4 - 0.035% Keyset 'Words' - 4000000 random keys of len 6-16 from password charset Testing collisions ( 32-bit) - Expected 1862.1, actual 1810 (0.97x) Testing distribution - Worst bias is the 19-bit window at bit 12 - 0.037% Keyset 'Words' - 104334 dict words Testing collisions ( 32-bit) - Expected 1.3, actual 2 (1.58x) (1) Testing collisions (high 20-28 bits) - Worst is 23 bits: 666/646 (1.03x) Testing collisions (low 20-28 bits) - Worst is 21 bits: 2561/2552 (1.00x) Testing distribution - Worst bias is the 14-bit window at bit 27 - 0.374% [[[ Keyset 'Zeroes' Tests ]]] Keyset 'Zeroes' - 204800 keys Testing collisions ( 32-bit) - Expected 4.9, actual 1 (0.20x) Testing collisions (high 21-29 bits) - Worst is 21 bits: 9638/9682 (1.00x) Testing collisions (low 21-29 bits) - Worst is 29 bits: 50/39 (1.28x) Testing distribution - Worst bias is the 15-bit window at bit 6 - 0.216% [[[ Keyset 'Seed' Tests ]]] Keyset 'Seed' - 5000000 keys Testing collisions ( 32-bit) - Expected 2909.3, actual 2952 (1.01x) (43) Testing distribution - Worst bias is the 19-bit window at bit 17 - 0.036% [[[ Keyset 'PerlinNoise' Tests ]]] Testing 16777216 coordinates (L2) : Testing collisions ( 32-bit) - Expected 32725.4, actual 32547 (0.99x) (-178) Testing AV variant, 128 count with 4 spacing, 4-12: Testing collisions ( 32-bit) - Expected 1116.2, actual 1139 (1.02x) (23) [[[ 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.......... 2 total collisions, of which 2 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.......... 0 total collisions, of which 0 single collisions were ignored [[[ DiffDist 'Differential Distribution' Tests ]]] Testing bit 0 Testing collisions ( 32-bit) - Expected 511.9, actual 534 (1.04x) (23) Testing distribution - Worst bias is the 18-bit window at bit 26 - 0.093% Testing bit 1 Testing collisions ( 32-bit) - Expected 511.9, actual 443 (0.87x) Testing distribution - Worst bias is the 18-bit window at bit 31 - 0.058% Testing bit 2 Testing collisions ( 32-bit) - Expected 511.9, actual 506 (0.99x) (-5) Testing distribution - Worst bias is the 18-bit window at bit 11 - 0.074% Testing bit 3 Testing collisions ( 32-bit) - Expected 511.9, actual 511 (1.00x) Testing distribution - Worst bias is the 18-bit window at bit 16 - 0.069% Testing bit 4 Testing collisions ( 32-bit) - Expected 511.9, actual 497 (0.97x) Testing distribution - Worst bias is the 18-bit window at bit 10 - 0.059% Testing bit 5 Testing collisions ( 32-bit) - Expected 511.9, actual 540 (1.05x) (29) Testing distribution - Worst bias is the 18-bit window at bit 25 - 0.086% Testing bit 6 Testing collisions ( 32-bit) - Expected 511.9, actual 505 (0.99x) (-6) Testing distribution - Worst bias is the 18-bit window at bit 9 - 0.073% Testing bit 7 Testing collisions ( 32-bit) - Expected 511.9, actual 535 (1.05x) (24) Testing distribution - Worst bias is the 17-bit window at bit 26 - 0.046% Testing bit 8 Testing collisions ( 32-bit) - Expected 511.9, actual 511 (1.00x) Testing distribution - Worst bias is the 18-bit window at bit 21 - 0.073% Testing bit 9 Testing collisions ( 32-bit) - Expected 511.9, actual 515 (1.01x) (4) Testing distribution - Worst bias is the 18-bit window at bit 28 - 0.046% Testing bit 10 Testing collisions ( 32-bit) - Expected 511.9, actual 498 (0.97x) Testing distribution - Worst bias is the 18-bit window at bit 29 - 0.111% Testing bit 11 Testing collisions ( 32-bit) - Expected 511.9, actual 509 (0.99x) (-2) Testing distribution - Worst bias is the 18-bit window at bit 23 - 0.056% Testing bit 12 Testing collisions ( 32-bit) - Expected 511.9, actual 513 (1.00x) (2) Testing distribution - Worst bias is the 18-bit window at bit 4 - 0.066% Testing bit 13 Testing collisions ( 32-bit) - Expected 511.9, actual 476 (0.93x) Testing distribution - Worst bias is the 18-bit window at bit 31 - 0.089% Testing bit 14 Testing collisions ( 32-bit) - Expected 511.9, actual 520 (1.02x) (9) Testing distribution - Worst bias is the 18-bit window at bit 27 - 0.059% Testing bit 15 Testing collisions ( 32-bit) - Expected 511.9, actual 565 (1.10x) (54) Testing distribution - Worst bias is the 18-bit window at bit 21 - 0.049% Testing bit 16 Testing collisions ( 32-bit) - Expected 511.9, actual 517 (1.01x) (6) Testing distribution - Worst bias is the 18-bit window at bit 24 - 0.047% Testing bit 17 Testing collisions ( 32-bit) - Expected 511.9, actual 499 (0.97x) Testing distribution - Worst bias is the 18-bit window at bit 28 - 0.100% Testing bit 18 Testing collisions ( 32-bit) - Expected 511.9, actual 528 (1.03x) (17) Testing distribution - Worst bias is the 18-bit window at bit 26 - 0.050% Testing bit 19 Testing collisions ( 32-bit) - Expected 511.9, actual 497 (0.97x) Testing distribution - Worst bias is the 18-bit window at bit 10 - 0.066% Testing bit 20 Testing collisions ( 32-bit) - Expected 511.9, actual 535 (1.05x) (24) Testing distribution - Worst bias is the 18-bit window at bit 2 - 0.080% Testing bit 21 Testing collisions ( 32-bit) - Expected 511.9, actual 505 (0.99x) (-6) Testing distribution - Worst bias is the 18-bit window at bit 14 - 0.061% Testing bit 22 Testing collisions ( 32-bit) - Expected 511.9, actual 509 (0.99x) (-2) Testing distribution - Worst bias is the 18-bit window at bit 15 - 0.085% Testing bit 23 Testing collisions ( 32-bit) - Expected 511.9, actual 489 (0.96x) Testing distribution - Worst bias is the 18-bit window at bit 24 - 0.056% Testing bit 24 Testing collisions ( 32-bit) - Expected 511.9, actual 518 (1.01x) (7) Testing distribution - Worst bias is the 18-bit window at bit 12 - 0.059% Testing bit 25 Testing collisions ( 32-bit) - Expected 511.9, actual 508 (0.99x) (-3) Testing distribution - Worst bias is the 18-bit window at bit 15 - 0.070% Testing bit 26 Testing collisions ( 32-bit) - Expected 511.9, actual 470 (0.92x) Testing distribution - Worst bias is the 18-bit window at bit 29 - 0.062% Testing bit 27 Testing collisions ( 32-bit) - Expected 511.9, actual 482 (0.94x) Testing distribution - Worst bias is the 18-bit window at bit 12 - 0.085% Testing bit 28 Testing collisions ( 32-bit) - Expected 511.9, actual 533 (1.04x) (22) Testing distribution - Worst bias is the 18-bit window at bit 16 - 0.095% Testing bit 29 Testing collisions ( 32-bit) - Expected 511.9, actual 536 (1.05x) (25) Testing distribution - Worst bias is the 18-bit window at bit 28 - 0.049% Testing bit 30 Testing collisions ( 32-bit) - Expected 511.9, actual 506 (0.99x) (-5) Testing distribution - Worst bias is the 18-bit window at bit 6 - 0.048% Testing bit 31 Testing collisions ( 32-bit) - Expected 511.9, actual 508 (0.99x) (-3) Testing distribution - Worst bias is the 18-bit window at bit 24 - 0.060% Testing bit 32 Testing collisions ( 32-bit) - Expected 511.9, actual 501 (0.98x) Testing distribution - Worst bias is the 18-bit window at bit 13 - 0.064% Testing bit 33 Testing collisions ( 32-bit) - Expected 511.9, actual 549 (1.07x) (38) Testing distribution - Worst bias is the 18-bit window at bit 23 - 0.047% Testing bit 34 Testing collisions ( 32-bit) - Expected 511.9, actual 513 (1.00x) (2) Testing distribution - Worst bias is the 18-bit window at bit 25 - 0.035% Testing bit 35 Testing collisions ( 32-bit) - Expected 511.9, actual 488 (0.95x) Testing distribution - Worst bias is the 17-bit window at bit 5 - 0.050% Testing bit 36 Testing collisions ( 32-bit) - Expected 511.9, actual 544 (1.06x) (33) Testing distribution - Worst bias is the 18-bit window at bit 7 - 0.051% Testing bit 37 Testing collisions ( 32-bit) - Expected 511.9, actual 477 (0.93x) Testing distribution - Worst bias is the 18-bit window at bit 18 - 0.068% Testing bit 38 Testing collisions ( 32-bit) - Expected 511.9, actual 531 (1.04x) (20) Testing distribution - Worst bias is the 18-bit window at bit 4 - 0.059% Testing bit 39 Testing collisions ( 32-bit) - Expected 511.9, actual 485 (0.95x) Testing distribution - Worst bias is the 18-bit window at bit 19 - 0.043% Testing bit 40 Testing collisions ( 32-bit) - Expected 511.9, actual 500 (0.98x) Testing distribution - Worst bias is the 18-bit window at bit 6 - 0.051% Testing bit 41 Testing collisions ( 32-bit) - Expected 511.9, actual 510 (1.00x) (-1) Testing distribution - Worst bias is the 18-bit window at bit 20 - 0.062% Testing bit 42 Testing collisions ( 32-bit) - Expected 511.9, actual 494 (0.97x) Testing distribution - Worst bias is the 18-bit window at bit 22 - 0.064% Testing bit 43 Testing collisions ( 32-bit) - Expected 511.9, actual 530 (1.04x) (19) Testing distribution - Worst bias is the 18-bit window at bit 1 - 0.063% Testing bit 44 Testing collisions ( 32-bit) - Expected 511.9, actual 527 (1.03x) (16) Testing distribution - Worst bias is the 18-bit window at bit 20 - 0.090% Testing bit 45 Testing collisions ( 32-bit) - Expected 511.9, actual 517 (1.01x) (6) Testing distribution - Worst bias is the 18-bit window at bit 17 - 0.087% Testing bit 46 Testing collisions ( 32-bit) - Expected 511.9, actual 538 (1.05x) (27) Testing distribution - Worst bias is the 18-bit window at bit 17 - 0.044% Testing bit 47 Testing collisions ( 32-bit) - Expected 511.9, actual 486 (0.95x) Testing distribution - Worst bias is the 18-bit window at bit 23 - 0.065% Testing bit 48 Testing collisions ( 32-bit) - Expected 511.9, actual 481 (0.94x) Testing distribution - Worst bias is the 18-bit window at bit 9 - 0.083% Testing bit 49 Testing collisions ( 32-bit) - Expected 511.9, actual 502 (0.98x) (-9) Testing distribution - Worst bias is the 18-bit window at bit 4 - 0.064% Testing bit 50 Testing collisions ( 32-bit) - Expected 511.9, actual 463 (0.90x) Testing distribution - Worst bias is the 18-bit window at bit 2 - 0.103% Testing bit 51 Testing collisions ( 32-bit) - Expected 511.9, actual 507 (0.99x) (-4) Testing distribution - Worst bias is the 18-bit window at bit 12 - 0.076% Testing bit 52 Testing collisions ( 32-bit) - Expected 511.9, actual 502 (0.98x) (-9) Testing distribution - Worst bias is the 18-bit window at bit 16 - 0.057% Testing bit 53 Testing collisions ( 32-bit) - Expected 511.9, actual 507 (0.99x) (-4) Testing distribution - Worst bias is the 18-bit window at bit 5 - 0.067% Testing bit 54 Testing collisions ( 32-bit) - Expected 511.9, actual 483 (0.94x) Testing distribution - Worst bias is the 17-bit window at bit 5 - 0.038% Testing bit 55 Testing collisions ( 32-bit) - Expected 511.9, actual 512 (1.00x) (1) Testing distribution - Worst bias is the 18-bit window at bit 3 - 0.060% Testing bit 56 Testing collisions ( 32-bit) - Expected 511.9, actual 560 (1.09x) (49) Testing distribution - Worst bias is the 18-bit window at bit 3 - 0.074% Testing bit 57 Testing collisions ( 32-bit) - Expected 511.9, actual 510 (1.00x) (-1) Testing distribution - Worst bias is the 18-bit window at bit 20 - 0.076% Testing bit 58 Testing collisions ( 32-bit) - Expected 511.9, actual 515 (1.01x) (4) Testing distribution - Worst bias is the 18-bit window at bit 28 - 0.071% Testing bit 59 Testing collisions ( 32-bit) - Expected 511.9, actual 538 (1.05x) (27) Testing distribution - Worst bias is the 18-bit window at bit 6 - 0.091% Testing bit 60 Testing collisions ( 32-bit) - Expected 511.9, actual 499 (0.97x) Testing distribution - Worst bias is the 18-bit window at bit 19 - 0.081% Testing bit 61 Testing collisions ( 32-bit) - Expected 511.9, actual 529 (1.03x) (18) Testing distribution - Worst bias is the 18-bit window at bit 18 - 0.055% Testing bit 62 Testing collisions ( 32-bit) - Expected 511.9, actual 533 (1.04x) (22) Testing distribution - Worst bias is the 18-bit window at bit 13 - 0.105% Testing bit 63 Testing collisions ( 32-bit) - Expected 511.9, actual 507 (0.99x) (-4) Testing distribution - Worst bias is the 18-bit window at bit 26 - 0.061% [[[ Prng Tests ]]] Skipping PRNG test; it is designed for hashes >= 64-bits [[[ BIC 'Bit Independence Criteria' Tests ]]] ........... Max bias 0.005822 - ( 35 : 9, 21) Input vcode 0x00000001, Output vcode 0x00000001, Result vcode 0x00000001 Verification value is 0x00000001 - Testing took 1324.747037 seconds ------------------------------------------------------------------------------- [[[ BadSeeds Tests ]]] Testing 1 internal secrets: PASS