diff --git a/README.md b/README.md index d9e55c1f..5b2f2a20 100644 --- a/README.md +++ b/README.md @@ -49,174 +49,174 @@ SMhasher | [asconhashv12_64](doc/asconhashv12_64.txt) | 159.68 | 386.90 | 480.86 (4) |6490 | | | [sha3-256](doc/sha3-256.txt) | 100.58 | 3877.18 |4159.79 (37)| | PerlinNoise | | [sha3-256_64](doc/sha3-256_64.txt) | 100.57 | 3909.00 |4174.63 (16)| | PerlinNoise | -| [hasshe2](doc/hasshe2.txt) | 2791.93 | 63.87 | 278.67 (5) | 445 | Permutation,TwoBytes,Zeroes,Seed| -| [poly_1_mersenne](doc/poly_1_mersenne.txt) | 1344.26 | 62.49 | 258.52 (4) | 479 | fails most tests | -| [poly_2_mersenne](doc/poly_2_mersenne.txt) | 1355.51 | 70.68 | 267.09 (5) | 479 | | -| [poly_3_mersenne](doc/poly_3_mersenne.txt) | 1344.95 | 80.08 | 277.61 (6) | 479 | | -| [poly_4_mersenne](doc/poly_4_mersenne.txt) | 1358.32 | 88.02 | 281.05 (5) | 479 | | -| [tabulation32](doc/tabulation32.txt) | 5666.25 | 40.75 | 247.27 (4) | 848 | collisions | -| [tabulation](doc/tabulation.txt) | 7860.10 | 39.88 | 260.99 (6) | 554 | | -| [crc32_hw](doc/crc32_hw.txt) | 6056.18 | 42.22 | 244.54 (5) | 653 | insecure, 100% bias, collisions, distrib, BIC, machine-specific (SSE4.2/NEON) | -| [crc32_hw1](doc/crc32_hw1.txt) | 7304.11 | 49.65 | 248.61 (6) | 671 | insecure, 100% bias, collisions, distrib, BIC, machine-specific (x86 SSE4.2) | -| [crc64_hw](doc/crc64_hw.txt) | 6149.22 | 40.10 | 214.15 (5) | 652 | insecure, 100% bias, collisions, distrib, BIC, machine-specific (SSE4.2/NEON) | +| [hasshe2](doc/hasshe2.txt) | 2773.89 | 64.35 | 282.30 (3) | 445 | Permutation,TwoBytes,Zeroes,Seed| +| [poly_1_mersenne](doc/poly_1_mersenne.txt) | 1369.21 | 61.59 | 248.86 (4) | 479 | fails most tests | +| [poly_2_mersenne](doc/poly_2_mersenne.txt) | 1364.03 | 70.30 | 261.00 (6) | 479 | | +| [poly_3_mersenne](doc/poly_3_mersenne.txt) | 1342.82 | 80.22 | 268.79 (2) | 479 | | +| [poly_4_mersenne](doc/poly_4_mersenne.txt) | 1343.19 | 89.13 | 277.52 (3) | 479 | | +| [tabulation32](doc/tabulation32.txt) | 5781.16 | 40.00 | 241.79 (10) | 848 | collisions | +| [tabulation](doc/tabulation.txt) | 7875.01 | 39.95 | 249.49 (3) | 554 | | +| [crc32_hw](doc/crc32_hw.txt) | 6244.38 | 41.23 | 226.80 (2) | 653 | insecure, 100% bias, collisions, distrib, BIC, machine-specific (SSE4.2/NEON) | +| [crc32_hw1](doc/crc32_hw1.txt) | 7569.29 | 49.07 | 233.75 (3) | 671 | insecure, 100% bias, collisions, distrib, BIC, machine-specific (x86 SSE4.2) | +| [crc64_hw](doc/crc64_hw.txt) | 6143.62 | 40.48 | 223.13 (2) | 652 | insecure, 100% bias, collisions, distrib, BIC, machine-specific (SSE4.2/NEON) | | [crc32_pclmul](doc/crc32_pclmul.txt) | - | - | - | | insecure, 100% bias, collisions, distrib, BIC, machine-specific (x86 SSE4.2+PCLMUL) | -| [o1hash](doc/o1hash.txt) | 11599548.76 | 18.21 | 223.19 (4) | 101 | insecure, no seed, zeros, fails all tests | -| [fibonacci](doc/fibonacci.txt) | 15940.72 | 22.98 | 840.87 (4) |1692 | UB, zeros, fails all tests | -| [FNV1a](doc/FNV1a.txt) | 762.10 | 73.72 | 250.05 (6) | 204 | bad seed, zeros, fails all tests | -| [FNV1A_Totenschiff](doc/FNV1A_Totenschiff.txt)| 6150.00 | 26.35 | 251.72 (5) | 270 | UB, zeros, fails all tests | -| [FNV1A_Pippip_Yurii](doc/FNV1A_Pippip_Yurii.txt)| 6094.18 | 28.29 | 260.05 (6) | 147 | UB, sanity, fails all tests | -| [FNV1a_YT](doc/FNV1a_YT.txt) | 13451.31 | 30.57 | 244.22 (5) | 321 | bad seed, UB, fails all tests | -| [FNV2](doc/FNV2.txt) | 6199.86 | 32.10 | 216.13 (5) | 278 | fails all tests | -| [FNV64](doc/FNV64.txt) | 762.15 | 73.38 | 204.27 (5) | 79 | fails all tests | -| [FNV128](doc/FNV128.txt) | 388.63 | 138.02 | 310.77 (11)| 171 | fails all tests | -| [k-hash32](doc/k-hash32.txt) | 2221.69 | 53.26 | 264.07 (4) | 808 | insecure, zeros, UB, bad seeds, fails all tests | -| [k-hash64](doc/k-hash64.txt) | 2418.02 | 49.37 | 247.61 (4) | 609 | insecure, zeros, UB, bad seeds, fails all tests | -| [fletcher2](doc/fletcher2.txt) | 15241.81 | 21.05 | 349.08 (4) | 248 | bad seed 0, UB, fails all tests | -| [fletcher4](doc/fletcher4.txt) | 15339.28 | 20.88 | 352.19 (4) | 371 | bad seed 0, UB, fails all tests | -| [bernstein](doc/bernstein.txt) | 1014.45 | 58.11 | 238.29 (4) | 41 | bad seed 0, fails all tests | -| [sdbm](doc/sdbm.txt) | 770.27 | 70.06 | 234.11 (6) | 41 | bad seed 0, fails all tests | -| [x17](doc/x17.txt) | 761.56 | 74.03 | 240.13 (6) | 79 | 99.98% bias, fails all tests | -| [libiberty](doc/libiberty.txt) | 610.09 | 85.35 | 242.93 (5) | 37 | insecure, 100% bias, fails all tests, bad seed | -| [gcc](doc/gcc.txt) | 616.49 | 85.62 | 242.07 (5) | 39 | insecure, 100% bias, fails all tests, bad seed | -| [JenkinsOOAT](doc/JenkinsOOAT.txt) | 619.78 | 108.61 | 268.47 (5) | 153 | bad seed 0, 53.5% bias, fails all tests | -| [JenkinsOOAT_perl](doc/JenkinsOOAT_perl.txt) | 615.95 | 93.03 | 257.38 (4) | 65 | bad seed 0, 1.5-11.5% bias, 7.2x collisions, BIC, LongNeighbors | -| [MicroOAAT](doc/MicroOAAT.txt) | 739.74 | 75.39 | 244.15 (5) | 68 | 100% bias, distrib, BIC | -| [pearsonhash64](doc/pearsonhash64.txt) | 434.37 | 123.30 | 229.72 (6) | | Avalanche, Seed, SSSE3 only. broken MSVC | -| [pearsonhash128](doc/pearsonhash128.txt) | 441.53 | 119.06 | 238.70 (5) | | Avalanche, Seed, SSSE3 only. broken MSVC | -| [pearsonhash256](doc/pearsonhash256.txt) | 430.46 | 118.16 | 248.71 (6) | | Avalanche, Seed, SSSE3 only. broken MSVC | -| [VHASH_32](doc/VHASH_32.txt) | 13283.54 | 64.91 | 295.63 (5) |1231 | sanity, Seed, MomentChi2 | -| [VHASH_64](doc/VHASH_64.txt) | 13057.72 | 66.00 | 291.31 (5) |1231 | sanity, Seed, Sparse | -| [farsh32](doc/farsh32.txt) | 27073.86 | 66.85 | 291.09 (5) | 944 | insecure: AppendedZeroes, collisions+bias, MomentChi2, LongNeighbors | -| [farsh64](doc/farsh64.txt) | 13742.68 | 114.13 | 331.15 (5) | 944 | insecure: AppendedZeroes, collisions+bias, MomentChi2, LongNeighbors | -| [farsh128](doc/farsh128.txt) | 6915.41 | 234.60 | 401.77 (4) | 944 | insecure: AppendedZeroes, collisions+bias, permut,combin,2bytes,zeroes,PerlinNoise | -| [farsh256](doc/farsh256.txt) | 3411.21 | 451.97 | 628.91 (3) | 944 | insecure: AppendedZeroes, collisions+bias, permut,combin,2bytes,zeroes,PerlinNoise | -| [jodyhash32](doc/jodyhash32.txt) | 1739.08 | 42.57 | 255.95 (10) | 102 | bias, collisions, distr, BIC LongNeighbors | -| [jodyhash64](doc/jodyhash64.txt) | 4794.51 | 28.17 | 247.51 (7) | 118 | bias, collisions, distr, BIC, LongNeighbors | -| [lookup3](doc/lookup3.txt) | 2467.12 | 39.90 | 247.48 (6) | 341 | UB, 28% bias, collisions, 30% distr, BIC | -| [superfast](doc/superfast.txt) | 2062.25 | 49.52 | 247.20 (4) | 210 | UB, bad seed 0, 91% bias, 5273.01x collisions, 37% distr, BIC | -| [MurmurOAAT](doc/MurmurOAAT.txt) | 507.14 | 103.15 | 246.66 (6) | 47 | bad seed 0, collisions, 99.998% distr., BIC, LongNeighbors | -| [Crap8](doc/Crap8.txt) | 3097.22 | 36.49 | 252.62 (6) | 342 | UB, 2.42% bias, collisions, 2% distrib | -| [Murmur1](doc/Murmur1.txt) | 2065.77 | 47.62 | 247.08 (4) | 358 | UB, 1 bad seed, 511x collisions, Diff, BIC | -| [Murmur2](doc/Murmur2.txt) | 3043.78 | 41.85 | 249.46 (6) | 358 | UB, 1 bad seed, 1.7% bias, 81x coll, 1.7% distrib, BIC | -| [Murmur2A](doc/Murmur2A.txt) | 3073.22 | 46.11 | 253.88 (5) | 407 | UB, 1 bad seed, 12.7% bias, LongNeighbors | -| [Murmur2B](doc/Murmur2B.txt) | 6178.48 | 38.12 | 237.04 (5) | 433 | UB, 1.8% bias, collisions, 3.4% distrib, BIC | -| [Murmur2C](doc/Murmur2C.txt) | 3794.65 | 49.28 | 231.58 (5) | 444 | UB, 2^32 bad seeds, 91% bias, collisions, distr, BIC, LongNeighbors | -| [Murmur3A](doc/Murmur3A.txt) | 3037.83 | 48.32 | 250.33 (5) | 351 | UB, 1 bad seed, Moment Chi2 69 | -| [PMurHash32](doc/PMurHash32.txt) | 3112.42 | 47.26 | 252.54 (5) |1862 | 1 bad seed, Moment Chi2 69 | -| [Murmur3C](doc/Murmur3C.txt) | 4834.87 | 56.75 | 258.31 (5) | 859 | UB, LongNeighbors, Text, DiffDist | -| [mirhash32low](doc/mirhash32low.txt) | 6057.51 | 37.61 | 254.30 (8) |1112 | UB, 4 bad seeds, Cyclic, LongNeighbors, machine-specific (32/64 differs) | -| [PMPML_32](doc/PMPML_32.txt) | 6870.14 | 43.94 | 265.62 (5) |1084 | Avalanche >512, unseeded: Seed, BIC, MomentChi2, PerlinNoise | -| [PMPML_64](doc/PMPML_64.txt) | 9984.71 | 49.26 | 249.64 (7) |1305 | unseeded: Seed, MomentChi2, BIC | -| [xxHash32](doc/xxHash32.txt) | 5896.91 | 48.59 | 248.97 (7) | 738 | LongNeighbors, collisions with 4bit diff, MomentChi2 220 | -| [metrohash64](doc/metrohash64.txt) | 14443.60 | 40.32 | 225.16 (5) | 624 | UB, LongNeighbors, BIC | -| [metrohash64_1](doc/metrohash64_1.txt) | 14549.52 | 40.57 | 259.47 (5) | 624 | UB, LongNeighbors, BIC, MomentChi2 | -| [metrohash64crc_1](doc/metrohash64crc_1.txt) | 8164.67 | 45.69 | 225.83 (4) | 632 | UB, Cyclic 8/8 byte, DiffDist, BIC, MomentChi2, machine-specific (SSE4.2/NEON) | -| [metrohash64crc_2](doc/metrohash64crc_2.txt) | 7971.63 | 44.07 | 234.54 (7) | 632 | UB, Cyclic 8/8 byte, DiffDist, BIC, machine-specific (SSE4.2/NEON) | -| [cmetrohash64_1o](doc/cmetrohash64_1o.txt) | 14734.93 | 39.62 | 223.84 (4) |3506 | UB, LongNeighbors, BIC, MomentChi2 | -| [cmetrohash64_1](doc/cmetrohash64_1.txt) | 14453.95 | 40.43 | 239.68 (6) | 652 | UB, LongNeighbors, BIC, MomentChi2 | -| [City64noSeed](doc/City64noSeed.txt) | 13900.14 | 32.21 | 244.86 (4) |1038 | Avalanche, Sparse, TwoBytes, MomentChi2, Seed | -| [City64](doc/City64.txt) | 14011.88 | 45.67 | 244.04 (5) |1120 | Sparse, TwoBytes | -| [t1ha1_64le](doc/t1ha1_64le.txt) | 13369.16 | 31.55 | 242.73 (6) | 517 | Avalanche | -| [t1ha1_64be](doc/t1ha1_64be.txt) | 11591.96 | 32.69 | 244.10 (5) | 555 | Avalanche | -| [t1ha0_32le](doc/t1ha0_32le.txt) | 7245.81 | 49.24 | 258.06 (6) | 509 | Sparse, LongNeighbors | -| [t1ha0_32be](doc/t1ha0_32be.txt) | 6754.43 | 50.64 | 253.15 (7) | 533 | Sparse, LongNeighbors | -| [t1ha2_stream](doc/t1ha2_stream.txt) | 13718.38 | 82.35 | 293.58 (5) |1665 | Sparse, Permutation, LongNeighbors | -| [t1ha2_stream128](doc/t1ha2_stream128.txt) | 13801.39 | 96.21 | 320.21 (6) |1665 | Sparse, Permutation, LongNeighbors | -| [aesnihash](doc/aesnihash.txt) | 5183.33 | 58.52 | 322.74 (36)|1209 | fails many tests, machine-specific (x64 AES-NI) | -| [falkhash](doc/falkhash.txt) | 50838.94 | 123.38 | 330.16 (6) | 264 | Sparse, LongNeighbors, machine-specific (x64 AES-NI) | -| [MeowHash](doc/MeowHash.txt) | 29521.98 | 65.83 | 287.28 (4) |1764 | Sparse, invertible, machine-specific (x64 AES-NI) | -| [MeowHash64low](doc/MeowHash64low.txt) | 29793.14 | 65.24 | 285.78 (5) |1764 | Sparse, invertible, machine-specific (x64 AES-NI) | -| [MeowHash32low](doc/MeowHash32low.txt) | 30002.99 | 64.81 | 297.76 (6) |1764 | Sparse, invertible, machine-specific (x64 AES-NI) | +| [o1hash](doc/o1hash.txt) | 11629440.57 | 18.15 | 199.35 (2) | 101 | insecure, no seed, zeros, fails all tests | +| [fibonacci](doc/fibonacci.txt) | 16878.32 | 22.94 | 803.18 (15)|1692 | UB, zeros, fails all tests | +| [FNV1a](doc/FNV1a.txt) | 760.52 | 73.83 | 254.29 (5) | 204 | bad seed, zeros, fails all tests | +| [FNV1A_Totenschiff](doc/FNV1A_Totenschiff.txt)| 6274.78 | 26.23 | 251.13 (2) | 270 | UB, zeros, fails all tests | +| [FNV1A_Pippip_Yurii](doc/FNV1A_Pippip_Yurii.txt)| 6172.14 | 27.55 | 244.80 (2) | 147 | UB, sanity, fails all tests | +| [FNV1a_YT](doc/FNV1a_YT.txt) | 13486.49 | 30.50 | 237.43 (4) | 321 | bad seed, UB, fails all tests | +| [FNV2](doc/FNV2.txt) | 6171.60 | 32.20 | 208.59 (4) | 278 | fails all tests | +| [FNV64](doc/FNV64.txt) | 774.37 | 72.43 | 201.15 (2) | 79 | fails all tests | +| [FNV128](doc/FNV128.txt) | 390.14 | 136.42 | 289.00 (3) | 171 | fails all tests | +| [k-hash32](doc/k-hash32.txt) | 2230.42 | 53.05 | 264.64 (3) | 808 | insecure, zeros, UB, bad seeds, fails all tests | +| [k-hash64](doc/k-hash64.txt) | 2451.88 | 48.66 | 249.44 (2) | 609 | insecure, zeros, UB, bad seeds, fails all tests | +| [fletcher2](doc/fletcher2.txt) | 15552.61 | 20.61 | 335.31 (3) | 248 | bad seed 0, UB, fails all tests | +| [fletcher4](doc/fletcher4.txt) | 15556.93 | 20.60 | 358.60 (3) | 371 | bad seed 0, UB, fails all tests | +| [bernstein](doc/bernstein.txt) | 1045.97 | 58.31 | 225.78 (3) | 41 | bad seed 0, fails all tests | +| [sdbm](doc/sdbm.txt) | 784.83 | 68.57 | 222.68 (5) | 41 | bad seed 0, fails all tests | +| [x17](doc/x17.txt) | 748.75 | 74.13 | 236.00 (10) | 79 | 99.98% bias, fails all tests | +| [libiberty](doc/libiberty.txt) | 628.66 | 84.95 | 225.07 (4) | 37 | insecure, 100% bias, fails all tests, bad seed | +| [gcc](doc/gcc.txt) | 611.69 | 86.47 | 231.51 (5) | 39 | insecure, 100% bias, fails all tests, bad seed | +| [JenkinsOOAT](doc/JenkinsOOAT.txt) | 627.64 | 107.04 | 252.79 (3) | 153 | bad seed 0, 53.5% bias, fails all tests | +| [JenkinsOOAT_perl](doc/JenkinsOOAT_perl.txt) | 608.10 | 94.17 | 254.09 (4) | 65 | bad seed 0, 1.5-11.5% bias, 7.2x collisions, BIC, LongNeighbors | +| [MicroOAAT](doc/MicroOAAT.txt) | 701.35 | 76.68 | 251.01 (3) | 68 | 100% bias, distrib, BIC | +| [pearsonhash64](doc/pearsonhash64.txt) | 434.17 | 124.14 | 230.79 (4) | | Avalanche, Seed, SSSE3 only. broken MSVC | +| [pearsonhash128](doc/pearsonhash128.txt) | 434.23 | 121.34 | 221.03 (7) | | Avalanche, Seed, SSSE3 only. broken MSVC | +| [pearsonhash256](doc/pearsonhash256.txt) | 444.08 | 119.11 | 229.75 (4) | | Avalanche, Seed, SSSE3 only. broken MSVC | +| [VHASH_32](doc/VHASH_32.txt) | 13053.40 | 65.84 | 289.86 (3) |1231 | sanity, Seed, MomentChi2 | +| [VHASH_64](doc/VHASH_64.txt) | 13465.50 | 63.88 | 286.38 (5) |1231 | sanity, Seed, Sparse | +| [farsh32](doc/farsh32.txt) | 27038.23 | 66.88 | 278.89 (5) | 944 | insecure: AppendedZeroes, collisions+bias, MomentChi2, LongNeighbors | +| [farsh64](doc/farsh64.txt) | 13829.32 | 112.46 | 332.59 (3) | 944 | insecure: AppendedZeroes, collisions+bias, MomentChi2, LongNeighbors | +| [farsh128](doc/farsh128.txt) | 6878.88 | 233.35 | 384.85 (3) | 944 | insecure: AppendedZeroes, collisions+bias, permut,combin,2bytes,zeroes,PerlinNoise | +| [farsh256](doc/farsh256.txt) | 3467.37 | 440.40 | 593.57 (5) | 944 | insecure: AppendedZeroes, collisions+bias, permut,combin,2bytes,zeroes,PerlinNoise | +| [jodyhash32](doc/jodyhash32.txt) | 1794.34 | 41.12 | 235.12 (4) | 102 | bias, collisions, distr, BIC LongNeighbors | +| [jodyhash64](doc/jodyhash64.txt) | 4813.10 | 40.72 | 239.22 (6) | 118 | bias, collisions, distr, BIC, LongNeighbors | +| [lookup3](doc/lookup3.txt) | 2475.35 | 39.65 | 240.10 (3) | 341 | UB, 28% bias, collisions, 30% distr, BIC | +| [superfast](doc/superfast.txt) | 2058.22 | 49.56 | 254.12 (3) | 210 | UB, bad seed 0, 91% bias, 5273.01x collisions, 37% distr, BIC | +| [MurmurOAAT](doc/MurmurOAAT.txt) | 506.66 | 103.33 | 236.89 (3) | 47 | bad seed 0, collisions, 99.998% distr., BIC, LongNeighbors | +| [Crap8](doc/Crap8.txt) | 3041.14 | 37.25 | 247.87 (4) | 342 | UB, 2.42% bias, collisions, 2% distrib | +| [Murmur1](doc/Murmur1.txt) | 2027.85 | 48.51 | 253.34 (3) | 358 | UB, 1 bad seed, 511x collisions, Diff, BIC | +| [Murmur2](doc/Murmur2.txt) | 3089.18 | 41.22 | 238.42 (4) | 358 | UB, 1 bad seed, 1.7% bias, 81x coll, 1.7% distrib, BIC | +| [Murmur2A](doc/Murmur2A.txt) | 3087.98 | 45.90 | 238.54 (4) | 407 | UB, 1 bad seed, 12.7% bias, LongNeighbors | +| [Murmur2B](doc/Murmur2B.txt) | 5919.38 | 38.18 | 215.96 (3) | 433 | UB, 1.8% bias, collisions, 3.4% distrib, BIC | +| [Murmur2C](doc/Murmur2C.txt) | 3810.98 | 49.09 | 218.51 (3) | 444 | UB, 2^32 bad seeds, 91% bias, collisions, distr, BIC, LongNeighbors | +| [Murmur3A](doc/Murmur3A.txt) | 2982.67 | 49.08 | 245.78 (4) | 351 | UB, 1 bad seed, Moment Chi2 69 | +| [PMurHash32](doc/PMurHash32.txt) | 3005.85 | 48.88 | 242.38 (3) |1862 | 1 bad seed, Moment Chi2 69 | +| [Murmur3C](doc/Murmur3C.txt) | 4833.18 | 56.87 | 250.47 (6) | 859 | UB, LongNeighbors, Text, DiffDist | +| [mirhash32low](doc/mirhash32low.txt) | 6145.39 | 36.95 | 235.09 (4) |1112 | UB, 4 bad seeds, Cyclic, LongNeighbors, machine-specific (32/64 differs) | +| [PMPML_32](doc/PMPML_32.txt) | 6639.68 | 45.33 | 257.45 (3) |1084 | Avalanche >512, unseeded: Seed, BIC, MomentChi2, PerlinNoise | +| [PMPML_64](doc/PMPML_64.txt) | 9833.77 | 50.00 | 251.64 (6) |1305 | unseeded: Seed, MomentChi2, BIC | +| [xxHash32](doc/xxHash32.txt) | 5865.17 | 49.20 | 242.74 (3) | 738 | LongNeighbors, collisions with 4bit diff, MomentChi2 220 | +| [metrohash64](doc/metrohash64.txt) | 14741.56 | 39.44 | 215.76 (2) | 624 | UB, LongNeighbors, BIC | +| [metrohash64_1](doc/metrohash64_1.txt) | 14298.77 | 40.31 | 223.25 (4) | 624 | UB, LongNeighbors, BIC, MomentChi2 | +| [metrohash64crc_1](doc/metrohash64crc_1.txt) | 6929.69 | 44.65 | 223.68 (3) | 632 | UB, Cyclic 8/8 byte, DiffDist, BIC, MomentChi2, machine-specific (SSE4.2/NEON) | +| [metrohash64crc_2](doc/metrohash64crc_2.txt) | 8150.65 | 43.72 | 219.45 (5) | 632 | UB, Cyclic 8/8 byte, DiffDist, BIC, machine-specific (SSE4.2/NEON) | +| [cmetrohash64_1o](doc/cmetrohash64_1o.txt) | 14921.73 | 38.95 | 213.25 (2) |3506 | UB, LongNeighbors, BIC, MomentChi2 | +| [cmetrohash64_1](doc/cmetrohash64_1.txt) | 14151.73 | 40.90 | 211.89 (2) | 652 | UB, LongNeighbors, BIC, MomentChi2 | +| [City64noSeed](doc/City64noSeed.txt) | 14209.19 | 31.80 | 225.90 (5) |1038 | Avalanche, Sparse, TwoBytes, MomentChi2, Seed | +| [City64](doc/City64.txt) | 13887.84 | 46.32 | 239.77 (3) |1120 | Sparse, TwoBytes | +| [t1ha1_64le](doc/t1ha1_64le.txt) | 13442.64 | 31.41 | 219.58 (3) | 517 | Avalanche | +| [t1ha1_64be](doc/t1ha1_64be.txt) | 11586.02 | 32.74 | 232.55 (3) | 555 | Avalanche | +| [t1ha0_32le](doc/t1ha0_32le.txt) | 7401.21 | 48.27 | 238.99 (3) | 509 | Sparse, LongNeighbors | +| [t1ha0_32be](doc/t1ha0_32be.txt) | 6217.37 | 50.66 | 244.51 (3) | 533 | Sparse, LongNeighbors | +| [t1ha2_stream](doc/t1ha2_stream.txt) | 14011.63 | 80.72 | 275.17 (3) |1665 | Sparse, Permutation, LongNeighbors | +| [t1ha2_stream128](doc/t1ha2_stream128.txt) | 13136.06 | 97.80 | 306.11 (7) |1665 | Sparse, Permutation, LongNeighbors | +| [aesnihash](doc/aesnihash.txt) | 5579.32 | 56.83 | 258.71 (5) |1209 | fails many tests, machine-specific (x64 AES-NI) | +| [falkhash](doc/falkhash.txt) | 50631.69 | 123.02 | 322.14 (7) | 264 | Sparse, LongNeighbors, machine-specific (x64 AES-NI) | +| [MeowHash](doc/MeowHash.txt) | 29969.40 | 64.96 | 274.29 (4) |1764 | Sparse, invertible, machine-specific (x64 AES-NI) | +| [MeowHash64low](doc/MeowHash64low.txt) | 29485.59 | 65.98 | 278.05 (3) |1764 | Sparse, invertible, machine-specific (x64 AES-NI) | +| [MeowHash32low](doc/MeowHash32low.txt) | 26944.58 | 65.95 | 292.79 (9) |1764 | Sparse, invertible, machine-specific (x64 AES-NI) | | -------------------------------------- | | | | | | | [tifuhash_64](doc/tifuhash_64.txt) | 35.60 | 1679.52 |1212.75 (15)| 276 | Cyclic low32 | | [floppsyhash](doc/floppsyhash.txt) | 35.72 | 1868.92 |1411.07 (7) | 623 | | | [beamsplitter](doc/beamsplitter.txt) | 789.22 | 682.45 |1150.33 (26)|4203 | UB | -| [discohash1](doc/discohash1.txt) | 4158.02 | 200.07 | 392.03 (3) |1294 | | -| [discohash1-128](doc/discohash1-128.txt) | 3815.35 | 236.58 | 436.62 (4) |1294 | | -| [discohash2](doc/discohash2.txt) | 4058.64 | 204.75 | 410.22 (3) |1294 | | -| [discohash2-128](doc/discohash2-128.txt) | 4147.52 | 232.69 | 427.82 (3) |1294 | | -| [discoNONG](doc/discoNONG.txt) | 3664.12 | 418.35 | 605.05 (5) | | bad seeds | -| [chaskey](doc/chaskey.txt) | 1150.69 | 113.09 | 308.01 (5) |1609 | PerlinNoise | -| [SipHash](doc/SipHash.txt) | 945.64 | 146.95 | 346.53 (5) |1071 | | -| [HalfSipHash](doc/HalfSipHash.txt) | 1108.77 | 82.02 | 285.78 (5) | 700 | zeroes | -| [GoodOAAT](doc/GoodOAAT.txt) | 744.66 | 85.45 | 244.27 (5) | 237 | | -| [pearsonbhash64](doc/pearsonbhash64.txt) | 1743.30 | 100.63 | 280.97 (6) | 683 | | -| [pearsonbhash128](doc/pearsonbhash128.txt) | 1668.94 | 105.95 | 294.48 (4) |1134 | | -| [pearsonbhash256](doc/pearsonbhash256.txt) | 1413.41 | 124.67 | 321.99 (6) | 844 | | -| [prvhash64_64m](doc/prvhash64_64m.txt) | 2999.14 | 48.44 | 361.73 (27)| 349 | | -| [prvhash64_64](doc/prvhash64_64.txt) | 2968.64 | 49.33 | 549.32 (24)| 384 | | -| [prvhash64_128](doc/prvhash64_128.txt) | 3206.91 | 69.44 | 347.14 (14)| 718 | | -| [prvhash64s_64](doc/prvhash64s_64.txt) | 6553.66 | 274.48 | 540.62 (16)|2640 | | -| [prvhash64s_128](doc/prvhash64s_128.txt) | 6477.93 | 373.10 | 553.80 (14)|2799 | | -| [SipHash13](doc/SipHash13.txt) | 1813.55 | 106.44 | 314.29 (5) | 778 | 0.9% bias | -| [TSip](doc/TSip.txt) | 4233.52 | 53.23 | 261.81 (6) | 519 | !msvc | -| [seahash](doc/seahash.txt) | 8322.53 | 58.50 | 267.77 (5) | 871 | PerlinNoise, !msvc | -| [seahash32low](doc/seahash32low.txt) | 8177.83 | 59.45 | 292.87 (6) | 871 | PerlinNoise 32, !msvc | -| [clhash](doc/clhash.txt) | 17688.81 | 69.15 | 287.95 (6) |1809 | PerlinNoise, machine-specific (x64 SSE4.2) | +| [discohash1](doc/discohash1.txt) | 4131.12 | 199.00 | 398.35 (5) |1294 | | +| [discohash1-128](doc/discohash1-128.txt) | 4072.95 | 234.17 | 438.43 (5) |1294 | | +| [discohash2](doc/discohash2.txt) | 3986.52 | 207.52 | 421.99 (2) |1294 | | +| [discohash2-128](doc/discohash2-128.txt) | 4094.73 | 236.61 | 433.35 (4) |1294 | | +| [discoNONG](doc/discoNONG.txt) | 3698.45 | 399.67 | 597.78 (9) | | bad seeds | +| [chaskey](doc/chaskey.txt) | 1143.05 | 113.70 | 294.43 (4) |1609 | PerlinNoise | +| [SipHash](doc/SipHash.txt) | 943.53 | 147.15 | 338.74 (4) |1071 | | +| [HalfSipHash](doc/HalfSipHash.txt) | 1141.57 | 79.65 | 263.96 (3) | 700 | zeroes | +| [GoodOAAT](doc/GoodOAAT.txt) | 743.81 | 85.62 | 231.22 (3) | 237 | | +| [pearsonbhash64](doc/pearsonbhash64.txt) | 1794.83 | 97.80 | 268.90 (8) | 683 | | +| [pearsonbhash128](doc/pearsonbhash128.txt) | 1691.62 | 104.57 | 272.38 (4) |1134 | | +| [pearsonbhash256](doc/pearsonbhash256.txt) | 1442.59 | 126.04 | 309.34 (4) | 844 | | +| [prvhash64_64m](doc/prvhash64_64m.txt) | 3077.18 | 47.31 | 241.92 (3) | 349 | | +| [prvhash64_64](doc/prvhash64_64.txt) | 3015.08 | 48.03 | 240.64 (3) | 384 | | +| [prvhash64_128](doc/prvhash64_128.txt) | 3353.81 | 67.64 | 266.32 (2) | 718 | | +| [prvhash64s_64](doc/prvhash64s_64.txt) | 6591.34 | 273.50 | 464.65 (3) |2640 | | +| [prvhash64s_128](doc/prvhash64s_128.txt) | 6581.40 | 333.83 | 528.07 (5) |2799 | | +| [SipHash13](doc/SipHash13.txt) | 1812.75 | 106.56 | 310.76 (5) | 778 | 0.9% bias | +| [TSip](doc/TSip.txt) | 4233.17 | 53.31 | 249.19 (3) | 519 | !msvc | +| [seahash](doc/seahash.txt) | 8261.80 | 58.94 | 256.08 (4) | 871 | PerlinNoise, !msvc | +| [seahash32low](doc/seahash32low.txt) | 8266.17 | 58.90 | 290.21 (16)| 871 | PerlinNoise 32, !msvc | +| [clhash](doc/clhash.txt) | 18703.04 | 70.19 | 282.12 (6) |1809 | PerlinNoise, machine-specific (x64 SSE4.2) | | [HighwayHash64](doc/HighwayHash64.txt) | 6242.58 | 99.55 | 248.41 (3) |2546 | | -| [Murmur3F](doc/Murmur3F.txt) | 7625.10 | 52.69 | 228.96 (5) | 699 | UB | -| [MUM](doc/MUM.txt) | 9353.53 | 35.80 | 239.36 (6) |1912 | UB, too many bad seeds, machine-specific (32/64 differs) | -| [MUMlow](doc/MUMlow.txt) | 8978.00 | 36.15 | 267.84 (5) |1912 | UB, 5 bad seeds | -| [mirhash](doc/mirhash.txt) | 6008.40 | 37.79 | 237.03 (5) |1112 | UB, 2^36 bad seeds, LongNeighbors, machine-specific (32/64 differs) | -| [mirhashstrict](doc/mirhashstrict.txt) | 3545.19 | 50.03 | 234.09 (6) |1112 | | -| [mirhashstrict32low](doc/mirhashstrict32low.txt)| 3566.47 | 49.73 | 263.25 (4) |1112 | 1 bad seed, MomentChi2 9 | -| [fasthash32](doc/fasthash32.txt) | 6075.38 | 40.68 | 262.40 (6) | 566 | UB | -| [fasthash64](doc/fasthash64.txt) | 6173.22 | 38.08 | 228.68 (6) | 509 | UB | -| [aesni](doc/aesni.txt) | 31065.90 | 30.02 | 235.58 (8) | 519 | machine-specific (x64 AES-NI) | -| [aesni-low](doc/aesni-low.txt) | 30410.61 | 29.75 | 236.47 (6) | 519 | machine-specific (x64 AES-NI) | -| [mx3](doc/mx3.txt) | 9039.63 | 48.63 | 236.57 (5) | 734 | UB | -| [pengyhash](doc/pengyhash.txt) | 13293.76 | 75.49 | 286.41 (6) | 421 | | -| [City32](doc/City32.txt) | 5637.89 | 53.19 | 260.99 (6) |1319 | | -| [City64low](doc/City64low.txt) | 13897.36 | 46.24 | 267.69 (5) |1120| | -| [City128](doc/City128.txt) | 14129.60 | 87.98 | 290.70 (7) |1841 | | -| [CityCrc128](doc/CityCrc128.txt) | 8041.40 | 54.69 | 257.22 (5) | 295 | | -| [FarmHash32](doc/FarmHash32.txt) | 21706.27 | 47.69 | 271.51 (6) |11489| machine-specific (x64 SSE4/AVX) | -| [FarmHash64](doc/FarmHash64.txt) | 12965.76 | 46.42 | 258.29 (6) |3758 | | -| [FarmHash128](doc/FarmHash128.txt) | 14144.18 | 69.22 | 269.64 (5) | 163 | | -| [farmhash32_c](doc/farmhash32_c.txt) | 21913.08 | 47.22 | 267.19 (5) | 762 | machine-specific (x64 SSE4/AVX) | -| [farmhash64_c](doc/farmhash64_c.txt) | 12853.81 | 46.99 | 250.29 (5) |3688 | | -| [farmhash128_c](doc/farmhash128_c.txt) | 13877.86 | 68.19 | 271.10 (4) |1890 | | -| [metrohash64_2](doc/metrohash64_2.txt) | 13634.01 | 40.14 | 231.99 (6) | 627 | UB, LongNeighbors | -| [cmetrohash64_2](doc/cmetrohash64_2.txt) | 14292.65 | 40.64 | 224.73 (4) | 655 | LongNeighbors | -| [metrohash128](doc/metrohash128.txt) | 15640.32 | 73.22 | 269.23 (5) | 773 | UB, LongNeighbors | -| [metrohash128_1](doc/metrohash128_1.txt) | 15802.66 | 72.40 | 266.20 (6) | 773 | UB, LongNeighbors | -| [metrohash128_2](doc/metrohash128_2.txt) | 15576.05 | 73.58 | 273.15 (6) | 773 | UB, LongNeighbors | -| [metrohash128crc_1](doc/metrohash128crc_1.txt)| 7961.55 | 78.91 | 276.21 (5) | 723 | UB, machine-specific (SSE4.2/NEON) | -| [metrohash128crc_2](doc/metrohash128crc_2.txt)| 8016.22 | 78.59 | 274.52 (5) | 723 | UB, machine-specific (SSE4.2/NEON) | -| [xxHash64](doc/xxHash64.txt) | 12226.39 | 49.20 | 236.97 (5) |1999 | | -| [Spooky32](doc/Spooky32.txt) | 13122.35 | 56.13 | 260.40 (5) |2221 | UB | -| [Spooky64](doc/Spooky64.txt) | 13340.58 | 55.22 | 250.99 (5) |2221 | UB | -| [Spooky128](doc/Spooky128.txt) | 13119.47 | 58.89 | 250.41 (6) |2221 | UB | -| [SpookyV2_32](doc/SpookyV2_32.txt) | 13326.98 | 56.54 | 261.84 (4) |2069 | | -| [SpookyV2_64](doc/SpookyV2_64.txt) | 13104.98 | 57.54 | 252.86 (7) |2069 | | -| [SpookyV2_128](doc/SpookyV2_128.txt) | 13316.09 | 59.19 | 252.60 (5) |2069 | | +| [Murmur3F](doc/Murmur3F.txt) | 7623.44 | 52.69 | 221.87 (3) | 699 | UB | +| [MUM](doc/MUM.txt) | 9563.99 | 34.99 | 228.55 (5) |1912 | UB, too many bad seeds, machine-specific (32/64 differs) | +| [MUMlow](doc/MUMlow.txt) | 9261.89 | 36.17 | 247.66 (4) |1912 | UB, 5 bad seeds | +| [mirhash](doc/mirhash.txt) | 6139.07 | 37.02 | 209.47 (3) |1112 | UB, 2^36 bad seeds, LongNeighbors, machine-specific (32/64 differs) | +| [mirhashstrict](doc/mirhashstrict.txt) | 3549.01 | 49.99 | 224.91 (2) |1112 | | +| [mirhashstrict32low](doc/mirhashstrict32low.txt)| 3441.35 | 50.60 | 247.19 (3) |1112 | 1 bad seed, MomentChi2 9 | +| [fasthash32](doc/fasthash32.txt) | 6128.28 | 40.30 | 241.64 (4) | 566 | UB | +| [fasthash64](doc/fasthash64.txt) | 5818.92 | 38.70 | 220.74 (2) | 509 | UB | +| [aesni](doc/aesni.txt) | 31232.34 | 29.21 | 230.14 (4) | 519 | machine-specific (x64 AES-NI) | +| [aesni-low](doc/aesni-low.txt) | 31221.14 | 29.64 | 226.18 (3) | 519 | machine-specific (x64 AES-NI) | +| [mx3](doc/mx3.txt) | 9034.90 | 48.71 | 227.89 (2) | 734 | UB | +| [pengyhash](doc/pengyhash.txt) | 13428.80 | 74.24 | 275.42 (5) | 421 | | +| [City32](doc/City32.txt) | 5551.28 | 54.40 | 261.64 (2) |1319 | | +| [City64low](doc/City64low.txt) | 13904.10 | 46.24 | 260.08 (3) |1120| | +| [City128](doc/City128.txt) | 14031.96 | 89.09 | 290.05 (10)|1841 | | +| [CityCrc128](doc/CityCrc128.txt) | 7916.44 | 55.50 | 240.79 (2) | 295 | | +| [FarmHash32](doc/FarmHash32.txt) | 21755.58 | 47.54 | 258.35 (3) |11489| machine-specific (x64 SSE4/AVX) | +| [FarmHash64](doc/FarmHash64.txt) | 12845.53 | 47.11 | 251.58 (3) |3758 | | +| [FarmHash128](doc/FarmHash128.txt) | 13913.65 | 70.25 | 263.06 (3) | 163 | | +| [farmhash32_c](doc/farmhash32_c.txt) | 21601.86 | 47.38 | 273.00 (3) | 762 | machine-specific (x64 SSE4/AVX) | +| [farmhash64_c](doc/farmhash64_c.txt) | 12834.10 | 47.23 | 246.20 (2) |3688 | | +| [farmhash128_c](doc/farmhash128_c.txt) | 13753.24 | 68.96 | 263.76 (3) |1890 | | +| [metrohash64_2](doc/metrohash64_2.txt) | 14316.37 | 40.23 | 218.28 (3) | 627 | UB, LongNeighbors | +| [cmetrohash64_2](doc/cmetrohash64_2.txt) | 14294.26 | 40.76 | 221.40 (4) | 655 | LongNeighbors | +| [metrohash128](doc/metrohash128.txt) | 15634.66 | 73.28 | 261.23 (4) | 773 | UB, LongNeighbors | +| [metrohash128_1](doc/metrohash128_1.txt) | 15806.97 | 72.30 | 260.90 (4) | 773 | UB, LongNeighbors | +| [metrohash128_2](doc/metrohash128_2.txt) | 15822.60 | 72.30 | 255.34 (3) | 773 | UB, LongNeighbors | +| [metrohash128crc_1](doc/metrohash128crc_1.txt)| 8009.23 | 78.72 | 281.55 (13)| 723 | UB, machine-specific (SSE4.2/NEON) | +| [metrohash128crc_2](doc/metrohash128crc_2.txt)| 7878.22 | 79.90 | 275.22 (4) | 723 | UB, machine-specific (SSE4.2/NEON) | +| [xxHash64](doc/xxHash64.txt) | 12108.87 | 49.78 | 228.83 (2) |1999 | | +| [Spooky32](doc/Spooky32.txt) | 13108.95 | 56.27 | 255.36 (3) |2221 | UB | +| [Spooky64](doc/Spooky64.txt) | 13529.36 | 58.76 | 236.31 (3) |2221 | UB | +| [Spooky128](doc/Spooky128.txt) | 11781.35 | 58.91 | 242.91 (3) |2221 | UB | +| [SpookyV2_32](doc/SpookyV2_32.txt) | 13529.16 | 55.55 | 248.37 (4) |2069 | | +| [SpookyV2_64](doc/SpookyV2_64.txt) | 12678.82 | 56.71 | 243.21 (4) |2069 | | +| [SpookyV2_128](doc/SpookyV2_128.txt) | 13512.82 | 58.33 | 244.56 (5) |2069 | | | [ahash64](doc/ahash64.txt) | 9862.62 | 27.32 | 181.68 (1) | 412 | rust | -| [xxh3](doc/xxh3.txt) | 20383.53 | 30.79 | 237.87 (6) | 744 | DiffDist bit 7 w. 36 bits, BIC | -| [xxh3low](doc/xxh3low.txt) | 20722.94 | 30.26 | 256.34 (7) | 756 | | -| [xxh128](doc/xxh128.txt) | 18819.68 | 32.66 | 256.52 (4) |1012 | | -| [xxh128low](doc/xxh128low.txt) | 19043.36 | 31.99 | 250.40 (6) |1012 | | -| [t1ha2_atonce](doc/t1ha2_atonce.txt) | 13926.52 | 37.70 | 245.33 (6) | 541 | Zeroes low3 | -| [t1ha2_atonce128](doc/t1ha2_atonce128.txt) | 13854.28 | 57.06 | 266.53 (4) | 613 | LongNeighbors | -| [t1ha0_aes_noavx](doc/t1ha0_aes_noavx.txt) | 27527.84 | 37.23 | 245.10 (6) | 925 | LongNeighbors, machine-specific (x86 AES-NI) | +| [xxh3](doc/xxh3.txt) | 21033.55 | 29.48 | 226.77 (4) | 744 | DiffDist bit 7 w. 36 bits, BIC | +| [xxh3low](doc/xxh3low.txt) | 17093.19 | 30.57 | 242.07 (7) | 756 | | +| [xxh128](doc/xxh128.txt) | 18802.16 | 32.37 | 234.30 (4) |1012 | | +| [xxh128low](doc/xxh128low.txt) | 18833.05 | 32.30 | 234.68 (3) |1012 | | +| [t1ha2_atonce](doc/t1ha2_atonce.txt) | 13854.44 | 37.92 | 233.54 (2) | 541 | Zeroes low3 | +| [t1ha2_atonce128](doc/t1ha2_atonce128.txt) | 14148.42 | 55.70 | 253.74 (6) | 613 | LongNeighbors | +| [t1ha0_aes_noavx](doc/t1ha0_aes_noavx.txt) | 27231.59 | 37.70 | 236.10 (3) | 925 | LongNeighbors, machine-specific (x86 AES-NI) | | [t1ha0_aes_avx1](doc/t1ha0_aes_avx1) | 22714.85 | 48.12 | 226.52 (16)| 843 | LongNeighbors, machine-specific (x64 AVX.txt)| -| [t1ha0_aes_avx2](doc/t1ha0_aes_avx2.txt) | 55655.02 | 37.25 | 258.23 (5) | 792 | LongNeighbors, machine-specific (x64 AVX2) | +| [t1ha0_aes_avx2](doc/t1ha0_aes_avx2.txt) | 56919.46 | 36.70 | 233.14 (2) | 792 | LongNeighbors, machine-specific (x64 AVX2) | | [wyhash32](doc/wyhash32.txt) | 2532.89 | 48.40 | 484.57 (1) | 426 | 4 bad and broken seeds, 32-bit | -| [wyhash32low](doc/wyhash32low.txt) | 22895.72 | 28.87 | 260.96 (6) | 474 | 12 bad and broken seeds | -| [wyhash](doc/wyhash.txt) | 22513.04 | 29.01 | 228.76 (5) | 474 | | -| [umash32](doc/umash32.txt) | 22373.83 | 41.98 | 257.19 (6) |1530 | | -| [umash32_hi](doc/umash32_hi.txt) | 22935.43 | 42.16 | 257.93 (5) |1530 | | -| [umash64](doc/umash64.txt) | 22695.69 | 42.02 | 246.91 (5) |1530 | | -| [umash128](doc/umash128.txt) | 13024.01 | 42.98 | 242.48 (4) |1530 | | -| [halftime_hash64](doc/halftime_hash64.txt) | 4765.33 | 99.67 | 324.58 (4) |2911 | | -| [halftime_hash128](doc/halftime_hash128.txt) | 17545.03 | 98.17 | 322.50 (5) |2462 | | -| [halftime_hash256](doc/halftime_hash256.txt) | 18018.00 | 99.86 | 326.90 (4) |2622 | | -| [halftime_hash512](doc/halftime_hash512.txt) | 10894.15 | 118.66 | 335.38 (5) |3550 | | -| [nmhash32](doc/nmhash32.txt) | 12785.12 | 56.66 | 271.67 (4) |2445 | | -| [nmhash32x](doc/nmhash32x.txt) | 12702.23 | 42.94 | 261.02 (5) |1494 | | -| [k-hashv32](doc/k-hashv32.txt) | 9044.40 | 53.38 | 259.25 (5) |1280 | | +| [wyhash32low](doc/wyhash32low.txt) | 22892.78 | 28.87 | 242.56 (4) | 474 | 12 bad and broken seeds | +| [wyhash](doc/wyhash.txt) | 23254.03 | 28.47 | 216.10 (3) | 474 | | +| [umash32](doc/umash32.txt) | 21427.57 | 42.12 | 255.55 (5) |1530 | | +| [umash32_hi](doc/umash32_hi.txt) | 21483.12 | 42.65 | 251.09 (4) |1530 | | +| [umash64](doc/umash64.txt) | 21690.08 | 41.67 | 238.01 (4) |1530 | | +| [umash128](doc/umash128.txt) | 13211.88 | 43.37 | 237.40 (3) |1530 | | +| [halftime_hash64](doc/halftime_hash64.txt) | 4735.63 | 99.90 | 315.34 (3) |2911 | | +| [halftime_hash128](doc/halftime_hash128.txt) | 17534.53 | 97.97 | 311.10 (4) |2462 | | +| [halftime_hash256](doc/halftime_hash256.txt) | 18003.39 | 99.46 | 315.09 (3) |2622 | | +| [halftime_hash512](doc/halftime_hash512.txt) | 10890.15 | 118.05 | 333.45 (3) |3550 | | +| [nmhash32](doc/nmhash32.txt) | 12969.62 | 55.88 | 265.69 (4) |2445 | | +| [nmhash32x](doc/nmhash32x.txt) | 12775.08 | 42.66 | 246.05 (3) |1494 | | +| [k-hashv32](doc/k-hashv32.txt) | 9181.87 | 52.76 | 245.14 (3) |1280 | | | [k-hashv64](doc/k-hashv32.txt) | 7850.92 | 46.94 | 193.94 (1) |1279 | | -| [komihash](doc/komihash.txt) | 12129.93 | 33.38 | 237.97 (3) |1323 | | -| [polymur](doc/polymur.txt) | 9515.85 | 43.20 | 247.34 (8) |1128 | | +| [komihash](doc/komihash.txt) | 12191.22 | 33.19 | 230.67 (3) |1323 | | +| [polymur](doc/polymur.txt) | 9676.33 | 42.70 | 246.53 (3) |1128 | | The sortable table variants: diff --git a/doc/City128.txt b/doc/City128.txt index 08d53210..d6a5c356 100644 --- a/doc/City128.txt +++ b/doc/City128.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 3.354 bytes/cycle - 9594.70 MiB/sec @ 3 ghz -Alignment 6 - 3.354 bytes/cycle - 9594.56 MiB/sec @ 3 ghz -Alignment 5 - 3.353 bytes/cycle - 9594.15 MiB/sec @ 3 ghz -Alignment 4 - 3.354 bytes/cycle - 9596.85 MiB/sec @ 3 ghz -Alignment 3 - 3.353 bytes/cycle - 9594.43 MiB/sec @ 3 ghz -Alignment 2 - 3.353 bytes/cycle - 9594.30 MiB/sec @ 3 ghz -Alignment 1 - 3.353 bytes/cycle - 9594.33 MiB/sec @ 3 ghz -Alignment 0 - 3.579 bytes/cycle - 10239.25 MiB/sec @ 3 ghz -Average - 3.382 bytes/cycle - 9675.32 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 76.00 cycles/hash -Small key speed test - 2-byte keys - 76.00 cycles/hash -Small key speed test - 3-byte keys - 76.00 cycles/hash -Small key speed test - 4-byte keys - 80.00 cycles/hash -Small key speed test - 5-byte keys - 89.00 cycles/hash -Small key speed test - 6-byte keys - 89.00 cycles/hash -Small key speed test - 7-byte keys - 89.00 cycles/hash -Small key speed test - 8-byte keys - 76.29 cycles/hash -Small key speed test - 9-byte keys - 88.00 cycles/hash -Small key speed test - 10-byte keys - 88.00 cycles/hash -Small key speed test - 11-byte keys - 88.00 cycles/hash -Small key speed test - 12-byte keys - 86.00 cycles/hash -Small key speed test - 13-byte keys - 86.00 cycles/hash -Small key speed test - 14-byte keys - 86.00 cycles/hash -Small key speed test - 15-byte keys - 86.00 cycles/hash -Small key speed test - 16-byte keys - 86.00 cycles/hash -Small key speed test - 17-byte keys - 94.00 cycles/hash -Small key speed test - 18-byte keys - 94.00 cycles/hash -Small key speed test - 19-byte keys - 94.00 cycles/hash -Small key speed test - 20-byte keys - 94.00 cycles/hash -Small key speed test - 21-byte keys - 94.00 cycles/hash -Small key speed test - 22-byte keys - 94.00 cycles/hash -Small key speed test - 23-byte keys - 94.00 cycles/hash -Small key speed test - 24-byte keys - 93.67 cycles/hash -Small key speed test - 25-byte keys - 94.00 cycles/hash -Small key speed test - 26-byte keys - 94.00 cycles/hash -Small key speed test - 27-byte keys - 94.00 cycles/hash -Small key speed test - 28-byte keys - 94.00 cycles/hash -Small key speed test - 29-byte keys - 94.00 cycles/hash -Small key speed test - 30-byte keys - 94.00 cycles/hash -Small key speed test - 31-byte keys - 94.00 cycles/hash -Average 88.870 cycles/hash +Alignment 7 - 4.896 bytes/cycle - 14008.58 MiB/sec @ 3 ghz +Alignment 6 - 4.896 bytes/cycle - 14008.60 MiB/sec @ 3 ghz +Alignment 5 - 4.897 bytes/cycle - 14009.15 MiB/sec @ 3 ghz +Alignment 4 - 4.900 bytes/cycle - 14017.76 MiB/sec @ 3 ghz +Alignment 3 - 4.896 bytes/cycle - 14007.87 MiB/sec @ 3 ghz +Alignment 2 - 4.897 bytes/cycle - 14009.28 MiB/sec @ 3 ghz +Alignment 1 - 4.896 bytes/cycle - 14008.53 MiB/sec @ 3 ghz +Alignment 0 - 4.958 bytes/cycle - 14185.90 MiB/sec @ 3 ghz +Average - 4.905 bytes/cycle - 14031.96 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 77.81 cycles/hash +Small key speed test - 2-byte keys - 77.78 cycles/hash +Small key speed test - 3-byte keys - 77.80 cycles/hash +Small key speed test - 4-byte keys - 79.97 cycles/hash +Small key speed test - 5-byte keys - 79.98 cycles/hash +Small key speed test - 6-byte keys - 79.97 cycles/hash +Small key speed test - 7-byte keys - 79.96 cycles/hash +Small key speed test - 8-byte keys - 77.78 cycles/hash +Small key speed test - 9-byte keys - 80.90 cycles/hash +Small key speed test - 10-byte keys - 80.92 cycles/hash +Small key speed test - 11-byte keys - 80.91 cycles/hash +Small key speed test - 12-byte keys - 80.93 cycles/hash +Small key speed test - 13-byte keys - 80.90 cycles/hash +Small key speed test - 14-byte keys - 80.89 cycles/hash +Small key speed test - 15-byte keys - 80.89 cycles/hash +Small key speed test - 16-byte keys - 80.95 cycles/hash +Small key speed test - 17-byte keys - 99.00 cycles/hash +Small key speed test - 18-byte keys - 99.00 cycles/hash +Small key speed test - 19-byte keys - 99.13 cycles/hash +Small key speed test - 20-byte keys - 99.00 cycles/hash +Small key speed test - 21-byte keys - 98.85 cycles/hash +Small key speed test - 22-byte keys - 98.86 cycles/hash +Small key speed test - 23-byte keys - 98.86 cycles/hash +Small key speed test - 24-byte keys - 98.80 cycles/hash +Small key speed test - 25-byte keys - 98.78 cycles/hash +Small key speed test - 26-byte keys - 98.99 cycles/hash +Small key speed test - 27-byte keys - 99.11 cycles/hash +Small key speed test - 28-byte keys - 98.76 cycles/hash +Small key speed test - 29-byte keys - 98.79 cycles/hash +Small key speed test - 30-byte keys - 98.75 cycles/hash +Small key speed test - 31-byte keys - 98.73 cycles/hash +Average 89.088 cycles/hash [[[ 'Hashmap' Speed Tests (when inlined) ]]] diff --git a/doc/City32.txt b/doc/City32.txt index 0e19b4e9..07a7be0d 100644 --- a/doc/City32.txt +++ b/doc/City32.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 1.958 bytes/cycle - 5601.89 MiB/sec @ 3 ghz -Alignment 6 - 1.965 bytes/cycle - 5621.72 MiB/sec @ 3 ghz -Alignment 5 - 1.957 bytes/cycle - 5598.72 MiB/sec @ 3 ghz -Alignment 4 - 1.963 bytes/cycle - 5616.70 MiB/sec @ 3 ghz -Alignment 3 - 1.952 bytes/cycle - 5584.22 MiB/sec @ 3 ghz -Alignment 2 - 1.951 bytes/cycle - 5582.44 MiB/sec @ 3 ghz -Alignment 1 - 1.952 bytes/cycle - 5584.69 MiB/sec @ 3 ghz -Alignment 0 - 1.963 bytes/cycle - 5614.96 MiB/sec @ 3 ghz -Average - 1.958 bytes/cycle - 5600.67 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 36.53 cycles/hash -Small key speed test - 2-byte keys - 40.00 cycles/hash -Small key speed test - 3-byte keys - 44.52 cycles/hash -Small key speed test - 4-byte keys - 47.25 cycles/hash -Small key speed test - 5-byte keys - 44.12 cycles/hash -Small key speed test - 6-byte keys - 44.00 cycles/hash -Small key speed test - 7-byte keys - 44.62 cycles/hash -Small key speed test - 8-byte keys - 44.52 cycles/hash -Small key speed test - 9-byte keys - 44.45 cycles/hash -Small key speed test - 10-byte keys - 44.30 cycles/hash -Small key speed test - 11-byte keys - 44.00 cycles/hash -Small key speed test - 12-byte keys - 44.00 cycles/hash -Small key speed test - 13-byte keys - 56.50 cycles/hash -Small key speed test - 14-byte keys - 57.00 cycles/hash -Small key speed test - 15-byte keys - 57.00 cycles/hash -Small key speed test - 16-byte keys - 56.96 cycles/hash -Small key speed test - 17-byte keys - 57.00 cycles/hash -Small key speed test - 18-byte keys - 57.99 cycles/hash -Small key speed test - 19-byte keys - 57.89 cycles/hash -Small key speed test - 20-byte keys - 57.00 cycles/hash -Small key speed test - 21-byte keys - 56.77 cycles/hash -Small key speed test - 22-byte keys - 56.87 cycles/hash -Small key speed test - 23-byte keys - 56.92 cycles/hash -Small key speed test - 24-byte keys - 56.88 cycles/hash -Small key speed test - 25-byte keys - 68.89 cycles/hash -Small key speed test - 26-byte keys - 68.94 cycles/hash -Small key speed test - 27-byte keys - 68.80 cycles/hash -Small key speed test - 28-byte keys - 68.87 cycles/hash -Small key speed test - 29-byte keys - 68.00 cycles/hash -Small key speed test - 30-byte keys - 68.00 cycles/hash -Small key speed test - 31-byte keys - 68.00 cycles/hash -Average 54.406 cycles/hash +Alignment 7 - 1.940 bytes/cycle - 5549.01 MiB/sec @ 3 ghz +Alignment 6 - 1.936 bytes/cycle - 5538.67 MiB/sec @ 3 ghz +Alignment 5 - 1.940 bytes/cycle - 5549.21 MiB/sec @ 3 ghz +Alignment 4 - 1.947 bytes/cycle - 5569.29 MiB/sec @ 3 ghz +Alignment 3 - 1.938 bytes/cycle - 5544.84 MiB/sec @ 3 ghz +Alignment 2 - 1.938 bytes/cycle - 5544.66 MiB/sec @ 3 ghz +Alignment 1 - 1.938 bytes/cycle - 5544.79 MiB/sec @ 3 ghz +Alignment 0 - 1.947 bytes/cycle - 5569.73 MiB/sec @ 3 ghz +Average - 1.940 bytes/cycle - 5551.28 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 37.00 cycles/hash +Small key speed test - 2-byte keys - 41.00 cycles/hash +Small key speed test - 3-byte keys - 45.00 cycles/hash +Small key speed test - 4-byte keys - 48.00 cycles/hash +Small key speed test - 5-byte keys - 44.99 cycles/hash +Small key speed test - 6-byte keys - 44.99 cycles/hash +Small key speed test - 7-byte keys - 44.99 cycles/hash +Small key speed test - 8-byte keys - 44.99 cycles/hash +Small key speed test - 9-byte keys - 44.99 cycles/hash +Small key speed test - 10-byte keys - 44.99 cycles/hash +Small key speed test - 11-byte keys - 44.98 cycles/hash +Small key speed test - 12-byte keys - 44.99 cycles/hash +Small key speed test - 13-byte keys - 56.59 cycles/hash +Small key speed test - 14-byte keys - 56.58 cycles/hash +Small key speed test - 15-byte keys - 56.61 cycles/hash +Small key speed test - 16-byte keys - 56.58 cycles/hash +Small key speed test - 17-byte keys - 56.56 cycles/hash +Small key speed test - 18-byte keys - 56.59 cycles/hash +Small key speed test - 19-byte keys - 56.58 cycles/hash +Small key speed test - 20-byte keys - 56.58 cycles/hash +Small key speed test - 21-byte keys - 57.00 cycles/hash +Small key speed test - 22-byte keys - 57.00 cycles/hash +Small key speed test - 23-byte keys - 57.00 cycles/hash +Small key speed test - 24-byte keys - 56.61 cycles/hash +Small key speed test - 25-byte keys - 67.66 cycles/hash +Small key speed test - 26-byte keys - 67.61 cycles/hash +Small key speed test - 27-byte keys - 67.70 cycles/hash +Small key speed test - 28-byte keys - 68.58 cycles/hash +Small key speed test - 29-byte keys - 67.93 cycles/hash +Small key speed test - 30-byte keys - 67.93 cycles/hash +Small key speed test - 31-byte keys - 67.91 cycles/hash +Average 54.403 cycles/hash [[[ 'Hashmap' Speed Tests ]]] diff --git a/doc/City64.txt b/doc/City64.txt index d9cfcdfe..0201f88a 100644 --- a/doc/City64.txt +++ b/doc/City64.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 3.163 bytes/cycle - 9050.21 MiB/sec @ 3 ghz -Alignment 6 - 3.163 bytes/cycle - 9048.89 MiB/sec @ 3 ghz -Alignment 5 - 3.164 bytes/cycle - 9051.92 MiB/sec @ 3 ghz -Alignment 4 - 3.162 bytes/cycle - 9045.89 MiB/sec @ 3 ghz -Alignment 3 - 3.162 bytes/cycle - 9047.70 MiB/sec @ 3 ghz -Alignment 2 - 3.164 bytes/cycle - 9052.28 MiB/sec @ 3 ghz -Alignment 1 - 3.161 bytes/cycle - 9044.90 MiB/sec @ 3 ghz -Alignment 0 - 3.291 bytes/cycle - 9414.47 MiB/sec @ 3 ghz -Average - 3.179 bytes/cycle - 9094.53 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 38.00 cycles/hash -Small key speed test - 2-byte keys - 38.00 cycles/hash -Small key speed test - 3-byte keys - 38.00 cycles/hash -Small key speed test - 4-byte keys - 42.00 cycles/hash -Small key speed test - 5-byte keys - 51.00 cycles/hash -Small key speed test - 6-byte keys - 51.00 cycles/hash -Small key speed test - 7-byte keys - 51.00 cycles/hash -Small key speed test - 8-byte keys - 42.00 cycles/hash -Small key speed test - 9-byte keys - 55.00 cycles/hash -Small key speed test - 10-byte keys - 55.00 cycles/hash -Small key speed test - 11-byte keys - 55.00 cycles/hash -Small key speed test - 12-byte keys - 53.00 cycles/hash -Small key speed test - 13-byte keys - 53.00 cycles/hash -Small key speed test - 14-byte keys - 53.00 cycles/hash -Small key speed test - 15-byte keys - 53.00 cycles/hash -Small key speed test - 16-byte keys - 53.00 cycles/hash -Small key speed test - 17-byte keys - 60.00 cycles/hash -Small key speed test - 18-byte keys - 60.00 cycles/hash -Small key speed test - 19-byte keys - 60.00 cycles/hash -Small key speed test - 20-byte keys - 60.00 cycles/hash -Small key speed test - 21-byte keys - 60.00 cycles/hash -Small key speed test - 22-byte keys - 60.00 cycles/hash -Small key speed test - 23-byte keys - 60.00 cycles/hash -Small key speed test - 24-byte keys - 59.00 cycles/hash -Small key speed test - 25-byte keys - 59.00 cycles/hash -Small key speed test - 26-byte keys - 59.00 cycles/hash -Small key speed test - 27-byte keys - 59.00 cycles/hash -Small key speed test - 28-byte keys - 59.00 cycles/hash -Small key speed test - 29-byte keys - 59.00 cycles/hash -Small key speed test - 30-byte keys - 59.00 cycles/hash -Small key speed test - 31-byte keys - 59.23 cycles/hash -Average 53.975 cycles/hash +Alignment 7 - 4.833 bytes/cycle - 13826.40 MiB/sec @ 3 ghz +Alignment 6 - 4.848 bytes/cycle - 13870.48 MiB/sec @ 3 ghz +Alignment 5 - 4.848 bytes/cycle - 13869.76 MiB/sec @ 3 ghz +Alignment 4 - 4.856 bytes/cycle - 13892.56 MiB/sec @ 3 ghz +Alignment 3 - 4.848 bytes/cycle - 13870.24 MiB/sec @ 3 ghz +Alignment 2 - 4.841 bytes/cycle - 13850.16 MiB/sec @ 3 ghz +Alignment 1 - 4.838 bytes/cycle - 13842.01 MiB/sec @ 3 ghz +Alignment 0 - 4.922 bytes/cycle - 14081.08 MiB/sec @ 3 ghz +Average - 4.854 bytes/cycle - 13887.84 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 40.00 cycles/hash +Small key speed test - 2-byte keys - 40.00 cycles/hash +Small key speed test - 3-byte keys - 40.00 cycles/hash +Small key speed test - 4-byte keys - 42.93 cycles/hash +Small key speed test - 5-byte keys - 42.93 cycles/hash +Small key speed test - 6-byte keys - 42.93 cycles/hash +Small key speed test - 7-byte keys - 42.93 cycles/hash +Small key speed test - 8-byte keys - 42.93 cycles/hash +Small key speed test - 9-byte keys - 44.79 cycles/hash +Small key speed test - 10-byte keys - 44.83 cycles/hash +Small key speed test - 11-byte keys - 44.79 cycles/hash +Small key speed test - 12-byte keys - 44.85 cycles/hash +Small key speed test - 13-byte keys - 44.85 cycles/hash +Small key speed test - 14-byte keys - 44.82 cycles/hash +Small key speed test - 15-byte keys - 44.90 cycles/hash +Small key speed test - 16-byte keys - 44.78 cycles/hash +Small key speed test - 17-byte keys - 49.00 cycles/hash +Small key speed test - 18-byte keys - 49.00 cycles/hash +Small key speed test - 19-byte keys - 49.00 cycles/hash +Small key speed test - 20-byte keys - 49.00 cycles/hash +Small key speed test - 21-byte keys - 49.99 cycles/hash +Small key speed test - 22-byte keys - 49.99 cycles/hash +Small key speed test - 23-byte keys - 49.99 cycles/hash +Small key speed test - 24-byte keys - 49.33 cycles/hash +Small key speed test - 25-byte keys - 49.90 cycles/hash +Small key speed test - 26-byte keys - 49.93 cycles/hash +Small key speed test - 27-byte keys - 49.90 cycles/hash +Small key speed test - 28-byte keys - 49.44 cycles/hash +Small key speed test - 29-byte keys - 49.42 cycles/hash +Small key speed test - 30-byte keys - 49.41 cycles/hash +Small key speed test - 31-byte keys - 49.43 cycles/hash +Average 46.322 cycles/hash [[[ 'Hashmap' Speed Tests (when inlined) ]]] diff --git a/doc/City64low.txt b/doc/City64low.txt index f7f9d688..36ae00a7 100644 --- a/doc/City64low.txt +++ b/doc/City64low.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 3.186 bytes/cycle - 9114.18 MiB/sec @ 3 ghz -Alignment 6 - 3.192 bytes/cycle - 9131.62 MiB/sec @ 3 ghz -Alignment 5 - 3.183 bytes/cycle - 9106.83 MiB/sec @ 3 ghz -Alignment 4 - 3.184 bytes/cycle - 9108.11 MiB/sec @ 3 ghz -Alignment 3 - 3.191 bytes/cycle - 9130.86 MiB/sec @ 3 ghz -Alignment 2 - 3.187 bytes/cycle - 9118.58 MiB/sec @ 3 ghz -Alignment 1 - 3.192 bytes/cycle - 9131.67 MiB/sec @ 3 ghz -Alignment 0 - 3.315 bytes/cycle - 9483.73 MiB/sec @ 3 ghz -Average - 3.204 bytes/cycle - 9165.70 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 38.59 cycles/hash -Small key speed test - 2-byte keys - 38.56 cycles/hash -Small key speed test - 3-byte keys - 38.56 cycles/hash -Small key speed test - 4-byte keys - 42.00 cycles/hash -Small key speed test - 5-byte keys - 51.89 cycles/hash -Small key speed test - 6-byte keys - 51.89 cycles/hash -Small key speed test - 7-byte keys - 51.89 cycles/hash -Small key speed test - 8-byte keys - 42.00 cycles/hash -Small key speed test - 9-byte keys - 54.00 cycles/hash -Small key speed test - 10-byte keys - 54.00 cycles/hash -Small key speed test - 11-byte keys - 54.00 cycles/hash -Small key speed test - 12-byte keys - 52.27 cycles/hash -Small key speed test - 13-byte keys - 52.16 cycles/hash -Small key speed test - 14-byte keys - 52.00 cycles/hash -Small key speed test - 15-byte keys - 52.17 cycles/hash -Small key speed test - 16-byte keys - 52.27 cycles/hash -Small key speed test - 17-byte keys - 60.00 cycles/hash -Small key speed test - 18-byte keys - 60.00 cycles/hash -Small key speed test - 19-byte keys - 60.00 cycles/hash -Small key speed test - 20-byte keys - 60.00 cycles/hash -Small key speed test - 21-byte keys - 60.00 cycles/hash -Small key speed test - 22-byte keys - 60.00 cycles/hash -Small key speed test - 23-byte keys - 60.00 cycles/hash -Small key speed test - 24-byte keys - 60.00 cycles/hash -Small key speed test - 25-byte keys - 60.00 cycles/hash -Small key speed test - 26-byte keys - 60.00 cycles/hash -Small key speed test - 27-byte keys - 60.00 cycles/hash -Small key speed test - 28-byte keys - 60.00 cycles/hash -Small key speed test - 29-byte keys - 60.00 cycles/hash -Small key speed test - 30-byte keys - 60.00 cycles/hash -Small key speed test - 31-byte keys - 60.00 cycles/hash -Average 54.137 cycles/hash +Alignment 7 - 4.850 bytes/cycle - 13875.59 MiB/sec @ 3 ghz +Alignment 6 - 4.850 bytes/cycle - 13875.59 MiB/sec @ 3 ghz +Alignment 5 - 4.850 bytes/cycle - 13876.08 MiB/sec @ 3 ghz +Alignment 4 - 4.857 bytes/cycle - 13896.88 MiB/sec @ 3 ghz +Alignment 3 - 4.849 bytes/cycle - 13874.24 MiB/sec @ 3 ghz +Alignment 2 - 4.850 bytes/cycle - 13876.30 MiB/sec @ 3 ghz +Alignment 1 - 4.850 bytes/cycle - 13875.80 MiB/sec @ 3 ghz +Alignment 0 - 4.922 bytes/cycle - 14082.29 MiB/sec @ 3 ghz +Average - 4.860 bytes/cycle - 13904.10 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 39.98 cycles/hash +Small key speed test - 2-byte keys - 39.97 cycles/hash +Small key speed test - 3-byte keys - 39.96 cycles/hash +Small key speed test - 4-byte keys - 43.00 cycles/hash +Small key speed test - 5-byte keys - 43.00 cycles/hash +Small key speed test - 6-byte keys - 43.00 cycles/hash +Small key speed test - 7-byte keys - 43.00 cycles/hash +Small key speed test - 8-byte keys - 43.00 cycles/hash +Small key speed test - 9-byte keys - 44.65 cycles/hash +Small key speed test - 10-byte keys - 44.89 cycles/hash +Small key speed test - 11-byte keys - 44.58 cycles/hash +Small key speed test - 12-byte keys - 44.80 cycles/hash +Small key speed test - 13-byte keys - 44.49 cycles/hash +Small key speed test - 14-byte keys - 44.61 cycles/hash +Small key speed test - 15-byte keys - 44.49 cycles/hash +Small key speed test - 16-byte keys - 44.93 cycles/hash +Small key speed test - 17-byte keys - 49.00 cycles/hash +Small key speed test - 18-byte keys - 49.00 cycles/hash +Small key speed test - 19-byte keys - 49.00 cycles/hash +Small key speed test - 20-byte keys - 49.00 cycles/hash +Small key speed test - 21-byte keys - 49.95 cycles/hash +Small key speed test - 22-byte keys - 49.95 cycles/hash +Small key speed test - 23-byte keys - 49.96 cycles/hash +Small key speed test - 24-byte keys - 49.12 cycles/hash +Small key speed test - 25-byte keys - 49.81 cycles/hash +Small key speed test - 26-byte keys - 49.79 cycles/hash +Small key speed test - 27-byte keys - 49.71 cycles/hash +Small key speed test - 28-byte keys - 49.00 cycles/hash +Small key speed test - 29-byte keys - 49.34 cycles/hash +Small key speed test - 30-byte keys - 49.32 cycles/hash +Small key speed test - 31-byte keys - 49.27 cycles/hash +Average 46.244 cycles/hash [[[ 'Hashmap' Speed Tests (when inlined) ]]] diff --git a/doc/City64noSeed.txt b/doc/City64noSeed.txt index 77809c00..d9ade18f 100644 --- a/doc/City64noSeed.txt +++ b/doc/City64noSeed.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 3.162 bytes/cycle - 9047.45 MiB/sec @ 3 ghz -Alignment 6 - 3.160 bytes/cycle - 9039.63 MiB/sec @ 3 ghz -Alignment 5 - 3.163 bytes/cycle - 9049.42 MiB/sec @ 3 ghz -Alignment 4 - 3.159 bytes/cycle - 9038.93 MiB/sec @ 3 ghz -Alignment 3 - 3.162 bytes/cycle - 9047.18 MiB/sec @ 3 ghz -Alignment 2 - 3.162 bytes/cycle - 9046.32 MiB/sec @ 3 ghz -Alignment 1 - 3.163 bytes/cycle - 9048.65 MiB/sec @ 3 ghz -Alignment 0 - 3.289 bytes/cycle - 9409.24 MiB/sec @ 3 ghz -Average - 3.177 bytes/cycle - 9090.85 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 23.00 cycles/hash -Small key speed test - 2-byte keys - 23.00 cycles/hash -Small key speed test - 3-byte keys - 23.00 cycles/hash -Small key speed test - 4-byte keys - 26.00 cycles/hash -Small key speed test - 5-byte keys - 36.00 cycles/hash -Small key speed test - 6-byte keys - 36.00 cycles/hash -Small key speed test - 7-byte keys - 36.00 cycles/hash -Small key speed test - 8-byte keys - 26.00 cycles/hash -Small key speed test - 9-byte keys - 39.00 cycles/hash -Small key speed test - 10-byte keys - 39.00 cycles/hash -Small key speed test - 11-byte keys - 39.00 cycles/hash -Small key speed test - 12-byte keys - 37.00 cycles/hash -Small key speed test - 13-byte keys - 37.00 cycles/hash -Small key speed test - 14-byte keys - 37.00 cycles/hash -Small key speed test - 15-byte keys - 37.00 cycles/hash -Small key speed test - 16-byte keys - 37.00 cycles/hash -Small key speed test - 17-byte keys - 44.81 cycles/hash -Small key speed test - 18-byte keys - 44.81 cycles/hash -Small key speed test - 19-byte keys - 44.81 cycles/hash -Small key speed test - 20-byte keys - 44.00 cycles/hash -Small key speed test - 21-byte keys - 44.00 cycles/hash -Small key speed test - 22-byte keys - 44.00 cycles/hash -Small key speed test - 23-byte keys - 44.00 cycles/hash -Small key speed test - 24-byte keys - 44.00 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.00 cycles/hash -Small key speed test - 28-byte keys - 44.00 cycles/hash -Small key speed test - 29-byte keys - 44.00 cycles/hash -Small key speed test - 30-byte keys - 44.00 cycles/hash -Small key speed test - 31-byte keys - 44.00 cycles/hash -Average 38.498 cycles/hash +Alignment 7 - 4.991 bytes/cycle - 14278.96 MiB/sec @ 3 ghz +Alignment 6 - 4.997 bytes/cycle - 14297.85 MiB/sec @ 3 ghz +Alignment 5 - 4.995 bytes/cycle - 14290.80 MiB/sec @ 3 ghz +Alignment 4 - 5.006 bytes/cycle - 14321.43 MiB/sec @ 3 ghz +Alignment 3 - 4.920 bytes/cycle - 14077.47 MiB/sec @ 3 ghz +Alignment 2 - 4.911 bytes/cycle - 14049.31 MiB/sec @ 3 ghz +Alignment 1 - 4.918 bytes/cycle - 14071.70 MiB/sec @ 3 ghz +Alignment 0 - 4.993 bytes/cycle - 14286.03 MiB/sec @ 3 ghz +Average - 4.966 bytes/cycle - 14209.19 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 25.00 cycles/hash +Small key speed test - 2-byte keys - 25.00 cycles/hash +Small key speed test - 3-byte keys - 25.00 cycles/hash +Small key speed test - 4-byte keys - 28.00 cycles/hash +Small key speed test - 5-byte keys - 28.00 cycles/hash +Small key speed test - 6-byte keys - 28.00 cycles/hash +Small key speed test - 7-byte keys - 28.00 cycles/hash +Small key speed test - 8-byte keys - 28.00 cycles/hash +Small key speed test - 9-byte keys - 29.98 cycles/hash +Small key speed test - 10-byte keys - 30.00 cycles/hash +Small key speed test - 11-byte keys - 30.00 cycles/hash +Small key speed test - 12-byte keys - 30.00 cycles/hash +Small key speed test - 13-byte keys - 30.00 cycles/hash +Small key speed test - 14-byte keys - 30.00 cycles/hash +Small key speed test - 15-byte keys - 30.00 cycles/hash +Small key speed test - 16-byte keys - 30.00 cycles/hash +Small key speed test - 17-byte keys - 35.00 cycles/hash +Small key speed test - 18-byte keys - 35.00 cycles/hash +Small key speed test - 19-byte keys - 35.00 cycles/hash +Small key speed test - 20-byte keys - 35.00 cycles/hash +Small key speed test - 21-byte keys - 36.00 cycles/hash +Small key speed test - 22-byte keys - 36.00 cycles/hash +Small key speed test - 23-byte keys - 36.00 cycles/hash +Small key speed test - 24-byte keys - 35.27 cycles/hash +Small key speed test - 25-byte keys - 35.68 cycles/hash +Small key speed test - 26-byte keys - 35.68 cycles/hash +Small key speed test - 27-byte keys - 35.56 cycles/hash +Small key speed test - 28-byte keys - 35.16 cycles/hash +Small key speed test - 29-byte keys - 35.16 cycles/hash +Small key speed test - 30-byte keys - 35.21 cycles/hash +Small key speed test - 31-byte keys - 35.14 cycles/hash +Average 31.801 cycles/hash [[[ 'Hashmap' Speed Tests (when inlined) ]]] diff --git a/doc/CityCrc128.txt b/doc/CityCrc128.txt index f67b010a..26bc197f 100644 --- a/doc/CityCrc128.txt +++ b/doc/CityCrc128.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 4.308 bytes/cycle - 12325.80 MiB/sec @ 3 ghz -Alignment 6 - 4.307 bytes/cycle - 12323.26 MiB/sec @ 3 ghz -Alignment 5 - 4.307 bytes/cycle - 12322.77 MiB/sec @ 3 ghz -Alignment 4 - 4.313 bytes/cycle - 12339.16 MiB/sec @ 3 ghz -Alignment 3 - 4.308 bytes/cycle - 12325.14 MiB/sec @ 3 ghz -Alignment 2 - 4.307 bytes/cycle - 12322.75 MiB/sec @ 3 ghz -Alignment 1 - 4.307 bytes/cycle - 12322.93 MiB/sec @ 3 ghz -Alignment 0 - 4.399 bytes/cycle - 12585.56 MiB/sec @ 3 ghz -Average - 4.320 bytes/cycle - 12358.42 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 62.47 cycles/hash -Small key speed test - 2-byte keys - 62.54 cycles/hash -Small key speed test - 3-byte keys - 62.53 cycles/hash -Small key speed test - 4-byte keys - 65.00 cycles/hash -Small key speed test - 5-byte keys - 74.00 cycles/hash -Small key speed test - 6-byte keys - 74.00 cycles/hash -Small key speed test - 7-byte keys - 74.00 cycles/hash -Small key speed test - 8-byte keys - 62.00 cycles/hash -Small key speed test - 9-byte keys - 73.00 cycles/hash -Small key speed test - 10-byte keys - 73.00 cycles/hash -Small key speed test - 11-byte keys - 73.00 cycles/hash -Small key speed test - 12-byte keys - 71.00 cycles/hash -Small key speed test - 13-byte keys - 71.00 cycles/hash -Small key speed test - 14-byte keys - 71.00 cycles/hash -Small key speed test - 15-byte keys - 71.00 cycles/hash -Small key speed test - 16-byte keys - 71.00 cycles/hash -Small key speed test - 17-byte keys - 81.00 cycles/hash -Small key speed test - 18-byte keys - 81.00 cycles/hash -Small key speed test - 19-byte keys - 81.00 cycles/hash -Small key speed test - 20-byte keys - 81.00 cycles/hash -Small key speed test - 21-byte keys - 81.00 cycles/hash -Small key speed test - 22-byte keys - 81.00 cycles/hash -Small key speed test - 23-byte keys - 81.00 cycles/hash -Small key speed test - 24-byte keys - 81.00 cycles/hash -Small key speed test - 25-byte keys - 81.00 cycles/hash -Small key speed test - 26-byte keys - 81.00 cycles/hash -Small key speed test - 27-byte keys - 81.00 cycles/hash -Small key speed test - 28-byte keys - 81.00 cycles/hash -Small key speed test - 29-byte keys - 81.00 cycles/hash -Small key speed test - 30-byte keys - 81.00 cycles/hash -Small key speed test - 31-byte keys - 81.00 cycles/hash -Average 75.018 cycles/hash +Alignment 7 - 2.766 bytes/cycle - 7913.57 MiB/sec @ 3 ghz +Alignment 6 - 2.767 bytes/cycle - 7917.07 MiB/sec @ 3 ghz +Alignment 5 - 2.766 bytes/cycle - 7914.71 MiB/sec @ 3 ghz +Alignment 4 - 2.768 bytes/cycle - 7919.12 MiB/sec @ 3 ghz +Alignment 3 - 2.766 bytes/cycle - 7914.71 MiB/sec @ 3 ghz +Alignment 2 - 2.767 bytes/cycle - 7917.53 MiB/sec @ 3 ghz +Alignment 1 - 2.766 bytes/cycle - 7914.69 MiB/sec @ 3 ghz +Alignment 0 - 2.768 bytes/cycle - 7920.14 MiB/sec @ 3 ghz +Average - 2.767 bytes/cycle - 7916.44 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 45.27 cycles/hash +Small key speed test - 2-byte keys - 45.28 cycles/hash +Small key speed test - 3-byte keys - 45.25 cycles/hash +Small key speed test - 4-byte keys - 48.51 cycles/hash +Small key speed test - 5-byte keys - 48.00 cycles/hash +Small key speed test - 6-byte keys - 48.47 cycles/hash +Small key speed test - 7-byte keys - 48.45 cycles/hash +Small key speed test - 8-byte keys - 45.00 cycles/hash +Small key speed test - 9-byte keys - 47.00 cycles/hash +Small key speed test - 10-byte keys - 47.00 cycles/hash +Small key speed test - 11-byte keys - 47.00 cycles/hash +Small key speed test - 12-byte keys - 47.00 cycles/hash +Small key speed test - 13-byte keys - 47.00 cycles/hash +Small key speed test - 14-byte keys - 47.00 cycles/hash +Small key speed test - 15-byte keys - 47.00 cycles/hash +Small key speed test - 16-byte keys - 47.00 cycles/hash +Small key speed test - 17-byte keys - 63.99 cycles/hash +Small key speed test - 18-byte keys - 63.94 cycles/hash +Small key speed test - 19-byte keys - 63.94 cycles/hash +Small key speed test - 20-byte keys - 63.96 cycles/hash +Small key speed test - 21-byte keys - 64.98 cycles/hash +Small key speed test - 22-byte keys - 64.98 cycles/hash +Small key speed test - 23-byte keys - 64.98 cycles/hash +Small key speed test - 24-byte keys - 64.48 cycles/hash +Small key speed test - 25-byte keys - 64.78 cycles/hash +Small key speed test - 26-byte keys - 64.76 cycles/hash +Small key speed test - 27-byte keys - 64.78 cycles/hash +Small key speed test - 28-byte keys - 65.30 cycles/hash +Small key speed test - 29-byte keys - 65.29 cycles/hash +Small key speed test - 30-byte keys - 65.00 cycles/hash +Small key speed test - 31-byte keys - 65.00 cycles/hash +Average 55.497 cycles/hash [[[ 'Hashmap' Speed Tests (when inlined) ]]] diff --git a/doc/Crap8.txt b/doc/Crap8.txt index b04a6a2e..f1505ac4 100644 --- a/doc/Crap8.txt +++ b/doc/Crap8.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 1.099 bytes/cycle - 3143.70 MiB/sec @ 3 ghz -Alignment 6 - 1.099 bytes/cycle - 3143.71 MiB/sec @ 3 ghz -Alignment 5 - 1.099 bytes/cycle - 3143.69 MiB/sec @ 3 ghz -Alignment 4 - 1.107 bytes/cycle - 3166.16 MiB/sec @ 3 ghz -Alignment 3 - 1.099 bytes/cycle - 3143.72 MiB/sec @ 3 ghz -Alignment 2 - 1.099 bytes/cycle - 3143.73 MiB/sec @ 3 ghz -Alignment 1 - 1.099 bytes/cycle - 3143.72 MiB/sec @ 3 ghz -Alignment 0 - 1.107 bytes/cycle - 3166.41 MiB/sec @ 3 ghz -Average - 1.101 bytes/cycle - 3149.35 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 22.00 cycles/hash -Small key speed test - 2-byte keys - 22.00 cycles/hash -Small key speed test - 3-byte keys - 22.00 cycles/hash -Small key speed test - 4-byte keys - 21.00 cycles/hash -Small key speed test - 5-byte keys - 24.84 cycles/hash -Small key speed test - 6-byte keys - 24.84 cycles/hash -Small key speed test - 7-byte keys - 24.83 cycles/hash -Small key speed test - 8-byte keys - 25.70 cycles/hash -Small key speed test - 9-byte keys - 29.00 cycles/hash -Small key speed test - 10-byte keys - 29.00 cycles/hash -Small key speed test - 11-byte keys - 29.00 cycles/hash -Small key speed test - 12-byte keys - 29.00 cycles/hash -Small key speed test - 13-byte keys - 33.00 cycles/hash -Small key speed test - 14-byte keys - 33.00 cycles/hash -Small key speed test - 15-byte keys - 33.00 cycles/hash -Small key speed test - 16-byte keys - 33.00 cycles/hash -Small key speed test - 17-byte keys - 36.00 cycles/hash -Small key speed test - 18-byte keys - 36.00 cycles/hash -Small key speed test - 19-byte keys - 36.00 cycles/hash -Small key speed test - 20-byte keys - 36.00 cycles/hash -Small key speed test - 21-byte keys - 40.00 cycles/hash -Small key speed test - 22-byte keys - 40.00 cycles/hash -Small key speed test - 23-byte keys - 40.00 cycles/hash -Small key speed test - 24-byte keys - 40.00 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.00 cycles/hash -Small key speed test - 28-byte keys - 44.00 cycles/hash -Small key speed test - 29-byte keys - 47.58 cycles/hash -Small key speed test - 30-byte keys - 47.52 cycles/hash -Small key speed test - 31-byte keys - 47.49 cycles/hash -Average 34.122 cycles/hash +Alignment 7 - 1.063 bytes/cycle - 3040.93 MiB/sec @ 3 ghz +Alignment 6 - 1.063 bytes/cycle - 3041.15 MiB/sec @ 3 ghz +Alignment 5 - 1.063 bytes/cycle - 3040.90 MiB/sec @ 3 ghz +Alignment 4 - 1.063 bytes/cycle - 3040.71 MiB/sec @ 3 ghz +Alignment 3 - 1.063 bytes/cycle - 3041.47 MiB/sec @ 3 ghz +Alignment 2 - 1.063 bytes/cycle - 3041.18 MiB/sec @ 3 ghz +Alignment 1 - 1.063 bytes/cycle - 3041.31 MiB/sec @ 3 ghz +Alignment 0 - 1.063 bytes/cycle - 3041.49 MiB/sec @ 3 ghz +Average - 1.063 bytes/cycle - 3041.14 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 25.00 cycles/hash +Small key speed test - 2-byte keys - 25.00 cycles/hash +Small key speed test - 3-byte keys - 25.00 cycles/hash +Small key speed test - 4-byte keys - 24.00 cycles/hash +Small key speed test - 5-byte keys - 28.00 cycles/hash +Small key speed test - 6-byte keys - 28.00 cycles/hash +Small key speed test - 7-byte keys - 28.00 cycles/hash +Small key speed test - 8-byte keys - 28.00 cycles/hash +Small key speed test - 9-byte keys - 32.00 cycles/hash +Small key speed test - 10-byte keys - 32.00 cycles/hash +Small key speed test - 11-byte keys - 32.00 cycles/hash +Small key speed test - 12-byte keys - 32.00 cycles/hash +Small key speed test - 13-byte keys - 36.00 cycles/hash +Small key speed test - 14-byte keys - 36.00 cycles/hash +Small key speed test - 15-byte keys - 36.00 cycles/hash +Small key speed test - 16-byte keys - 36.00 cycles/hash +Small key speed test - 17-byte keys - 39.95 cycles/hash +Small key speed test - 18-byte keys - 39.93 cycles/hash +Small key speed test - 19-byte keys - 39.92 cycles/hash +Small key speed test - 20-byte keys - 39.54 cycles/hash +Small key speed test - 21-byte keys - 43.00 cycles/hash +Small key speed test - 22-byte keys - 43.00 cycles/hash +Small key speed test - 23-byte keys - 43.00 cycles/hash +Small key speed test - 24-byte keys - 43.00 cycles/hash +Small key speed test - 25-byte keys - 47.33 cycles/hash +Small key speed test - 26-byte keys - 47.20 cycles/hash +Small key speed test - 27-byte keys - 47.23 cycles/hash +Small key speed test - 28-byte keys - 47.00 cycles/hash +Small key speed test - 29-byte keys - 50.49 cycles/hash +Small key speed test - 30-byte keys - 50.52 cycles/hash +Small key speed test - 31-byte keys - 50.52 cycles/hash +Average 37.246 cycles/hash [[[ 'Hashmap' Speed Tests (when inlined) ]]] diff --git a/doc/FNV128.txt b/doc/FNV128.txt index 8a6ed2fd..8100dab5 100644 --- a/doc/FNV128.txt +++ b/doc/FNV128.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 0.136 bytes/cycle - 389.72 MiB/sec @ 3 ghz -Alignment 6 - 0.136 bytes/cycle - 388.00 MiB/sec @ 3 ghz -Alignment 5 - 0.135 bytes/cycle - 387.60 MiB/sec @ 3 ghz -Alignment 4 - 0.135 bytes/cycle - 387.34 MiB/sec @ 3 ghz -Alignment 3 - 0.135 bytes/cycle - 387.64 MiB/sec @ 3 ghz -Alignment 2 - 0.136 bytes/cycle - 389.06 MiB/sec @ 3 ghz -Alignment 1 - 0.136 bytes/cycle - 389.64 MiB/sec @ 3 ghz -Alignment 0 - 0.136 bytes/cycle - 390.07 MiB/sec @ 3 ghz -Average - 0.136 bytes/cycle - 388.63 MiB/sec @ 3 ghz +Alignment 7 - 0.136 bytes/cycle - 390.16 MiB/sec @ 3 ghz +Alignment 6 - 0.136 bytes/cycle - 390.19 MiB/sec @ 3 ghz +Alignment 5 - 0.136 bytes/cycle - 389.59 MiB/sec @ 3 ghz +Alignment 4 - 0.136 bytes/cycle - 389.91 MiB/sec @ 3 ghz +Alignment 3 - 0.136 bytes/cycle - 390.23 MiB/sec @ 3 ghz +Alignment 2 - 0.136 bytes/cycle - 390.05 MiB/sec @ 3 ghz +Alignment 1 - 0.137 bytes/cycle - 390.62 MiB/sec @ 3 ghz +Alignment 0 - 0.136 bytes/cycle - 390.37 MiB/sec @ 3 ghz +Average - 0.136 bytes/cycle - 390.14 MiB/sec @ 3 ghz Small key speed test - 1-byte keys - 19.00 cycles/hash -Small key speed test - 2-byte keys - 28.00 cycles/hash +Small key speed test - 2-byte keys - 27.91 cycles/hash Small key speed test - 3-byte keys - 36.00 cycles/hash -Small key speed test - 4-byte keys - 43.24 cycles/hash -Small key speed test - 5-byte keys - 52.00 cycles/hash -Small key speed test - 6-byte keys - 59.00 cycles/hash -Small key speed test - 7-byte keys - 66.66 cycles/hash -Small key speed test - 8-byte keys - 74.78 cycles/hash -Small key speed test - 9-byte keys - 82.00 cycles/hash -Small key speed test - 10-byte keys - 90.00 cycles/hash -Small key speed test - 11-byte keys - 98.75 cycles/hash -Small key speed test - 12-byte keys - 105.66 cycles/hash -Small key speed test - 13-byte keys - 113.70 cycles/hash -Small key speed test - 14-byte keys - 121.83 cycles/hash -Small key speed test - 15-byte keys - 129.76 cycles/hash -Small key speed test - 16-byte keys - 137.70 cycles/hash -Small key speed test - 17-byte keys - 144.73 cycles/hash -Small key speed test - 18-byte keys - 153.83 cycles/hash -Small key speed test - 19-byte keys - 161.10 cycles/hash -Small key speed test - 20-byte keys - 168.65 cycles/hash -Small key speed test - 21-byte keys - 176.84 cycles/hash -Small key speed test - 22-byte keys - 184.84 cycles/hash -Small key speed test - 23-byte keys - 192.74 cycles/hash -Small key speed test - 24-byte keys - 200.37 cycles/hash -Small key speed test - 25-byte keys - 207.73 cycles/hash -Small key speed test - 26-byte keys - 215.78 cycles/hash -Small key speed test - 27-byte keys - 224.38 cycles/hash -Small key speed test - 28-byte keys - 239.36 cycles/hash -Small key speed test - 29-byte keys - 247.38 cycles/hash -Small key speed test - 30-byte keys - 248.26 cycles/hash -Small key speed test - 31-byte keys - 254.67 cycles/hash -Average 138.023 cycles/hash +Small key speed test - 4-byte keys - 43.00 cycles/hash +Small key speed test - 5-byte keys - 51.99 cycles/hash +Small key speed test - 6-byte keys - 58.99 cycles/hash +Small key speed test - 7-byte keys - 66.27 cycles/hash +Small key speed test - 8-byte keys - 74.61 cycles/hash +Small key speed test - 9-byte keys - 81.00 cycles/hash +Small key speed test - 10-byte keys - 89.00 cycles/hash +Small key speed test - 11-byte keys - 94.59 cycles/hash +Small key speed test - 12-byte keys - 104.63 cycles/hash +Small key speed test - 13-byte keys - 113.30 cycles/hash +Small key speed test - 14-byte keys - 121.52 cycles/hash +Small key speed test - 15-byte keys - 129.58 cycles/hash +Small key speed test - 16-byte keys - 133.64 cycles/hash +Small key speed test - 17-byte keys - 145.43 cycles/hash +Small key speed test - 18-byte keys - 148.58 cycles/hash +Small key speed test - 19-byte keys - 155.20 cycles/hash +Small key speed test - 20-byte keys - 169.54 cycles/hash +Small key speed test - 21-byte keys - 176.14 cycles/hash +Small key speed test - 22-byte keys - 184.56 cycles/hash +Small key speed test - 23-byte keys - 192.50 cycles/hash +Small key speed test - 24-byte keys - 200.53 cycles/hash +Small key speed test - 25-byte keys - 207.53 cycles/hash +Small key speed test - 26-byte keys - 215.87 cycles/hash +Small key speed test - 27-byte keys - 223.58 cycles/hash +Small key speed test - 28-byte keys - 230.63 cycles/hash +Small key speed test - 29-byte keys - 242.96 cycles/hash +Small key speed test - 30-byte keys - 236.46 cycles/hash +Small key speed test - 31-byte keys - 254.50 cycles/hash +Average 136.421 cycles/hash [[[ 'Hashmap' Speed Tests ]]] diff --git a/doc/FNV1A_Pippip_Yurii.txt b/doc/FNV1A_Pippip_Yurii.txt index f869978e..44621ddc 100644 --- a/doc/FNV1A_Pippip_Yurii.txt +++ b/doc/FNV1A_Pippip_Yurii.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 2.184 bytes/cycle - 6248.33 MiB/sec @ 3 ghz -Alignment 6 - 2.184 bytes/cycle - 6248.35 MiB/sec @ 3 ghz -Alignment 5 - 2.184 bytes/cycle - 6248.35 MiB/sec @ 3 ghz -Alignment 4 - 2.184 bytes/cycle - 6248.35 MiB/sec @ 3 ghz -Alignment 3 - 2.184 bytes/cycle - 6248.33 MiB/sec @ 3 ghz -Alignment 2 - 2.184 bytes/cycle - 6248.36 MiB/sec @ 3 ghz -Alignment 1 - 2.184 bytes/cycle - 6248.34 MiB/sec @ 3 ghz -Alignment 0 - 2.213 bytes/cycle - 6330.72 MiB/sec @ 3 ghz -Average - 2.188 bytes/cycle - 6258.64 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 32.00 cycles/hash -Small key speed test - 2-byte keys - 32.00 cycles/hash -Small key speed test - 3-byte keys - 32.00 cycles/hash -Small key speed test - 4-byte keys - 32.00 cycles/hash -Small key speed test - 5-byte keys - 32.00 cycles/hash -Small key speed test - 6-byte keys - 32.00 cycles/hash -Small key speed test - 7-byte keys - 32.00 cycles/hash -Small key speed test - 8-byte keys - 32.00 cycles/hash -Small key speed test - 9-byte keys - 34.00 cycles/hash -Small key speed test - 10-byte keys - 34.00 cycles/hash -Small key speed test - 11-byte keys - 34.00 cycles/hash -Small key speed test - 12-byte keys - 34.00 cycles/hash -Small key speed test - 13-byte keys - 34.00 cycles/hash -Small key speed test - 14-byte keys - 34.00 cycles/hash -Small key speed test - 15-byte keys - 34.00 cycles/hash -Small key speed test - 16-byte keys - 34.00 cycles/hash -Small key speed test - 17-byte keys - 41.00 cycles/hash -Small key speed test - 18-byte keys - 41.00 cycles/hash -Small key speed test - 19-byte keys - 41.00 cycles/hash -Small key speed test - 20-byte keys - 41.00 cycles/hash -Small key speed test - 21-byte keys - 41.00 cycles/hash -Small key speed test - 22-byte keys - 41.00 cycles/hash -Small key speed test - 23-byte keys - 41.00 cycles/hash -Small key speed test - 24-byte keys - 41.00 cycles/hash -Small key speed test - 25-byte keys - 41.00 cycles/hash -Small key speed test - 26-byte keys - 41.00 cycles/hash -Small key speed test - 27-byte keys - 41.00 cycles/hash -Small key speed test - 28-byte keys - 41.00 cycles/hash -Small key speed test - 29-byte keys - 41.00 cycles/hash -Small key speed test - 30-byte keys - 41.00 cycles/hash -Small key speed test - 31-byte keys - 41.00 cycles/hash -Average 36.871 cycles/hash +Alignment 7 - 2.157 bytes/cycle - 6172.61 MiB/sec @ 3 ghz +Alignment 6 - 2.158 bytes/cycle - 6174.71 MiB/sec @ 3 ghz +Alignment 5 - 2.158 bytes/cycle - 6173.24 MiB/sec @ 3 ghz +Alignment 4 - 2.156 bytes/cycle - 6166.98 MiB/sec @ 3 ghz +Alignment 3 - 2.158 bytes/cycle - 6175.41 MiB/sec @ 3 ghz +Alignment 2 - 2.156 bytes/cycle - 6169.29 MiB/sec @ 3 ghz +Alignment 1 - 2.158 bytes/cycle - 6174.42 MiB/sec @ 3 ghz +Alignment 0 - 2.157 bytes/cycle - 6170.46 MiB/sec @ 3 ghz +Average - 2.157 bytes/cycle - 6172.14 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 22.63 cycles/hash +Small key speed test - 2-byte keys - 22.55 cycles/hash +Small key speed test - 3-byte keys - 22.49 cycles/hash +Small key speed test - 4-byte keys - 22.58 cycles/hash +Small key speed test - 5-byte keys - 22.00 cycles/hash +Small key speed test - 6-byte keys - 22.51 cycles/hash +Small key speed test - 7-byte keys - 22.30 cycles/hash +Small key speed test - 8-byte keys - 22.31 cycles/hash +Small key speed test - 9-byte keys - 24.44 cycles/hash +Small key speed test - 10-byte keys - 24.43 cycles/hash +Small key speed test - 11-byte keys - 24.44 cycles/hash +Small key speed test - 12-byte keys - 24.00 cycles/hash +Small key speed test - 13-byte keys - 24.49 cycles/hash +Small key speed test - 14-byte keys - 24.00 cycles/hash +Small key speed test - 15-byte keys - 24.45 cycles/hash +Small key speed test - 16-byte keys - 24.41 cycles/hash +Small key speed test - 17-byte keys - 32.00 cycles/hash +Small key speed test - 18-byte keys - 32.00 cycles/hash +Small key speed test - 19-byte keys - 32.00 cycles/hash +Small key speed test - 20-byte keys - 32.00 cycles/hash +Small key speed test - 21-byte keys - 32.00 cycles/hash +Small key speed test - 22-byte keys - 32.00 cycles/hash +Small key speed test - 23-byte keys - 32.00 cycles/hash +Small key speed test - 24-byte keys - 32.00 cycles/hash +Small key speed test - 25-byte keys - 32.00 cycles/hash +Small key speed test - 26-byte keys - 32.00 cycles/hash +Small key speed test - 27-byte keys - 32.00 cycles/hash +Small key speed test - 28-byte keys - 32.00 cycles/hash +Small key speed test - 29-byte keys - 32.00 cycles/hash +Small key speed test - 30-byte keys - 32.00 cycles/hash +Small key speed test - 31-byte keys - 32.00 cycles/hash +Average 27.549 cycles/hash [[[ 'Hashmap' Speed Tests (when inlined) ]]] diff --git a/doc/FNV1A_Totenschiff.txt b/doc/FNV1A_Totenschiff.txt index 46502a95..229db8ec 100644 --- a/doc/FNV1A_Totenschiff.txt +++ b/doc/FNV1A_Totenschiff.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest . FAIL !!!!! [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 2.184 bytes/cycle - 6247.91 MiB/sec @ 3 ghz -Alignment 6 - 2.184 bytes/cycle - 6247.95 MiB/sec @ 3 ghz -Alignment 5 - 2.184 bytes/cycle - 6247.96 MiB/sec @ 3 ghz -Alignment 4 - 2.184 bytes/cycle - 6247.93 MiB/sec @ 3 ghz -Alignment 3 - 2.184 bytes/cycle - 6247.92 MiB/sec @ 3 ghz -Alignment 2 - 2.184 bytes/cycle - 6247.93 MiB/sec @ 3 ghz -Alignment 1 - 2.184 bytes/cycle - 6247.95 MiB/sec @ 3 ghz -Alignment 0 - 2.213 bytes/cycle - 6331.00 MiB/sec @ 3 ghz -Average - 2.187 bytes/cycle - 6258.32 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 32.56 cycles/hash -Small key speed test - 2-byte keys - 32.54 cycles/hash -Small key speed test - 3-byte keys - 32.54 cycles/hash -Small key speed test - 4-byte keys - 32.57 cycles/hash -Small key speed test - 5-byte keys - 32.55 cycles/hash -Small key speed test - 6-byte keys - 32.54 cycles/hash -Small key speed test - 7-byte keys - 32.57 cycles/hash -Small key speed test - 8-byte keys - 32.55 cycles/hash -Small key speed test - 9-byte keys - 34.00 cycles/hash -Small key speed test - 10-byte keys - 34.00 cycles/hash -Small key speed test - 11-byte keys - 34.00 cycles/hash -Small key speed test - 12-byte keys - 34.00 cycles/hash -Small key speed test - 13-byte keys - 34.00 cycles/hash -Small key speed test - 14-byte keys - 34.00 cycles/hash -Small key speed test - 15-byte keys - 34.00 cycles/hash -Small key speed test - 16-byte keys - 34.00 cycles/hash -Small key speed test - 17-byte keys - 38.00 cycles/hash -Small key speed test - 18-byte keys - 38.00 cycles/hash -Small key speed test - 19-byte keys - 38.00 cycles/hash -Small key speed test - 20-byte keys - 38.00 cycles/hash -Small key speed test - 21-byte keys - 38.00 cycles/hash -Small key speed test - 22-byte keys - 38.00 cycles/hash -Small key speed test - 23-byte keys - 38.00 cycles/hash -Small key speed test - 24-byte keys - 38.00 cycles/hash -Small key speed test - 25-byte keys - 41.58 cycles/hash -Small key speed test - 26-byte keys - 41.56 cycles/hash -Small key speed test - 27-byte keys - 41.60 cycles/hash -Small key speed test - 28-byte keys - 41.42 cycles/hash -Small key speed test - 29-byte keys - 41.56 cycles/hash -Small key speed test - 30-byte keys - 41.59 cycles/hash -Small key speed test - 31-byte keys - 41.58 cycles/hash -Average 36.365 cycles/hash +Alignment 7 - 2.190 bytes/cycle - 6267.03 MiB/sec @ 3 ghz +Alignment 6 - 2.194 bytes/cycle - 6275.74 MiB/sec @ 3 ghz +Alignment 5 - 2.193 bytes/cycle - 6275.35 MiB/sec @ 3 ghz +Alignment 4 - 2.194 bytes/cycle - 6276.45 MiB/sec @ 3 ghz +Alignment 3 - 2.194 bytes/cycle - 6275.77 MiB/sec @ 3 ghz +Alignment 2 - 2.194 bytes/cycle - 6276.20 MiB/sec @ 3 ghz +Alignment 1 - 2.193 bytes/cycle - 6275.63 MiB/sec @ 3 ghz +Alignment 0 - 2.194 bytes/cycle - 6276.07 MiB/sec @ 3 ghz +Average - 2.193 bytes/cycle - 6274.78 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 22.00 cycles/hash +Small key speed test - 2-byte keys - 22.00 cycles/hash +Small key speed test - 3-byte keys - 22.00 cycles/hash +Small key speed test - 4-byte keys - 22.00 cycles/hash +Small key speed test - 5-byte keys - 22.00 cycles/hash +Small key speed test - 6-byte keys - 22.00 cycles/hash +Small key speed test - 7-byte keys - 22.00 cycles/hash +Small key speed test - 8-byte keys - 22.00 cycles/hash +Small key speed test - 9-byte keys - 24.00 cycles/hash +Small key speed test - 10-byte keys - 24.00 cycles/hash +Small key speed test - 11-byte keys - 24.00 cycles/hash +Small key speed test - 12-byte keys - 24.00 cycles/hash +Small key speed test - 13-byte keys - 24.00 cycles/hash +Small key speed test - 14-byte keys - 24.00 cycles/hash +Small key speed test - 15-byte keys - 24.00 cycles/hash +Small key speed test - 16-byte keys - 24.00 cycles/hash +Small key speed test - 17-byte keys - 28.00 cycles/hash +Small key speed test - 18-byte keys - 28.00 cycles/hash +Small key speed test - 19-byte keys - 27.99 cycles/hash +Small key speed test - 20-byte keys - 27.99 cycles/hash +Small key speed test - 21-byte keys - 27.97 cycles/hash +Small key speed test - 22-byte keys - 27.97 cycles/hash +Small key speed test - 23-byte keys - 27.97 cycles/hash +Small key speed test - 24-byte keys - 27.98 cycles/hash +Small key speed test - 25-byte keys - 31.62 cycles/hash +Small key speed test - 26-byte keys - 31.61 cycles/hash +Small key speed test - 27-byte keys - 31.61 cycles/hash +Small key speed test - 28-byte keys - 31.63 cycles/hash +Small key speed test - 29-byte keys - 31.64 cycles/hash +Small key speed test - 30-byte keys - 31.59 cycles/hash +Small key speed test - 31-byte keys - 31.63 cycles/hash +Average 26.232 cycles/hash [[[ 'Hashmap' Speed Tests (when inlined) ]]] diff --git a/doc/FNV1a.txt b/doc/FNV1a.txt index 31156541..c6c204aa 100644 --- a/doc/FNV1a.txt +++ b/doc/FNV1a.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 0.277 bytes/cycle - 791.82 MiB/sec @ 3 ghz -Alignment 6 - 0.277 bytes/cycle - 791.82 MiB/sec @ 3 ghz -Alignment 5 - 0.277 bytes/cycle - 791.82 MiB/sec @ 3 ghz -Alignment 4 - 0.277 bytes/cycle - 791.82 MiB/sec @ 3 ghz -Alignment 3 - 0.277 bytes/cycle - 791.82 MiB/sec @ 3 ghz -Alignment 2 - 0.277 bytes/cycle - 791.82 MiB/sec @ 3 ghz -Alignment 1 - 0.277 bytes/cycle - 791.82 MiB/sec @ 3 ghz -Alignment 0 - 0.277 bytes/cycle - 791.82 MiB/sec @ 3 ghz -Average - 0.277 bytes/cycle - 791.82 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 15.00 cycles/hash -Small key speed test - 2-byte keys - 19.00 cycles/hash -Small key speed test - 3-byte keys - 22.00 cycles/hash -Small key speed test - 4-byte keys - 26.00 cycles/hash -Small key speed test - 5-byte keys - 29.79 cycles/hash -Small key speed test - 6-byte keys - 33.00 cycles/hash -Small key speed test - 7-byte keys - 37.00 cycles/hash -Small key speed test - 8-byte keys - 40.00 cycles/hash -Small key speed test - 9-byte keys - 44.00 cycles/hash -Small key speed test - 10-byte keys - 48.00 cycles/hash -Small key speed test - 11-byte keys - 51.00 cycles/hash -Small key speed test - 12-byte keys - 55.00 cycles/hash -Small key speed test - 13-byte keys - 58.31 cycles/hash -Small key speed test - 14-byte keys - 62.00 cycles/hash -Small key speed test - 15-byte keys - 66.00 cycles/hash -Small key speed test - 16-byte keys - 69.00 cycles/hash -Small key speed test - 17-byte keys - 73.00 cycles/hash -Small key speed test - 18-byte keys - 76.56 cycles/hash -Small key speed test - 19-byte keys - 80.00 cycles/hash -Small key speed test - 20-byte keys - 84.00 cycles/hash -Small key speed test - 21-byte keys - 87.00 cycles/hash -Small key speed test - 22-byte keys - 91.00 cycles/hash -Small key speed test - 23-byte keys - 95.00 cycles/hash -Small key speed test - 24-byte keys - 98.00 cycles/hash -Small key speed test - 25-byte keys - 102.00 cycles/hash -Small key speed test - 26-byte keys - 105.00 cycles/hash -Small key speed test - 27-byte keys - 109.00 cycles/hash -Small key speed test - 28-byte keys - 113.00 cycles/hash -Small key speed test - 29-byte keys - 116.00 cycles/hash -Small key speed test - 30-byte keys - 120.00 cycles/hash -Small key speed test - 31-byte keys - 123.43 cycles/hash -Average 69.293 cycles/hash +Alignment 7 - 0.266 bytes/cycle - 760.54 MiB/sec @ 3 ghz +Alignment 6 - 0.266 bytes/cycle - 760.47 MiB/sec @ 3 ghz +Alignment 5 - 0.266 bytes/cycle - 760.45 MiB/sec @ 3 ghz +Alignment 4 - 0.266 bytes/cycle - 760.58 MiB/sec @ 3 ghz +Alignment 3 - 0.266 bytes/cycle - 760.51 MiB/sec @ 3 ghz +Alignment 2 - 0.266 bytes/cycle - 760.34 MiB/sec @ 3 ghz +Alignment 1 - 0.266 bytes/cycle - 760.69 MiB/sec @ 3 ghz +Alignment 0 - 0.266 bytes/cycle - 760.54 MiB/sec @ 3 ghz +Average - 0.266 bytes/cycle - 760.52 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 17.00 cycles/hash +Small key speed test - 2-byte keys - 21.00 cycles/hash +Small key speed test - 3-byte keys - 25.00 cycles/hash +Small key speed test - 4-byte keys - 28.95 cycles/hash +Small key speed test - 5-byte keys - 32.18 cycles/hash +Small key speed test - 6-byte keys - 36.00 cycles/hash +Small key speed test - 7-byte keys - 40.00 cycles/hash +Small key speed test - 8-byte keys - 44.00 cycles/hash +Small key speed test - 9-byte keys - 47.00 cycles/hash +Small key speed test - 10-byte keys - 51.78 cycles/hash +Small key speed test - 11-byte keys - 55.00 cycles/hash +Small key speed test - 12-byte keys - 59.00 cycles/hash +Small key speed test - 13-byte keys - 63.00 cycles/hash +Small key speed test - 14-byte keys - 66.00 cycles/hash +Small key speed test - 15-byte keys - 70.00 cycles/hash +Small key speed test - 16-byte keys - 73.83 cycles/hash +Small key speed test - 17-byte keys - 77.21 cycles/hash +Small key speed test - 18-byte keys - 81.00 cycles/hash +Small key speed test - 19-byte keys - 84.74 cycles/hash +Small key speed test - 20-byte keys - 88.78 cycles/hash +Small key speed test - 21-byte keys - 92.64 cycles/hash +Small key speed test - 22-byte keys - 96.00 cycles/hash +Small key speed test - 23-byte keys - 99.83 cycles/hash +Small key speed test - 24-byte keys - 104.00 cycles/hash +Small key speed test - 25-byte keys - 108.00 cycles/hash +Small key speed test - 26-byte keys - 111.74 cycles/hash +Small key speed test - 27-byte keys - 115.75 cycles/hash +Small key speed test - 28-byte keys - 118.89 cycles/hash +Small key speed test - 29-byte keys - 122.91 cycles/hash +Small key speed test - 30-byte keys - 126.87 cycles/hash +Small key speed test - 31-byte keys - 130.65 cycles/hash +Average 73.830 cycles/hash [[[ 'Hashmap' Speed Tests (when inlined) ]]] diff --git a/doc/FNV1a_YT.txt b/doc/FNV1a_YT.txt index 8f087d66..1088180d 100644 --- a/doc/FNV1a_YT.txt +++ b/doc/FNV1a_YT.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 3.329 bytes/cycle - 9523.61 MiB/sec @ 3 ghz -Alignment 6 - 3.328 bytes/cycle - 9520.54 MiB/sec @ 3 ghz -Alignment 5 - 3.327 bytes/cycle - 9520.00 MiB/sec @ 3 ghz -Alignment 4 - 3.493 bytes/cycle - 9992.17 MiB/sec @ 3 ghz -Alignment 3 - 3.317 bytes/cycle - 9489.15 MiB/sec @ 3 ghz -Alignment 2 - 3.317 bytes/cycle - 9488.95 MiB/sec @ 3 ghz -Alignment 1 - 3.317 bytes/cycle - 9489.13 MiB/sec @ 3 ghz -Alignment 0 - 3.494 bytes/cycle - 9996.18 MiB/sec @ 3 ghz -Average - 3.365 bytes/cycle - 9627.47 MiB/sec @ 3 ghz +Alignment 7 - 4.698 bytes/cycle - 13442.22 MiB/sec @ 3 ghz +Alignment 6 - 4.706 bytes/cycle - 13462.85 MiB/sec @ 3 ghz +Alignment 5 - 4.704 bytes/cycle - 13457.19 MiB/sec @ 3 ghz +Alignment 4 - 4.757 bytes/cycle - 13610.02 MiB/sec @ 3 ghz +Alignment 3 - 4.695 bytes/cycle - 13432.61 MiB/sec @ 3 ghz +Alignment 2 - 4.698 bytes/cycle - 13440.93 MiB/sec @ 3 ghz +Alignment 1 - 4.697 bytes/cycle - 13438.09 MiB/sec @ 3 ghz +Alignment 0 - 4.756 bytes/cycle - 13608.00 MiB/sec @ 3 ghz +Average - 4.714 bytes/cycle - 13486.49 MiB/sec @ 3 ghz Small key speed test - 1-byte keys - 22.00 cycles/hash -Small key speed test - 2-byte keys - 21.25 cycles/hash -Small key speed test - 3-byte keys - 25.00 cycles/hash -Small key speed test - 4-byte keys - 23.23 cycles/hash -Small key speed test - 5-byte keys - 25.00 cycles/hash -Small key speed test - 6-byte keys - 25.00 cycles/hash -Small key speed test - 7-byte keys - 29.00 cycles/hash -Small key speed test - 8-byte keys - 22.00 cycles/hash -Small key speed test - 9-byte keys - 25.59 cycles/hash -Small key speed test - 10-byte keys - 25.00 cycles/hash -Small key speed test - 11-byte keys - 29.00 cycles/hash -Small key speed test - 12-byte keys - 25.00 cycles/hash -Small key speed test - 13-byte keys - 29.00 cycles/hash -Small key speed test - 14-byte keys - 29.00 cycles/hash +Small key speed test - 2-byte keys - 22.00 cycles/hash +Small key speed test - 3-byte keys - 26.00 cycles/hash +Small key speed test - 4-byte keys - 24.00 cycles/hash +Small key speed test - 5-byte keys - 26.00 cycles/hash +Small key speed test - 6-byte keys - 26.00 cycles/hash +Small key speed test - 7-byte keys - 29.98 cycles/hash +Small key speed test - 8-byte keys - 24.00 cycles/hash +Small key speed test - 9-byte keys - 26.99 cycles/hash +Small key speed test - 10-byte keys - 26.00 cycles/hash +Small key speed test - 11-byte keys - 30.00 cycles/hash +Small key speed test - 12-byte keys - 28.00 cycles/hash +Small key speed test - 13-byte keys - 30.00 cycles/hash +Small key speed test - 14-byte keys - 30.00 cycles/hash Small key speed test - 15-byte keys - 33.00 cycles/hash -Small key speed test - 16-byte keys - 22.00 cycles/hash -Small key speed test - 17-byte keys - 26.00 cycles/hash -Small key speed test - 18-byte keys - 26.00 cycles/hash -Small key speed test - 19-byte keys - 29.00 cycles/hash -Small key speed test - 20-byte keys - 26.00 cycles/hash -Small key speed test - 21-byte keys - 30.00 cycles/hash -Small key speed test - 22-byte keys - 29.00 cycles/hash -Small key speed test - 23-byte keys - 33.65 cycles/hash -Small key speed test - 24-byte keys - 27.00 cycles/hash -Small key speed test - 25-byte keys - 31.00 cycles/hash -Small key speed test - 26-byte keys - 30.00 cycles/hash -Small key speed test - 27-byte keys - 33.97 cycles/hash -Small key speed test - 28-byte keys - 30.00 cycles/hash -Small key speed test - 29-byte keys - 34.00 cycles/hash -Small key speed test - 30-byte keys - 34.00 cycles/hash -Small key speed test - 31-byte keys - 38.00 cycles/hash -Average 27.990 cycles/hash +Small key speed test - 16-byte keys - 26.00 cycles/hash +Small key speed test - 17-byte keys - 28.00 cycles/hash +Small key speed test - 18-byte keys - 28.00 cycles/hash +Small key speed test - 19-byte keys - 31.56 cycles/hash +Small key speed test - 20-byte keys - 30.00 cycles/hash +Small key speed test - 21-byte keys - 31.98 cycles/hash +Small key speed test - 22-byte keys - 32.00 cycles/hash +Small key speed test - 23-byte keys - 36.00 cycles/hash +Small key speed test - 24-byte keys - 31.96 cycles/hash +Small key speed test - 25-byte keys - 35.59 cycles/hash +Small key speed test - 26-byte keys - 35.94 cycles/hash +Small key speed test - 27-byte keys - 39.00 cycles/hash +Small key speed test - 28-byte keys - 35.00 cycles/hash +Small key speed test - 29-byte keys - 39.00 cycles/hash +Small key speed test - 30-byte keys - 39.00 cycles/hash +Small key speed test - 31-byte keys - 42.60 cycles/hash +Average 30.504 cycles/hash [[[ 'Hashmap' Speed Tests (when inlined) ]]] diff --git a/doc/FNV2.txt b/doc/FNV2.txt index aa5851be..bb478e6c 100644 --- a/doc/FNV2.txt +++ b/doc/FNV2.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 2.213 bytes/cycle - 6331.34 MiB/sec @ 3 ghz -Alignment 6 - 2.213 bytes/cycle - 6331.00 MiB/sec @ 3 ghz -Alignment 5 - 2.213 bytes/cycle - 6330.77 MiB/sec @ 3 ghz -Alignment 4 - 2.213 bytes/cycle - 6330.59 MiB/sec @ 3 ghz -Alignment 3 - 2.213 bytes/cycle - 6330.41 MiB/sec @ 3 ghz -Alignment 2 - 2.213 bytes/cycle - 6330.23 MiB/sec @ 3 ghz -Alignment 1 - 2.213 bytes/cycle - 6330.25 MiB/sec @ 3 ghz -Alignment 0 - 2.213 bytes/cycle - 6331.37 MiB/sec @ 3 ghz -Average - 2.213 bytes/cycle - 6330.75 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 15.00 cycles/hash -Small key speed test - 2-byte keys - 19.00 cycles/hash -Small key speed test - 3-byte keys - 22.00 cycles/hash -Small key speed test - 4-byte keys - 26.00 cycles/hash -Small key speed test - 5-byte keys - 30.00 cycles/hash -Small key speed test - 6-byte keys - 33.00 cycles/hash -Small key speed test - 7-byte keys - 37.00 cycles/hash -Small key speed test - 8-byte keys - 26.00 cycles/hash -Small key speed test - 9-byte keys - 29.00 cycles/hash -Small key speed test - 10-byte keys - 32.00 cycles/hash -Small key speed test - 11-byte keys - 36.00 cycles/hash -Small key speed test - 12-byte keys - 39.54 cycles/hash -Small key speed test - 13-byte keys - 43.00 cycles/hash -Small key speed test - 14-byte keys - 47.00 cycles/hash -Small key speed test - 15-byte keys - 50.00 cycles/hash -Small key speed test - 16-byte keys - 29.85 cycles/hash -Small key speed test - 17-byte keys - 32.00 cycles/hash -Small key speed test - 18-byte keys - 36.00 cycles/hash -Small key speed test - 19-byte keys - 39.96 cycles/hash -Small key speed test - 20-byte keys - 43.00 cycles/hash -Small key speed test - 21-byte keys - 47.00 cycles/hash -Small key speed test - 22-byte keys - 50.00 cycles/hash -Small key speed test - 23-byte keys - 54.00 cycles/hash -Small key speed test - 24-byte keys - 33.00 cycles/hash -Small key speed test - 25-byte keys - 36.00 cycles/hash -Small key speed test - 26-byte keys - 39.46 cycles/hash -Small key speed test - 27-byte keys - 43.00 cycles/hash -Small key speed test - 28-byte keys - 47.00 cycles/hash -Small key speed test - 29-byte keys - 50.00 cycles/hash -Small key speed test - 30-byte keys - 54.00 cycles/hash -Small key speed test - 31-byte keys - 57.66 cycles/hash -Average 37.951 cycles/hash +Alignment 7 - 2.155 bytes/cycle - 6164.96 MiB/sec @ 3 ghz +Alignment 6 - 2.157 bytes/cycle - 6170.59 MiB/sec @ 3 ghz +Alignment 5 - 2.157 bytes/cycle - 6171.64 MiB/sec @ 3 ghz +Alignment 4 - 2.158 bytes/cycle - 6174.76 MiB/sec @ 3 ghz +Alignment 3 - 2.157 bytes/cycle - 6171.01 MiB/sec @ 3 ghz +Alignment 2 - 2.158 bytes/cycle - 6173.35 MiB/sec @ 3 ghz +Alignment 1 - 2.158 bytes/cycle - 6174.40 MiB/sec @ 3 ghz +Alignment 0 - 2.157 bytes/cycle - 6172.08 MiB/sec @ 3 ghz +Average - 2.157 bytes/cycle - 6171.60 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 16.91 cycles/hash +Small key speed test - 2-byte keys - 20.00 cycles/hash +Small key speed test - 3-byte keys - 24.00 cycles/hash +Small key speed test - 4-byte keys - 28.00 cycles/hash +Small key speed test - 5-byte keys - 32.00 cycles/hash +Small key speed test - 6-byte keys - 35.64 cycles/hash +Small key speed test - 7-byte keys - 39.00 cycles/hash +Small key speed test - 8-byte keys - 17.00 cycles/hash +Small key speed test - 9-byte keys - 20.52 cycles/hash +Small key speed test - 10-byte keys - 24.00 cycles/hash +Small key speed test - 11-byte keys - 28.00 cycles/hash +Small key speed test - 12-byte keys - 32.00 cycles/hash +Small key speed test - 13-byte keys - 35.00 cycles/hash +Small key speed test - 14-byte keys - 39.00 cycles/hash +Small key speed test - 15-byte keys - 42.45 cycles/hash +Small key speed test - 16-byte keys - 20.27 cycles/hash +Small key speed test - 17-byte keys - 24.00 cycles/hash +Small key speed test - 18-byte keys - 28.00 cycles/hash +Small key speed test - 19-byte keys - 31.97 cycles/hash +Small key speed test - 20-byte keys - 35.15 cycles/hash +Small key speed test - 21-byte keys - 39.00 cycles/hash +Small key speed test - 22-byte keys - 43.00 cycles/hash +Small key speed test - 23-byte keys - 46.24 cycles/hash +Small key speed test - 24-byte keys - 24.00 cycles/hash +Small key speed test - 25-byte keys - 27.98 cycles/hash +Small key speed test - 26-byte keys - 31.92 cycles/hash +Small key speed test - 27-byte keys - 35.00 cycles/hash +Small key speed test - 28-byte keys - 39.00 cycles/hash +Small key speed test - 29-byte keys - 43.00 cycles/hash +Small key speed test - 30-byte keys - 46.12 cycles/hash +Small key speed test - 31-byte keys - 50.00 cycles/hash +Average 32.199 cycles/hash [[[ 'Hashmap' Speed Tests (when inlined) ]]] diff --git a/doc/FNV64.txt b/doc/FNV64.txt index e724787c..4e4b0b2f 100644 --- a/doc/FNV64.txt +++ b/doc/FNV64.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 0.277 bytes/cycle - 791.82 MiB/sec @ 3 ghz -Alignment 6 - 0.277 bytes/cycle - 791.82 MiB/sec @ 3 ghz -Alignment 5 - 0.277 bytes/cycle - 791.82 MiB/sec @ 3 ghz -Alignment 4 - 0.277 bytes/cycle - 791.82 MiB/sec @ 3 ghz -Alignment 3 - 0.277 bytes/cycle - 791.82 MiB/sec @ 3 ghz -Alignment 2 - 0.277 bytes/cycle - 791.82 MiB/sec @ 3 ghz -Alignment 1 - 0.277 bytes/cycle - 791.82 MiB/sec @ 3 ghz -Alignment 0 - 0.277 bytes/cycle - 791.82 MiB/sec @ 3 ghz -Average - 0.277 bytes/cycle - 791.82 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 15.00 cycles/hash -Small key speed test - 2-byte keys - 19.00 cycles/hash -Small key speed test - 3-byte keys - 22.00 cycles/hash -Small key speed test - 4-byte keys - 26.00 cycles/hash -Small key speed test - 5-byte keys - 29.91 cycles/hash -Small key speed test - 6-byte keys - 33.00 cycles/hash -Small key speed test - 7-byte keys - 37.00 cycles/hash -Small key speed test - 8-byte keys - 40.00 cycles/hash -Small key speed test - 9-byte keys - 44.00 cycles/hash -Small key speed test - 10-byte keys - 48.00 cycles/hash -Small key speed test - 11-byte keys - 51.00 cycles/hash -Small key speed test - 12-byte keys - 55.00 cycles/hash -Small key speed test - 13-byte keys - 58.31 cycles/hash -Small key speed test - 14-byte keys - 62.00 cycles/hash -Small key speed test - 15-byte keys - 66.00 cycles/hash -Small key speed test - 16-byte keys - 69.00 cycles/hash -Small key speed test - 17-byte keys - 73.00 cycles/hash -Small key speed test - 18-byte keys - 76.57 cycles/hash -Small key speed test - 19-byte keys - 80.00 cycles/hash -Small key speed test - 20-byte keys - 84.00 cycles/hash -Small key speed test - 21-byte keys - 87.00 cycles/hash -Small key speed test - 22-byte keys - 91.00 cycles/hash -Small key speed test - 23-byte keys - 95.00 cycles/hash -Small key speed test - 24-byte keys - 98.00 cycles/hash -Small key speed test - 25-byte keys - 102.00 cycles/hash -Small key speed test - 26-byte keys - 105.00 cycles/hash -Small key speed test - 27-byte keys - 109.00 cycles/hash -Small key speed test - 28-byte keys - 113.00 cycles/hash -Small key speed test - 29-byte keys - 116.00 cycles/hash -Small key speed test - 30-byte keys - 120.00 cycles/hash -Small key speed test - 31-byte keys - 123.47 cycles/hash -Average 69.298 cycles/hash +Alignment 7 - 0.271 bytes/cycle - 774.82 MiB/sec @ 3 ghz +Alignment 6 - 0.271 bytes/cycle - 774.82 MiB/sec @ 3 ghz +Alignment 5 - 0.271 bytes/cycle - 774.82 MiB/sec @ 3 ghz +Alignment 4 - 0.271 bytes/cycle - 774.82 MiB/sec @ 3 ghz +Alignment 3 - 0.270 bytes/cycle - 773.69 MiB/sec @ 3 ghz +Alignment 2 - 0.271 bytes/cycle - 774.82 MiB/sec @ 3 ghz +Alignment 1 - 0.270 bytes/cycle - 773.55 MiB/sec @ 3 ghz +Alignment 0 - 0.270 bytes/cycle - 773.62 MiB/sec @ 3 ghz +Average - 0.271 bytes/cycle - 774.37 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 17.00 cycles/hash +Small key speed test - 2-byte keys - 20.90 cycles/hash +Small key speed test - 3-byte keys - 24.00 cycles/hash +Small key speed test - 4-byte keys - 28.00 cycles/hash +Small key speed test - 5-byte keys - 31.50 cycles/hash +Small key speed test - 6-byte keys - 35.00 cycles/hash +Small key speed test - 7-byte keys - 39.00 cycles/hash +Small key speed test - 8-byte keys - 42.97 cycles/hash +Small key speed test - 9-byte keys - 46.00 cycles/hash +Small key speed test - 10-byte keys - 50.00 cycles/hash +Small key speed test - 11-byte keys - 54.00 cycles/hash +Small key speed test - 12-byte keys - 57.52 cycles/hash +Small key speed test - 13-byte keys - 61.34 cycles/hash +Small key speed test - 14-byte keys - 65.00 cycles/hash +Small key speed test - 15-byte keys - 68.57 cycles/hash +Small key speed test - 16-byte keys - 72.96 cycles/hash +Small key speed test - 17-byte keys - 76.55 cycles/hash +Small key speed test - 18-byte keys - 79.77 cycles/hash +Small key speed test - 19-byte keys - 83.53 cycles/hash +Small key speed test - 20-byte keys - 87.33 cycles/hash +Small key speed test - 21-byte keys - 90.99 cycles/hash +Small key speed test - 22-byte keys - 94.00 cycles/hash +Small key speed test - 23-byte keys - 98.41 cycles/hash +Small key speed test - 24-byte keys - 102.00 cycles/hash +Small key speed test - 25-byte keys - 105.41 cycles/hash +Small key speed test - 26-byte keys - 109.70 cycles/hash +Small key speed test - 27-byte keys - 113.62 cycles/hash +Small key speed test - 28-byte keys - 117.61 cycles/hash +Small key speed test - 29-byte keys - 120.91 cycles/hash +Small key speed test - 30-byte keys - 124.29 cycles/hash +Small key speed test - 31-byte keys - 127.46 cycles/hash +Average 72.431 cycles/hash [[[ 'Hashmap' Speed Tests (when inlined) ]]] diff --git a/doc/FarmHash128.txt b/doc/FarmHash128.txt index f0cc57cc..5c0a54ad 100644 --- a/doc/FarmHash128.txt +++ b/doc/FarmHash128.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 3.260 bytes/cycle - 9327.62 MiB/sec @ 3 ghz -Alignment 6 - 3.260 bytes/cycle - 9328.00 MiB/sec @ 3 ghz -Alignment 5 - 3.260 bytes/cycle - 9327.72 MiB/sec @ 3 ghz -Alignment 4 - 3.260 bytes/cycle - 9328.03 MiB/sec @ 3 ghz -Alignment 3 - 3.260 bytes/cycle - 9327.92 MiB/sec @ 3 ghz -Alignment 2 - 3.260 bytes/cycle - 9327.48 MiB/sec @ 3 ghz -Alignment 1 - 3.260 bytes/cycle - 9327.32 MiB/sec @ 3 ghz -Alignment 0 - 3.503 bytes/cycle - 10022.36 MiB/sec @ 3 ghz -Average - 3.291 bytes/cycle - 9414.56 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 61.00 cycles/hash -Small key speed test - 2-byte keys - 61.00 cycles/hash -Small key speed test - 3-byte keys - 61.00 cycles/hash -Small key speed test - 4-byte keys - 64.00 cycles/hash -Small key speed test - 5-byte keys - 71.82 cycles/hash -Small key speed test - 6-byte keys - 71.00 cycles/hash -Small key speed test - 7-byte keys - 71.00 cycles/hash -Small key speed test - 8-byte keys - 74.00 cycles/hash -Small key speed test - 9-byte keys - 74.00 cycles/hash -Small key speed test - 10-byte keys - 74.00 cycles/hash -Small key speed test - 11-byte keys - 74.00 cycles/hash -Small key speed test - 12-byte keys - 74.00 cycles/hash -Small key speed test - 13-byte keys - 74.00 cycles/hash -Small key speed test - 14-byte keys - 74.00 cycles/hash -Small key speed test - 15-byte keys - 74.00 cycles/hash -Small key speed test - 16-byte keys - 74.53 cycles/hash -Small key speed test - 17-byte keys - 78.95 cycles/hash -Small key speed test - 18-byte keys - 78.94 cycles/hash -Small key speed test - 19-byte keys - 78.95 cycles/hash -Small key speed test - 20-byte keys - 78.21 cycles/hash -Small key speed test - 21-byte keys - 78.50 cycles/hash -Small key speed test - 22-byte keys - 78.50 cycles/hash -Small key speed test - 23-byte keys - 78.50 cycles/hash -Small key speed test - 24-byte keys - 78.00 cycles/hash -Small key speed test - 25-byte keys - 78.00 cycles/hash -Small key speed test - 26-byte keys - 78.00 cycles/hash -Small key speed test - 27-byte keys - 78.82 cycles/hash -Small key speed test - 28-byte keys - 78.00 cycles/hash -Small key speed test - 29-byte keys - 78.00 cycles/hash -Small key speed test - 30-byte keys - 78.00 cycles/hash -Small key speed test - 31-byte keys - 78.00 cycles/hash -Average 74.281 cycles/hash +Alignment 7 - 4.848 bytes/cycle - 13870.84 MiB/sec @ 3 ghz +Alignment 6 - 4.848 bytes/cycle - 13868.91 MiB/sec @ 3 ghz +Alignment 5 - 4.847 bytes/cycle - 13866.14 MiB/sec @ 3 ghz +Alignment 4 - 4.852 bytes/cycle - 13882.86 MiB/sec @ 3 ghz +Alignment 3 - 4.847 bytes/cycle - 13867.57 MiB/sec @ 3 ghz +Alignment 2 - 4.847 bytes/cycle - 13868.09 MiB/sec @ 3 ghz +Alignment 1 - 4.847 bytes/cycle - 13867.32 MiB/sec @ 3 ghz +Alignment 0 - 4.969 bytes/cycle - 14217.47 MiB/sec @ 3 ghz +Average - 4.863 bytes/cycle - 13913.65 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 57.73 cycles/hash +Small key speed test - 2-byte keys - 57.95 cycles/hash +Small key speed test - 3-byte keys - 58.00 cycles/hash +Small key speed test - 4-byte keys - 63.00 cycles/hash +Small key speed test - 5-byte keys - 63.00 cycles/hash +Small key speed test - 6-byte keys - 63.00 cycles/hash +Small key speed test - 7-byte keys - 63.00 cycles/hash +Small key speed test - 8-byte keys - 63.00 cycles/hash +Small key speed test - 9-byte keys - 63.00 cycles/hash +Small key speed test - 10-byte keys - 63.00 cycles/hash +Small key speed test - 11-byte keys - 63.00 cycles/hash +Small key speed test - 12-byte keys - 63.00 cycles/hash +Small key speed test - 13-byte keys - 63.00 cycles/hash +Small key speed test - 14-byte keys - 63.00 cycles/hash +Small key speed test - 15-byte keys - 63.00 cycles/hash +Small key speed test - 16-byte keys - 63.00 cycles/hash +Small key speed test - 17-byte keys - 79.00 cycles/hash +Small key speed test - 18-byte keys - 79.00 cycles/hash +Small key speed test - 19-byte keys - 79.00 cycles/hash +Small key speed test - 20-byte keys - 79.00 cycles/hash +Small key speed test - 21-byte keys - 79.11 cycles/hash +Small key speed test - 22-byte keys - 79.00 cycles/hash +Small key speed test - 23-byte keys - 79.13 cycles/hash +Small key speed test - 24-byte keys - 78.90 cycles/hash +Small key speed test - 25-byte keys - 79.00 cycles/hash +Small key speed test - 26-byte keys - 79.12 cycles/hash +Small key speed test - 27-byte keys - 79.02 cycles/hash +Small key speed test - 28-byte keys - 78.96 cycles/hash +Small key speed test - 29-byte keys - 78.98 cycles/hash +Small key speed test - 30-byte keys - 79.00 cycles/hash +Small key speed test - 31-byte keys - 78.98 cycles/hash +Average 70.254 cycles/hash [[[ 'Hashmap' Speed Tests ]]] diff --git a/doc/FarmHash32.txt b/doc/FarmHash32.txt index 839306e0..e9ac5ced 100644 --- a/doc/FarmHash32.txt +++ b/doc/FarmHash32.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 5.890 bytes/cycle - 16851.16 MiB/sec @ 3 ghz -Alignment 6 - 5.890 bytes/cycle - 16850.81 MiB/sec @ 3 ghz -Alignment 5 - 5.890 bytes/cycle - 16850.50 MiB/sec @ 3 ghz -Alignment 4 - 5.924 bytes/cycle - 16947.47 MiB/sec @ 3 ghz -Alignment 3 - 5.889 bytes/cycle - 16849.89 MiB/sec @ 3 ghz -Alignment 2 - 5.890 bytes/cycle - 16850.34 MiB/sec @ 3 ghz -Alignment 1 - 5.890 bytes/cycle - 16850.66 MiB/sec @ 3 ghz -Alignment 0 - 7.146 bytes/cycle - 20444.66 MiB/sec @ 3 ghz -Average - 6.051 bytes/cycle - 17311.94 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 37.97 cycles/hash -Small key speed test - 2-byte keys - 37.97 cycles/hash -Small key speed test - 3-byte keys - 37.97 cycles/hash -Small key speed test - 4-byte keys - 41.00 cycles/hash -Small key speed test - 5-byte keys - 50.25 cycles/hash -Small key speed test - 6-byte keys - 50.24 cycles/hash -Small key speed test - 7-byte keys - 50.25 cycles/hash -Small key speed test - 8-byte keys - 58.12 cycles/hash -Small key speed test - 9-byte keys - 58.00 cycles/hash -Small key speed test - 10-byte keys - 58.00 cycles/hash -Small key speed test - 11-byte keys - 58.00 cycles/hash -Small key speed test - 12-byte keys - 57.96 cycles/hash -Small key speed test - 13-byte keys - 57.90 cycles/hash -Small key speed test - 14-byte keys - 57.90 cycles/hash -Small key speed test - 15-byte keys - 57.90 cycles/hash -Small key speed test - 16-byte keys - 57.96 cycles/hash -Small key speed test - 17-byte keys - 58.69 cycles/hash -Small key speed test - 18-byte keys - 58.69 cycles/hash -Small key speed test - 19-byte keys - 58.69 cycles/hash -Small key speed test - 20-byte keys - 58.00 cycles/hash -Small key speed test - 21-byte keys - 58.52 cycles/hash -Small key speed test - 22-byte keys - 58.57 cycles/hash -Small key speed test - 23-byte keys - 58.53 cycles/hash -Small key speed test - 24-byte keys - 58.00 cycles/hash -Small key speed test - 25-byte keys - 58.00 cycles/hash -Small key speed test - 26-byte keys - 58.00 cycles/hash -Small key speed test - 27-byte keys - 58.00 cycles/hash -Small key speed test - 28-byte keys - 58.00 cycles/hash -Small key speed test - 29-byte keys - 58.00 cycles/hash -Small key speed test - 30-byte keys - 58.00 cycles/hash -Small key speed test - 31-byte keys - 58.00 cycles/hash -Average 54.874 cycles/hash +Alignment 7 - 7.556 bytes/cycle - 21617.69 MiB/sec @ 3 ghz +Alignment 6 - 7.555 bytes/cycle - 21615.62 MiB/sec @ 3 ghz +Alignment 5 - 7.562 bytes/cycle - 21634.64 MiB/sec @ 3 ghz +Alignment 4 - 7.567 bytes/cycle - 21648.23 MiB/sec @ 3 ghz +Alignment 3 - 7.560 bytes/cycle - 21629.36 MiB/sec @ 3 ghz +Alignment 2 - 7.561 bytes/cycle - 21631.93 MiB/sec @ 3 ghz +Alignment 1 - 7.560 bytes/cycle - 21630.09 MiB/sec @ 3 ghz +Alignment 0 - 7.912 bytes/cycle - 22637.09 MiB/sec @ 3 ghz +Average - 7.604 bytes/cycle - 21755.58 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 39.26 cycles/hash +Small key speed test - 2-byte keys - 39.12 cycles/hash +Small key speed test - 3-byte keys - 39.14 cycles/hash +Small key speed test - 4-byte keys - 43.00 cycles/hash +Small key speed test - 5-byte keys - 43.00 cycles/hash +Small key speed test - 6-byte keys - 43.00 cycles/hash +Small key speed test - 7-byte keys - 43.00 cycles/hash +Small key speed test - 8-byte keys - 48.57 cycles/hash +Small key speed test - 9-byte keys - 48.58 cycles/hash +Small key speed test - 10-byte keys - 48.00 cycles/hash +Small key speed test - 11-byte keys - 48.13 cycles/hash +Small key speed test - 12-byte keys - 48.51 cycles/hash +Small key speed test - 13-byte keys - 48.00 cycles/hash +Small key speed test - 14-byte keys - 48.00 cycles/hash +Small key speed test - 15-byte keys - 48.00 cycles/hash +Small key speed test - 16-byte keys - 48.11 cycles/hash +Small key speed test - 17-byte keys - 49.90 cycles/hash +Small key speed test - 18-byte keys - 49.87 cycles/hash +Small key speed test - 19-byte keys - 49.95 cycles/hash +Small key speed test - 20-byte keys - 49.89 cycles/hash +Small key speed test - 21-byte keys - 50.00 cycles/hash +Small key speed test - 22-byte keys - 50.00 cycles/hash +Small key speed test - 23-byte keys - 50.28 cycles/hash +Small key speed test - 24-byte keys - 50.00 cycles/hash +Small key speed test - 25-byte keys - 50.14 cycles/hash +Small key speed test - 26-byte keys - 50.28 cycles/hash +Small key speed test - 27-byte keys - 50.00 cycles/hash +Small key speed test - 28-byte keys - 50.00 cycles/hash +Small key speed test - 29-byte keys - 50.00 cycles/hash +Small key speed test - 30-byte keys - 50.00 cycles/hash +Small key speed test - 31-byte keys - 49.99 cycles/hash +Average 47.539 cycles/hash [[[ 'Hashmap' Speed Tests (when inlined) ]]] diff --git a/doc/FarmHash64.txt b/doc/FarmHash64.txt index fd1d6542..662a2037 100644 --- a/doc/FarmHash64.txt +++ b/doc/FarmHash64.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 3.036 bytes/cycle - 8685.43 MiB/sec @ 3 ghz -Alignment 6 - 3.036 bytes/cycle - 8685.25 MiB/sec @ 3 ghz -Alignment 5 - 3.036 bytes/cycle - 8685.26 MiB/sec @ 3 ghz -Alignment 4 - 3.036 bytes/cycle - 8685.19 MiB/sec @ 3 ghz -Alignment 3 - 3.036 bytes/cycle - 8685.34 MiB/sec @ 3 ghz -Alignment 2 - 3.036 bytes/cycle - 8684.93 MiB/sec @ 3 ghz -Alignment 1 - 3.036 bytes/cycle - 8685.17 MiB/sec @ 3 ghz -Alignment 0 - 3.160 bytes/cycle - 9041.82 MiB/sec @ 3 ghz -Average - 3.051 bytes/cycle - 8729.80 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 37.99 cycles/hash -Small key speed test - 2-byte keys - 37.99 cycles/hash -Small key speed test - 3-byte keys - 37.99 cycles/hash -Small key speed test - 4-byte keys - 41.00 cycles/hash -Small key speed test - 5-byte keys - 51.00 cycles/hash -Small key speed test - 6-byte keys - 51.00 cycles/hash -Small key speed test - 7-byte keys - 51.00 cycles/hash -Small key speed test - 8-byte keys - 58.00 cycles/hash -Small key speed test - 9-byte keys - 58.00 cycles/hash -Small key speed test - 10-byte keys - 58.00 cycles/hash -Small key speed test - 11-byte keys - 58.00 cycles/hash -Small key speed test - 12-byte keys - 57.21 cycles/hash -Small key speed test - 13-byte keys - 57.14 cycles/hash -Small key speed test - 14-byte keys - 57.14 cycles/hash -Small key speed test - 15-byte keys - 57.14 cycles/hash -Small key speed test - 16-byte keys - 57.22 cycles/hash -Small key speed test - 17-byte keys - 57.00 cycles/hash -Small key speed test - 18-byte keys - 57.21 cycles/hash -Small key speed test - 19-byte keys - 57.21 cycles/hash -Small key speed test - 20-byte keys - 57.00 cycles/hash -Small key speed test - 21-byte keys - 57.00 cycles/hash -Small key speed test - 22-byte keys - 57.00 cycles/hash -Small key speed test - 23-byte keys - 57.00 cycles/hash -Small key speed test - 24-byte keys - 57.00 cycles/hash -Small key speed test - 25-byte keys - 57.00 cycles/hash -Small key speed test - 26-byte keys - 57.00 cycles/hash -Small key speed test - 27-byte keys - 57.00 cycles/hash -Small key speed test - 28-byte keys - 57.00 cycles/hash -Small key speed test - 29-byte keys - 57.00 cycles/hash -Small key speed test - 30-byte keys - 57.00 cycles/hash -Small key speed test - 31-byte keys - 57.00 cycles/hash -Average 54.233 cycles/hash +Alignment 7 - 4.476 bytes/cycle - 12805.29 MiB/sec @ 3 ghz +Alignment 6 - 4.475 bytes/cycle - 12804.26 MiB/sec @ 3 ghz +Alignment 5 - 4.475 bytes/cycle - 12803.41 MiB/sec @ 3 ghz +Alignment 4 - 4.477 bytes/cycle - 12810.09 MiB/sec @ 3 ghz +Alignment 3 - 4.472 bytes/cycle - 12794.40 MiB/sec @ 3 ghz +Alignment 2 - 4.476 bytes/cycle - 12804.57 MiB/sec @ 3 ghz +Alignment 1 - 4.476 bytes/cycle - 12804.96 MiB/sec @ 3 ghz +Alignment 0 - 4.592 bytes/cycle - 13137.24 MiB/sec @ 3 ghz +Average - 4.490 bytes/cycle - 12845.53 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 39.18 cycles/hash +Small key speed test - 2-byte keys - 39.00 cycles/hash +Small key speed test - 3-byte keys - 39.00 cycles/hash +Small key speed test - 4-byte keys - 42.46 cycles/hash +Small key speed test - 5-byte keys - 42.44 cycles/hash +Small key speed test - 6-byte keys - 42.47 cycles/hash +Small key speed test - 7-byte keys - 42.43 cycles/hash +Small key speed test - 8-byte keys - 48.85 cycles/hash +Small key speed test - 9-byte keys - 48.79 cycles/hash +Small key speed test - 10-byte keys - 48.83 cycles/hash +Small key speed test - 11-byte keys - 48.78 cycles/hash +Small key speed test - 12-byte keys - 48.80 cycles/hash +Small key speed test - 13-byte keys - 48.85 cycles/hash +Small key speed test - 14-byte keys - 48.80 cycles/hash +Small key speed test - 15-byte keys - 48.79 cycles/hash +Small key speed test - 16-byte keys - 48.84 cycles/hash +Small key speed test - 17-byte keys - 49.00 cycles/hash +Small key speed test - 18-byte keys - 49.00 cycles/hash +Small key speed test - 19-byte keys - 49.00 cycles/hash +Small key speed test - 20-byte keys - 49.00 cycles/hash +Small key speed test - 21-byte keys - 48.88 cycles/hash +Small key speed test - 22-byte keys - 48.90 cycles/hash +Small key speed test - 23-byte keys - 48.95 cycles/hash +Small key speed test - 24-byte keys - 48.94 cycles/hash +Small key speed test - 25-byte keys - 48.85 cycles/hash +Small key speed test - 26-byte keys - 48.83 cycles/hash +Small key speed test - 27-byte keys - 48.88 cycles/hash +Small key speed test - 28-byte keys - 48.92 cycles/hash +Small key speed test - 29-byte keys - 48.95 cycles/hash +Small key speed test - 30-byte keys - 48.94 cycles/hash +Small key speed test - 31-byte keys - 48.94 cycles/hash +Average 47.107 cycles/hash [[[ 'Hashmap' Speed Tests (when inlined) ]]] diff --git a/doc/GoodOAAT.txt b/doc/GoodOAAT.txt index 02e840ae..9d38fac7 100644 --- a/doc/GoodOAAT.txt +++ b/doc/GoodOAAT.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 0.368 bytes/cycle - 1052.28 MiB/sec @ 3 ghz -Alignment 6 - 0.368 bytes/cycle - 1052.31 MiB/sec @ 3 ghz -Alignment 5 - 0.368 bytes/cycle - 1052.28 MiB/sec @ 3 ghz -Alignment 4 - 0.368 bytes/cycle - 1052.31 MiB/sec @ 3 ghz -Alignment 3 - 0.368 bytes/cycle - 1052.31 MiB/sec @ 3 ghz -Alignment 2 - 0.368 bytes/cycle - 1052.31 MiB/sec @ 3 ghz -Alignment 1 - 0.368 bytes/cycle - 1052.30 MiB/sec @ 3 ghz -Alignment 0 - 0.368 bytes/cycle - 1052.31 MiB/sec @ 3 ghz -Average - 0.368 bytes/cycle - 1052.30 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 27.00 cycles/hash -Small key speed test - 2-byte keys - 30.00 cycles/hash -Small key speed test - 3-byte keys - 33.00 cycles/hash -Small key speed test - 4-byte keys - 36.49 cycles/hash -Small key speed test - 5-byte keys - 41.00 cycles/hash -Small key speed test - 6-byte keys - 42.45 cycles/hash -Small key speed test - 7-byte keys - 45.00 cycles/hash -Small key speed test - 8-byte keys - 47.90 cycles/hash -Small key speed test - 9-byte keys - 50.86 cycles/hash -Small key speed test - 10-byte keys - 53.00 cycles/hash -Small key speed test - 11-byte keys - 57.00 cycles/hash -Small key speed test - 12-byte keys - 60.00 cycles/hash -Small key speed test - 13-byte keys - 63.00 cycles/hash -Small key speed test - 14-byte keys - 66.00 cycles/hash -Small key speed test - 15-byte keys - 69.00 cycles/hash -Small key speed test - 16-byte keys - 71.00 cycles/hash -Small key speed test - 17-byte keys - 74.00 cycles/hash -Small key speed test - 18-byte keys - 76.98 cycles/hash -Small key speed test - 19-byte keys - 79.99 cycles/hash -Small key speed test - 20-byte keys - 83.00 cycles/hash -Small key speed test - 21-byte keys - 86.00 cycles/hash -Small key speed test - 22-byte keys - 88.83 cycles/hash -Small key speed test - 23-byte keys - 92.00 cycles/hash -Small key speed test - 24-byte keys - 94.51 cycles/hash -Small key speed test - 25-byte keys - 97.54 cycles/hash -Small key speed test - 26-byte keys - 100.00 cycles/hash -Small key speed test - 27-byte keys - 103.27 cycles/hash -Small key speed test - 28-byte keys - 106.00 cycles/hash -Small key speed test - 29-byte keys - 109.00 cycles/hash -Small key speed test - 30-byte keys - 112.00 cycles/hash -Small key speed test - 31-byte keys - 115.00 cycles/hash -Average 71.316 cycles/hash +Alignment 7 - 0.260 bytes/cycle - 743.86 MiB/sec @ 3 ghz +Alignment 6 - 0.260 bytes/cycle - 743.91 MiB/sec @ 3 ghz +Alignment 5 - 0.260 bytes/cycle - 743.65 MiB/sec @ 3 ghz +Alignment 4 - 0.260 bytes/cycle - 743.87 MiB/sec @ 3 ghz +Alignment 3 - 0.260 bytes/cycle - 743.75 MiB/sec @ 3 ghz +Alignment 2 - 0.260 bytes/cycle - 743.88 MiB/sec @ 3 ghz +Alignment 1 - 0.260 bytes/cycle - 743.59 MiB/sec @ 3 ghz +Alignment 0 - 0.260 bytes/cycle - 743.94 MiB/sec @ 3 ghz +Average - 0.260 bytes/cycle - 743.81 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 28.00 cycles/hash +Small key speed test - 2-byte keys - 32.00 cycles/hash +Small key speed test - 3-byte keys - 36.00 cycles/hash +Small key speed test - 4-byte keys - 39.14 cycles/hash +Small key speed test - 5-byte keys - 43.00 cycles/hash +Small key speed test - 6-byte keys - 47.00 cycles/hash +Small key speed test - 7-byte keys - 51.00 cycles/hash +Small key speed test - 8-byte keys - 55.00 cycles/hash +Small key speed test - 9-byte keys - 58.60 cycles/hash +Small key speed test - 10-byte keys - 63.00 cycles/hash +Small key speed test - 11-byte keys - 66.00 cycles/hash +Small key speed test - 12-byte keys - 69.96 cycles/hash +Small key speed test - 13-byte keys - 74.18 cycles/hash +Small key speed test - 14-byte keys - 77.80 cycles/hash +Small key speed test - 15-byte keys - 82.00 cycles/hash +Small key speed test - 16-byte keys - 85.15 cycles/hash +Small key speed test - 17-byte keys - 89.26 cycles/hash +Small key speed test - 18-byte keys - 93.00 cycles/hash +Small key speed test - 19-byte keys - 97.33 cycles/hash +Small key speed test - 20-byte keys - 101.33 cycles/hash +Small key speed test - 21-byte keys - 104.33 cycles/hash +Small key speed test - 22-byte keys - 108.34 cycles/hash +Small key speed test - 23-byte keys - 113.00 cycles/hash +Small key speed test - 24-byte keys - 116.29 cycles/hash +Small key speed test - 25-byte keys - 120.00 cycles/hash +Small key speed test - 26-byte keys - 124.28 cycles/hash +Small key speed test - 27-byte keys - 127.31 cycles/hash +Small key speed test - 28-byte keys - 132.45 cycles/hash +Small key speed test - 29-byte keys - 136.41 cycles/hash +Small key speed test - 30-byte keys - 139.86 cycles/hash +Small key speed test - 31-byte keys - 143.32 cycles/hash +Average 85.624 cycles/hash [[[ 'Hashmap' Speed Tests (when inlined) ]]] diff --git a/doc/HalfSipHash.txt b/doc/HalfSipHash.txt index fe42134a..df1c1755 100644 --- a/doc/HalfSipHash.txt +++ b/doc/HalfSipHash.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 0.264 bytes/cycle - 755.10 MiB/sec @ 3 ghz -Alignment 6 - 0.264 bytes/cycle - 755.10 MiB/sec @ 3 ghz -Alignment 5 - 0.264 bytes/cycle - 755.09 MiB/sec @ 3 ghz -Alignment 4 - 0.265 bytes/cycle - 757.39 MiB/sec @ 3 ghz -Alignment 3 - 0.264 bytes/cycle - 755.15 MiB/sec @ 3 ghz -Alignment 2 - 0.264 bytes/cycle - 755.14 MiB/sec @ 3 ghz -Alignment 1 - 0.264 bytes/cycle - 755.16 MiB/sec @ 3 ghz -Alignment 0 - 0.265 bytes/cycle - 757.37 MiB/sec @ 3 ghz -Average - 0.264 bytes/cycle - 755.69 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 61.00 cycles/hash -Small key speed test - 2-byte keys - 62.67 cycles/hash -Small key speed test - 3-byte keys - 64.00 cycles/hash -Small key speed test - 4-byte keys - 73.00 cycles/hash -Small key speed test - 5-byte keys - 72.86 cycles/hash -Small key speed test - 6-byte keys - 73.86 cycles/hash -Small key speed test - 7-byte keys - 75.00 cycles/hash -Small key speed test - 8-byte keys - 89.29 cycles/hash -Small key speed test - 9-byte keys - 89.00 cycles/hash -Small key speed test - 10-byte keys - 90.00 cycles/hash -Small key speed test - 11-byte keys - 91.00 cycles/hash -Small key speed test - 12-byte keys - 104.00 cycles/hash -Small key speed test - 13-byte keys - 103.93 cycles/hash -Small key speed test - 14-byte keys - 104.74 cycles/hash -Small key speed test - 15-byte keys - 106.00 cycles/hash -Small key speed test - 16-byte keys - 118.93 cycles/hash -Small key speed test - 17-byte keys - 118.87 cycles/hash -Small key speed test - 18-byte keys - 119.29 cycles/hash -Small key speed test - 19-byte keys - 120.98 cycles/hash -Small key speed test - 20-byte keys - 134.00 cycles/hash -Small key speed test - 21-byte keys - 134.00 cycles/hash -Small key speed test - 22-byte keys - 134.99 cycles/hash -Small key speed test - 23-byte keys - 136.00 cycles/hash -Small key speed test - 24-byte keys - 149.00 cycles/hash -Small key speed test - 25-byte keys - 149.00 cycles/hash -Small key speed test - 26-byte keys - 150.18 cycles/hash -Small key speed test - 27-byte keys - 151.00 cycles/hash -Small key speed test - 28-byte keys - 164.43 cycles/hash -Small key speed test - 29-byte keys - 164.00 cycles/hash -Small key speed test - 30-byte keys - 164.98 cycles/hash -Small key speed test - 31-byte keys - 165.96 cycles/hash -Average 114.063 cycles/hash +Alignment 7 - 0.399 bytes/cycle - 1141.70 MiB/sec @ 3 ghz +Alignment 6 - 0.399 bytes/cycle - 1141.68 MiB/sec @ 3 ghz +Alignment 5 - 0.399 bytes/cycle - 1141.70 MiB/sec @ 3 ghz +Alignment 4 - 0.399 bytes/cycle - 1141.66 MiB/sec @ 3 ghz +Alignment 3 - 0.399 bytes/cycle - 1141.35 MiB/sec @ 3 ghz +Alignment 2 - 0.399 bytes/cycle - 1141.35 MiB/sec @ 3 ghz +Alignment 1 - 0.399 bytes/cycle - 1141.36 MiB/sec @ 3 ghz +Alignment 0 - 0.399 bytes/cycle - 1141.75 MiB/sec @ 3 ghz +Average - 0.399 bytes/cycle - 1141.57 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 45.00 cycles/hash +Small key speed test - 2-byte keys - 46.00 cycles/hash +Small key speed test - 3-byte keys - 48.00 cycles/hash +Small key speed test - 4-byte keys - 52.56 cycles/hash +Small key speed test - 5-byte keys - 52.25 cycles/hash +Small key speed test - 6-byte keys - 53.00 cycles/hash +Small key speed test - 7-byte keys - 53.69 cycles/hash +Small key speed test - 8-byte keys - 63.00 cycles/hash +Small key speed test - 9-byte keys - 63.00 cycles/hash +Small key speed test - 10-byte keys - 62.58 cycles/hash +Small key speed test - 11-byte keys - 63.00 cycles/hash +Small key speed test - 12-byte keys - 73.00 cycles/hash +Small key speed test - 13-byte keys - 73.00 cycles/hash +Small key speed test - 14-byte keys - 73.31 cycles/hash +Small key speed test - 15-byte keys - 74.22 cycles/hash +Small key speed test - 16-byte keys - 82.09 cycles/hash +Small key speed test - 17-byte keys - 83.04 cycles/hash +Small key speed test - 18-byte keys - 84.00 cycles/hash +Small key speed test - 19-byte keys - 84.62 cycles/hash +Small key speed test - 20-byte keys - 92.85 cycles/hash +Small key speed test - 21-byte keys - 92.96 cycles/hash +Small key speed test - 22-byte keys - 93.14 cycles/hash +Small key speed test - 23-byte keys - 94.33 cycles/hash +Small key speed test - 24-byte keys - 103.12 cycles/hash +Small key speed test - 25-byte keys - 102.22 cycles/hash +Small key speed test - 26-byte keys - 103.42 cycles/hash +Small key speed test - 27-byte keys - 104.09 cycles/hash +Small key speed test - 28-byte keys - 113.12 cycles/hash +Small key speed test - 29-byte keys - 113.27 cycles/hash +Small key speed test - 30-byte keys - 113.16 cycles/hash +Small key speed test - 31-byte keys - 114.12 cycles/hash +Average 79.650 cycles/hash [[[ 'Hashmap' Speed Tests (when inlined) ]]] diff --git a/doc/JenkinsOOAT.txt b/doc/JenkinsOOAT.txt index 480c62e9..d291041d 100644 --- a/doc/JenkinsOOAT.txt +++ b/doc/JenkinsOOAT.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 0.158 bytes/cycle - 452.49 MiB/sec @ 3 ghz -Alignment 6 - 0.158 bytes/cycle - 452.49 MiB/sec @ 3 ghz -Alignment 5 - 0.158 bytes/cycle - 452.49 MiB/sec @ 3 ghz -Alignment 4 - 0.158 bytes/cycle - 452.49 MiB/sec @ 3 ghz -Alignment 3 - 0.158 bytes/cycle - 452.49 MiB/sec @ 3 ghz -Alignment 2 - 0.158 bytes/cycle - 452.49 MiB/sec @ 3 ghz -Alignment 1 - 0.158 bytes/cycle - 452.49 MiB/sec @ 3 ghz -Alignment 0 - 0.158 bytes/cycle - 452.49 MiB/sec @ 3 ghz -Average - 0.158 bytes/cycle - 452.49 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 46.00 cycles/hash -Small key speed test - 2-byte keys - 52.86 cycles/hash -Small key speed test - 3-byte keys - 59.00 cycles/hash -Small key speed test - 4-byte keys - 65.00 cycles/hash -Small key speed test - 5-byte keys - 71.63 cycles/hash -Small key speed test - 6-byte keys - 78.00 cycles/hash -Small key speed test - 7-byte keys - 84.00 cycles/hash -Small key speed test - 8-byte keys - 91.00 cycles/hash -Small key speed test - 9-byte keys - 97.00 cycles/hash -Small key speed test - 10-byte keys - 103.00 cycles/hash -Small key speed test - 11-byte keys - 109.00 cycles/hash -Small key speed test - 12-byte keys - 116.00 cycles/hash -Small key speed test - 13-byte keys - 122.00 cycles/hash -Small key speed test - 14-byte keys - 128.31 cycles/hash -Small key speed test - 15-byte keys - 135.00 cycles/hash -Small key speed test - 16-byte keys - 141.00 cycles/hash -Small key speed test - 17-byte keys - 147.17 cycles/hash -Small key speed test - 18-byte keys - 154.00 cycles/hash -Small key speed test - 19-byte keys - 160.00 cycles/hash -Small key speed test - 20-byte keys - 166.00 cycles/hash -Small key speed test - 21-byte keys - 173.00 cycles/hash -Small key speed test - 22-byte keys - 179.00 cycles/hash -Small key speed test - 23-byte keys - 185.00 cycles/hash -Small key speed test - 24-byte keys - 192.00 cycles/hash -Small key speed test - 25-byte keys - 198.00 cycles/hash -Small key speed test - 26-byte keys - 204.00 cycles/hash -Small key speed test - 27-byte keys - 211.00 cycles/hash -Small key speed test - 28-byte keys - 217.00 cycles/hash -Small key speed test - 29-byte keys - 223.00 cycles/hash -Small key speed test - 30-byte keys - 229.94 cycles/hash -Small key speed test - 31-byte keys - 236.00 cycles/hash -Average 141.094 cycles/hash +Alignment 7 - 0.219 bytes/cycle - 627.40 MiB/sec @ 3 ghz +Alignment 6 - 0.219 bytes/cycle - 627.58 MiB/sec @ 3 ghz +Alignment 5 - 0.219 bytes/cycle - 627.79 MiB/sec @ 3 ghz +Alignment 4 - 0.219 bytes/cycle - 627.75 MiB/sec @ 3 ghz +Alignment 3 - 0.219 bytes/cycle - 627.58 MiB/sec @ 3 ghz +Alignment 2 - 0.219 bytes/cycle - 627.73 MiB/sec @ 3 ghz +Alignment 1 - 0.219 bytes/cycle - 627.74 MiB/sec @ 3 ghz +Alignment 0 - 0.219 bytes/cycle - 627.57 MiB/sec @ 3 ghz +Average - 0.219 bytes/cycle - 627.64 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 38.65 cycles/hash +Small key speed test - 2-byte keys - 43.00 cycles/hash +Small key speed test - 3-byte keys - 47.96 cycles/hash +Small key speed test - 4-byte keys - 52.00 cycles/hash +Small key speed test - 5-byte keys - 56.99 cycles/hash +Small key speed test - 6-byte keys - 61.17 cycles/hash +Small key speed test - 7-byte keys - 66.00 cycles/hash +Small key speed test - 8-byte keys - 70.92 cycles/hash +Small key speed test - 9-byte keys - 75.00 cycles/hash +Small key speed test - 10-byte keys - 79.97 cycles/hash +Small key speed test - 11-byte keys - 84.15 cycles/hash +Small key speed test - 12-byte keys - 88.93 cycles/hash +Small key speed test - 13-byte keys - 93.00 cycles/hash +Small key speed test - 14-byte keys - 97.89 cycles/hash +Small key speed test - 15-byte keys - 102.54 cycles/hash +Small key speed test - 16-byte keys - 106.97 cycles/hash +Small key speed test - 17-byte keys - 111.47 cycles/hash +Small key speed test - 18-byte keys - 116.00 cycles/hash +Small key speed test - 19-byte keys - 120.96 cycles/hash +Small key speed test - 20-byte keys - 124.95 cycles/hash +Small key speed test - 21-byte keys - 129.94 cycles/hash +Small key speed test - 22-byte keys - 134.69 cycles/hash +Small key speed test - 23-byte keys - 138.99 cycles/hash +Small key speed test - 24-byte keys - 143.89 cycles/hash +Small key speed test - 25-byte keys - 147.94 cycles/hash +Small key speed test - 26-byte keys - 152.96 cycles/hash +Small key speed test - 27-byte keys - 156.89 cycles/hash +Small key speed test - 28-byte keys - 161.47 cycles/hash +Small key speed test - 29-byte keys - 166.07 cycles/hash +Small key speed test - 30-byte keys - 170.96 cycles/hash +Small key speed test - 31-byte keys - 175.76 cycles/hash +Average 107.036 cycles/hash [[[ 'Hashmap' Speed Tests (when inlined) ]]] diff --git a/doc/JenkinsOOAT_perl.txt b/doc/JenkinsOOAT_perl.txt index a953a64e..dc76d9c6 100644 --- a/doc/JenkinsOOAT_perl.txt +++ b/doc/JenkinsOOAT_perl.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 0.158 bytes/cycle - 452.49 MiB/sec @ 3 ghz -Alignment 6 - 0.158 bytes/cycle - 452.49 MiB/sec @ 3 ghz -Alignment 5 - 0.158 bytes/cycle - 452.49 MiB/sec @ 3 ghz -Alignment 4 - 0.158 bytes/cycle - 452.49 MiB/sec @ 3 ghz -Alignment 3 - 0.158 bytes/cycle - 452.49 MiB/sec @ 3 ghz -Alignment 2 - 0.158 bytes/cycle - 452.49 MiB/sec @ 3 ghz -Alignment 1 - 0.158 bytes/cycle - 452.49 MiB/sec @ 3 ghz -Alignment 0 - 0.158 bytes/cycle - 452.49 MiB/sec @ 3 ghz -Average - 0.158 bytes/cycle - 452.49 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 24.00 cycles/hash -Small key speed test - 2-byte keys - 30.00 cycles/hash -Small key speed test - 3-byte keys - 36.00 cycles/hash -Small key speed test - 4-byte keys - 43.00 cycles/hash -Small key speed test - 5-byte keys - 49.00 cycles/hash -Small key speed test - 6-byte keys - 55.00 cycles/hash -Small key speed test - 7-byte keys - 61.68 cycles/hash -Small key speed test - 8-byte keys - 68.00 cycles/hash -Small key speed test - 9-byte keys - 74.00 cycles/hash -Small key speed test - 10-byte keys - 80.69 cycles/hash -Small key speed test - 11-byte keys - 87.00 cycles/hash -Small key speed test - 12-byte keys - 93.00 cycles/hash -Small key speed test - 13-byte keys - 99.60 cycles/hash -Small key speed test - 14-byte keys - 106.00 cycles/hash -Small key speed test - 15-byte keys - 112.00 cycles/hash -Small key speed test - 16-byte keys - 118.33 cycles/hash -Small key speed test - 17-byte keys - 125.00 cycles/hash -Small key speed test - 18-byte keys - 131.00 cycles/hash -Small key speed test - 19-byte keys - 137.20 cycles/hash -Small key speed test - 20-byte keys - 144.00 cycles/hash -Small key speed test - 21-byte keys - 150.00 cycles/hash -Small key speed test - 22-byte keys - 156.00 cycles/hash -Small key speed test - 23-byte keys - 163.00 cycles/hash -Small key speed test - 24-byte keys - 169.00 cycles/hash -Small key speed test - 25-byte keys - 175.00 cycles/hash -Small key speed test - 26-byte keys - 182.00 cycles/hash -Small key speed test - 27-byte keys - 188.00 cycles/hash -Small key speed test - 28-byte keys - 194.00 cycles/hash -Small key speed test - 29-byte keys - 201.00 cycles/hash -Small key speed test - 30-byte keys - 207.00 cycles/hash -Small key speed test - 31-byte keys - 213.00 cycles/hash -Average 118.467 cycles/hash +Alignment 7 - 0.213 bytes/cycle - 608.08 MiB/sec @ 3 ghz +Alignment 6 - 0.213 bytes/cycle - 608.11 MiB/sec @ 3 ghz +Alignment 5 - 0.213 bytes/cycle - 608.18 MiB/sec @ 3 ghz +Alignment 4 - 0.213 bytes/cycle - 608.16 MiB/sec @ 3 ghz +Alignment 3 - 0.213 bytes/cycle - 608.08 MiB/sec @ 3 ghz +Alignment 2 - 0.213 bytes/cycle - 608.16 MiB/sec @ 3 ghz +Alignment 1 - 0.212 bytes/cycle - 607.96 MiB/sec @ 3 ghz +Alignment 0 - 0.213 bytes/cycle - 608.13 MiB/sec @ 3 ghz +Average - 0.213 bytes/cycle - 608.10 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 23.27 cycles/hash +Small key speed test - 2-byte keys - 28.00 cycles/hash +Small key speed test - 3-byte keys - 33.00 cycles/hash +Small key speed test - 4-byte keys - 37.92 cycles/hash +Small key speed test - 5-byte keys - 42.32 cycles/hash +Small key speed test - 6-byte keys - 47.00 cycles/hash +Small key speed test - 7-byte keys - 52.00 cycles/hash +Small key speed test - 8-byte keys - 56.96 cycles/hash +Small key speed test - 9-byte keys - 61.00 cycles/hash +Small key speed test - 10-byte keys - 65.96 cycles/hash +Small key speed test - 11-byte keys - 70.88 cycles/hash +Small key speed test - 12-byte keys - 75.00 cycles/hash +Small key speed test - 13-byte keys - 79.95 cycles/hash +Small key speed test - 14-byte keys - 84.92 cycles/hash +Small key speed test - 15-byte keys - 89.90 cycles/hash +Small key speed test - 16-byte keys - 93.97 cycles/hash +Small key speed test - 17-byte keys - 98.91 cycles/hash +Small key speed test - 18-byte keys - 103.85 cycles/hash +Small key speed test - 19-byte keys - 108.43 cycles/hash +Small key speed test - 20-byte keys - 112.86 cycles/hash +Small key speed test - 21-byte keys - 117.84 cycles/hash +Small key speed test - 22-byte keys - 122.00 cycles/hash +Small key speed test - 23-byte keys - 126.89 cycles/hash +Small key speed test - 24-byte keys - 131.94 cycles/hash +Small key speed test - 25-byte keys - 136.22 cycles/hash +Small key speed test - 26-byte keys - 140.87 cycles/hash +Small key speed test - 27-byte keys - 145.83 cycles/hash +Small key speed test - 28-byte keys - 150.91 cycles/hash +Small key speed test - 29-byte keys - 155.74 cycles/hash +Small key speed test - 30-byte keys - 159.94 cycles/hash +Small key speed test - 31-byte keys - 164.93 cycles/hash +Average 94.168 cycles/hash [[[ 'Hashmap' Speed Tests (when inlined) ]]] diff --git a/doc/MUM.txt b/doc/MUM.txt index 4d7e1db5..9f73b0a3 100644 --- a/doc/MUM.txt +++ b/doc/MUM.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 3.330 bytes/cycle - 9527.45 MiB/sec @ 3 ghz -Alignment 6 - 3.326 bytes/cycle - 9516.40 MiB/sec @ 3 ghz -Alignment 5 - 3.321 bytes/cycle - 9501.98 MiB/sec @ 3 ghz -Alignment 4 - 3.326 bytes/cycle - 9516.72 MiB/sec @ 3 ghz -Alignment 3 - 3.310 bytes/cycle - 9470.12 MiB/sec @ 3 ghz -Alignment 2 - 3.314 bytes/cycle - 9482.39 MiB/sec @ 3 ghz -Alignment 1 - 3.321 bytes/cycle - 9502.30 MiB/sec @ 3 ghz -Alignment 0 - 3.319 bytes/cycle - 9494.93 MiB/sec @ 3 ghz -Average - 3.321 bytes/cycle - 9501.54 MiB/sec @ 3 ghz +Alignment 7 - 3.339 bytes/cycle - 9551.53 MiB/sec @ 3 ghz +Alignment 6 - 3.343 bytes/cycle - 9563.08 MiB/sec @ 3 ghz +Alignment 5 - 3.343 bytes/cycle - 9564.38 MiB/sec @ 3 ghz +Alignment 4 - 3.343 bytes/cycle - 9564.82 MiB/sec @ 3 ghz +Alignment 3 - 3.343 bytes/cycle - 9564.31 MiB/sec @ 3 ghz +Alignment 2 - 3.348 bytes/cycle - 9579.24 MiB/sec @ 3 ghz +Alignment 1 - 3.343 bytes/cycle - 9565.79 MiB/sec @ 3 ghz +Alignment 0 - 3.341 bytes/cycle - 9558.75 MiB/sec @ 3 ghz +Average - 3.343 bytes/cycle - 9563.99 MiB/sec @ 3 ghz Small key speed test - 1-byte keys - 32.00 cycles/hash -Small key speed test - 2-byte keys - 32.55 cycles/hash -Small key speed test - 3-byte keys - 35.99 cycles/hash +Small key speed test - 2-byte keys - 32.00 cycles/hash +Small key speed test - 3-byte keys - 35.51 cycles/hash Small key speed test - 4-byte keys - 32.00 cycles/hash -Small key speed test - 5-byte keys - 33.00 cycles/hash -Small key speed test - 6-byte keys - 36.00 cycles/hash -Small key speed test - 7-byte keys - 36.96 cycles/hash -Small key speed test - 8-byte keys - 31.00 cycles/hash -Small key speed test - 9-byte keys - 32.18 cycles/hash +Small key speed test - 5-byte keys - 32.82 cycles/hash +Small key speed test - 6-byte keys - 35.33 cycles/hash +Small key speed test - 7-byte keys - 36.00 cycles/hash +Small key speed test - 8-byte keys - 30.75 cycles/hash +Small key speed test - 9-byte keys - 32.00 cycles/hash Small key speed test - 10-byte keys - 32.00 cycles/hash -Small key speed test - 11-byte keys - 45.00 cycles/hash -Small key speed test - 12-byte keys - 39.15 cycles/hash -Small key speed test - 13-byte keys - 35.40 cycles/hash -Small key speed test - 14-byte keys - 36.88 cycles/hash -Small key speed test - 15-byte keys - 38.19 cycles/hash -Small key speed test - 16-byte keys - 32.00 cycles/hash -Small key speed test - 17-byte keys - 34.00 cycles/hash -Small key speed test - 18-byte keys - 34.00 cycles/hash +Small key speed test - 11-byte keys - 36.76 cycles/hash +Small key speed test - 12-byte keys - 32.00 cycles/hash +Small key speed test - 13-byte keys - 34.73 cycles/hash +Small key speed test - 14-byte keys - 36.41 cycles/hash +Small key speed test - 15-byte keys - 37.52 cycles/hash +Small key speed test - 16-byte keys - 31.97 cycles/hash +Small key speed test - 17-byte keys - 33.78 cycles/hash +Small key speed test - 18-byte keys - 33.86 cycles/hash Small key speed test - 19-byte keys - 37.00 cycles/hash -Small key speed test - 20-byte keys - 34.00 cycles/hash -Small key speed test - 21-byte keys - 35.00 cycles/hash +Small key speed test - 20-byte keys - 33.88 cycles/hash +Small key speed test - 21-byte keys - 34.44 cycles/hash Small key speed test - 22-byte keys - 37.00 cycles/hash -Small key speed test - 23-byte keys - 38.99 cycles/hash -Small key speed test - 24-byte keys - 34.00 cycles/hash -Small key speed test - 25-byte keys - 36.00 cycles/hash -Small key speed test - 26-byte keys - 39.62 cycles/hash -Small key speed test - 27-byte keys - 39.15 cycles/hash -Small key speed test - 28-byte keys - 36.00 cycles/hash -Small key speed test - 29-byte keys - 44.82 cycles/hash -Small key speed test - 30-byte keys - 48.00 cycles/hash -Small key speed test - 31-byte keys - 49.91 cycles/hash -Average 36.703 cycles/hash +Small key speed test - 23-byte keys - 38.57 cycles/hash +Small key speed test - 24-byte keys - 33.91 cycles/hash +Small key speed test - 25-byte keys - 35.93 cycles/hash +Small key speed test - 26-byte keys - 35.97 cycles/hash +Small key speed test - 27-byte keys - 39.00 cycles/hash +Small key speed test - 28-byte keys - 35.98 cycles/hash +Small key speed test - 29-byte keys - 36.13 cycles/hash +Small key speed test - 30-byte keys - 39.33 cycles/hash +Small key speed test - 31-byte keys - 40.23 cycles/hash +Average 34.994 cycles/hash [[[ 'Hashmap' Speed Tests ]]] diff --git a/doc/MUMlow.txt b/doc/MUMlow.txt index c4dd383d..29baf416 100644 --- a/doc/MUMlow.txt +++ b/doc/MUMlow.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 2.472 bytes/cycle - 7071.12 MiB/sec @ 3 ghz -Alignment 6 - 2.471 bytes/cycle - 7069.19 MiB/sec @ 3 ghz -Alignment 5 - 2.471 bytes/cycle - 7068.85 MiB/sec @ 3 ghz -Alignment 4 - 2.472 bytes/cycle - 7071.37 MiB/sec @ 3 ghz -Alignment 3 - 2.472 bytes/cycle - 7071.19 MiB/sec @ 3 ghz -Alignment 2 - 2.471 bytes/cycle - 7069.44 MiB/sec @ 3 ghz -Alignment 1 - 2.471 bytes/cycle - 7068.58 MiB/sec @ 3 ghz -Alignment 0 - 2.622 bytes/cycle - 7502.05 MiB/sec @ 3 ghz -Average - 2.490 bytes/cycle - 7123.97 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 30.26 cycles/hash -Small key speed test - 2-byte keys - 31.00 cycles/hash -Small key speed test - 3-byte keys - 33.00 cycles/hash -Small key speed test - 4-byte keys - 31.00 cycles/hash -Small key speed test - 5-byte keys - 30.49 cycles/hash -Small key speed test - 6-byte keys - 31.00 cycles/hash -Small key speed test - 7-byte keys - 33.00 cycles/hash -Small key speed test - 8-byte keys - 39.57 cycles/hash -Small key speed test - 9-byte keys - 41.00 cycles/hash -Small key speed test - 10-byte keys - 41.00 cycles/hash -Small key speed test - 11-byte keys - 41.00 cycles/hash -Small key speed test - 12-byte keys - 41.00 cycles/hash -Small key speed test - 13-byte keys - 41.00 cycles/hash -Small key speed test - 14-byte keys - 41.00 cycles/hash -Small key speed test - 15-byte keys - 41.00 cycles/hash -Small key speed test - 16-byte keys - 41.00 cycles/hash -Small key speed test - 17-byte keys - 42.00 cycles/hash -Small key speed test - 18-byte keys - 42.00 cycles/hash -Small key speed test - 19-byte keys - 42.93 cycles/hash -Small key speed test - 20-byte keys - 42.00 cycles/hash -Small key speed test - 21-byte keys - 42.77 cycles/hash -Small key speed test - 22-byte keys - 42.93 cycles/hash -Small key speed test - 23-byte keys - 42.59 cycles/hash -Small key speed test - 24-byte keys - 42.98 cycles/hash -Small key speed test - 25-byte keys - 43.87 cycles/hash -Small key speed test - 26-byte keys - 43.95 cycles/hash -Small key speed test - 27-byte keys - 43.54 cycles/hash -Small key speed test - 28-byte keys - 43.97 cycles/hash -Small key speed test - 29-byte keys - 43.62 cycles/hash -Small key speed test - 30-byte keys - 43.55 cycles/hash -Small key speed test - 31-byte keys - 43.00 cycles/hash -Average 39.775 cycles/hash +Alignment 7 - 3.240 bytes/cycle - 9269.73 MiB/sec @ 3 ghz +Alignment 6 - 3.239 bytes/cycle - 9268.22 MiB/sec @ 3 ghz +Alignment 5 - 3.235 bytes/cycle - 9255.13 MiB/sec @ 3 ghz +Alignment 4 - 3.234 bytes/cycle - 9253.70 MiB/sec @ 3 ghz +Alignment 3 - 3.239 bytes/cycle - 9267.45 MiB/sec @ 3 ghz +Alignment 2 - 3.239 bytes/cycle - 9268.13 MiB/sec @ 3 ghz +Alignment 1 - 3.239 bytes/cycle - 9267.61 MiB/sec @ 3 ghz +Alignment 0 - 3.231 bytes/cycle - 9245.16 MiB/sec @ 3 ghz +Average - 3.237 bytes/cycle - 9261.89 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 33.00 cycles/hash +Small key speed test - 2-byte keys - 33.00 cycles/hash +Small key speed test - 3-byte keys - 36.56 cycles/hash +Small key speed test - 4-byte keys - 33.00 cycles/hash +Small key speed test - 5-byte keys - 34.00 cycles/hash +Small key speed test - 6-byte keys - 36.72 cycles/hash +Small key speed test - 7-byte keys - 37.00 cycles/hash +Small key speed test - 8-byte keys - 31.87 cycles/hash +Small key speed test - 9-byte keys - 32.99 cycles/hash +Small key speed test - 10-byte keys - 33.00 cycles/hash +Small key speed test - 11-byte keys - 37.75 cycles/hash +Small key speed test - 12-byte keys - 33.00 cycles/hash +Small key speed test - 13-byte keys - 36.00 cycles/hash +Small key speed test - 14-byte keys - 37.96 cycles/hash +Small key speed test - 15-byte keys - 39.00 cycles/hash +Small key speed test - 16-byte keys - 32.92 cycles/hash +Small key speed test - 17-byte keys - 34.99 cycles/hash +Small key speed test - 18-byte keys - 34.82 cycles/hash +Small key speed test - 19-byte keys - 38.00 cycles/hash +Small key speed test - 20-byte keys - 34.78 cycles/hash +Small key speed test - 21-byte keys - 35.87 cycles/hash +Small key speed test - 22-byte keys - 38.45 cycles/hash +Small key speed test - 23-byte keys - 39.94 cycles/hash +Small key speed test - 24-byte keys - 34.88 cycles/hash +Small key speed test - 25-byte keys - 36.99 cycles/hash +Small key speed test - 26-byte keys - 37.00 cycles/hash +Small key speed test - 27-byte keys - 40.95 cycles/hash +Small key speed test - 28-byte keys - 37.00 cycles/hash +Small key speed test - 29-byte keys - 37.26 cycles/hash +Small key speed test - 30-byte keys - 40.95 cycles/hash +Small key speed test - 31-byte keys - 41.66 cycles/hash +Average 36.171 cycles/hash [[[ 'Hashmap' Speed Tests (when inlined) ]]] diff --git a/doc/MeowHash.txt b/doc/MeowHash.txt index ffee2db4..8dbc9711 100644 --- a/doc/MeowHash.txt +++ b/doc/MeowHash.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 5.428 bytes/cycle - 15530.92 MiB/sec @ 3 ghz -Alignment 6 - 5.433 bytes/cycle - 15543.55 MiB/sec @ 3 ghz -Alignment 5 - 5.437 bytes/cycle - 15554.16 MiB/sec @ 3 ghz -Alignment 4 - 5.441 bytes/cycle - 15566.16 MiB/sec @ 3 ghz -Alignment 3 - 5.429 bytes/cycle - 15533.31 MiB/sec @ 3 ghz -Alignment 2 - 5.431 bytes/cycle - 15539.44 MiB/sec @ 3 ghz -Alignment 1 - 7.222 bytes/cycle - 20661.27 MiB/sec @ 3 ghz -Alignment 0 - 8.032 bytes/cycle - 22978.52 MiB/sec @ 3 ghz -Average - 5.982 bytes/cycle - 17113.42 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 89.44 cycles/hash -Small key speed test - 2-byte keys - 89.40 cycles/hash -Small key speed test - 3-byte keys - 89.40 cycles/hash -Small key speed test - 4-byte keys - 89.35 cycles/hash -Small key speed test - 5-byte keys - 89.30 cycles/hash -Small key speed test - 6-byte keys - 89.34 cycles/hash -Small key speed test - 7-byte keys - 89.35 cycles/hash -Small key speed test - 8-byte keys - 89.35 cycles/hash -Small key speed test - 9-byte keys - 89.36 cycles/hash -Small key speed test - 10-byte keys - 88.00 cycles/hash -Small key speed test - 11-byte keys - 89.37 cycles/hash -Small key speed test - 12-byte keys - 89.37 cycles/hash -Small key speed test - 13-byte keys - 89.34 cycles/hash -Small key speed test - 14-byte keys - 89.34 cycles/hash -Small key speed test - 15-byte keys - 89.38 cycles/hash -Small key speed test - 16-byte keys - 88.29 cycles/hash -Small key speed test - 17-byte keys - 88.32 cycles/hash -Small key speed test - 18-byte keys - 88.32 cycles/hash -Small key speed test - 19-byte keys - 88.32 cycles/hash -Small key speed test - 20-byte keys - 88.33 cycles/hash -Small key speed test - 21-byte keys - 88.34 cycles/hash -Small key speed test - 22-byte keys - 88.40 cycles/hash -Small key speed test - 23-byte keys - 88.29 cycles/hash -Small key speed test - 24-byte keys - 88.37 cycles/hash -Small key speed test - 25-byte keys - 88.29 cycles/hash -Small key speed test - 26-byte keys - 88.36 cycles/hash -Small key speed test - 27-byte keys - 88.28 cycles/hash -Small key speed test - 28-byte keys - 88.32 cycles/hash -Small key speed test - 29-byte keys - 88.32 cycles/hash -Small key speed test - 30-byte keys - 88.36 cycles/hash -Small key speed test - 31-byte keys - 88.34 cycles/hash -Average 88.785 cycles/hash +Alignment 7 - 9.973 bytes/cycle - 28532.24 MiB/sec @ 3 ghz +Alignment 6 - 10.000 bytes/cycle - 28609.17 MiB/sec @ 3 ghz +Alignment 5 - 10.056 bytes/cycle - 28769.18 MiB/sec @ 3 ghz +Alignment 4 - 10.059 bytes/cycle - 28779.09 MiB/sec @ 3 ghz +Alignment 3 - 10.004 bytes/cycle - 28620.99 MiB/sec @ 3 ghz +Alignment 2 - 9.988 bytes/cycle - 28575.80 MiB/sec @ 3 ghz +Alignment 1 - 11.618 bytes/cycle - 33240.13 MiB/sec @ 3 ghz +Alignment 0 - 12.104 bytes/cycle - 34628.61 MiB/sec @ 3 ghz +Average - 10.475 bytes/cycle - 29969.40 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 65.28 cycles/hash +Small key speed test - 2-byte keys - 64.85 cycles/hash +Small key speed test - 3-byte keys - 65.25 cycles/hash +Small key speed test - 4-byte keys - 65.22 cycles/hash +Small key speed test - 5-byte keys - 65.31 cycles/hash +Small key speed test - 6-byte keys - 65.18 cycles/hash +Small key speed test - 7-byte keys - 65.26 cycles/hash +Small key speed test - 8-byte keys - 65.19 cycles/hash +Small key speed test - 9-byte keys - 65.29 cycles/hash +Small key speed test - 10-byte keys - 65.32 cycles/hash +Small key speed test - 11-byte keys - 65.17 cycles/hash +Small key speed test - 12-byte keys - 65.27 cycles/hash +Small key speed test - 13-byte keys - 65.25 cycles/hash +Small key speed test - 14-byte keys - 65.22 cycles/hash +Small key speed test - 15-byte keys - 65.29 cycles/hash +Small key speed test - 16-byte keys - 65.00 cycles/hash +Small key speed test - 17-byte keys - 64.67 cycles/hash +Small key speed test - 18-byte keys - 64.73 cycles/hash +Small key speed test - 19-byte keys - 64.69 cycles/hash +Small key speed test - 20-byte keys - 64.72 cycles/hash +Small key speed test - 21-byte keys - 64.70 cycles/hash +Small key speed test - 22-byte keys - 64.67 cycles/hash +Small key speed test - 23-byte keys - 64.68 cycles/hash +Small key speed test - 24-byte keys - 64.65 cycles/hash +Small key speed test - 25-byte keys - 64.66 cycles/hash +Small key speed test - 26-byte keys - 64.73 cycles/hash +Small key speed test - 27-byte keys - 64.67 cycles/hash +Small key speed test - 28-byte keys - 64.71 cycles/hash +Small key speed test - 29-byte keys - 64.63 cycles/hash +Small key speed test - 30-byte keys - 64.69 cycles/hash +Small key speed test - 31-byte keys - 64.69 cycles/hash +Average 64.956 cycles/hash [[[ 'Hashmap' Speed Tests ]]] diff --git a/doc/MeowHash32low.txt b/doc/MeowHash32low.txt index cd01f2ba..45b83603 100644 --- a/doc/MeowHash32low.txt +++ b/doc/MeowHash32low.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 5.432 bytes/cycle - 15540.24 MiB/sec @ 3 ghz -Alignment 6 - 5.428 bytes/cycle - 15530.48 MiB/sec @ 3 ghz -Alignment 5 - 5.433 bytes/cycle - 15544.28 MiB/sec @ 3 ghz -Alignment 4 - 5.431 bytes/cycle - 15539.57 MiB/sec @ 3 ghz -Alignment 3 - 5.434 bytes/cycle - 15545.51 MiB/sec @ 3 ghz -Alignment 2 - 5.435 bytes/cycle - 15550.53 MiB/sec @ 3 ghz -Alignment 1 - 7.227 bytes/cycle - 20677.69 MiB/sec @ 3 ghz -Alignment 0 - 8.056 bytes/cycle - 23049.35 MiB/sec @ 3 ghz -Average - 5.985 bytes/cycle - 17122.21 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 89.38 cycles/hash -Small key speed test - 2-byte keys - 89.30 cycles/hash -Small key speed test - 3-byte keys - 89.27 cycles/hash -Small key speed test - 4-byte keys - 89.37 cycles/hash -Small key speed test - 5-byte keys - 89.28 cycles/hash -Small key speed test - 6-byte keys - 89.26 cycles/hash -Small key speed test - 7-byte keys - 89.32 cycles/hash -Small key speed test - 8-byte keys - 89.30 cycles/hash -Small key speed test - 9-byte keys - 89.36 cycles/hash -Small key speed test - 10-byte keys - 89.27 cycles/hash -Small key speed test - 11-byte keys - 89.33 cycles/hash -Small key speed test - 12-byte keys - 89.30 cycles/hash -Small key speed test - 13-byte keys - 89.36 cycles/hash -Small key speed test - 14-byte keys - 89.36 cycles/hash -Small key speed test - 15-byte keys - 89.37 cycles/hash -Small key speed test - 16-byte keys - 88.24 cycles/hash -Small key speed test - 17-byte keys - 88.25 cycles/hash -Small key speed test - 18-byte keys - 88.32 cycles/hash -Small key speed test - 19-byte keys - 88.38 cycles/hash -Small key speed test - 20-byte keys - 88.22 cycles/hash -Small key speed test - 21-byte keys - 88.34 cycles/hash -Small key speed test - 22-byte keys - 88.34 cycles/hash -Small key speed test - 23-byte keys - 88.45 cycles/hash -Small key speed test - 24-byte keys - 88.34 cycles/hash -Small key speed test - 25-byte keys - 88.30 cycles/hash -Small key speed test - 26-byte keys - 88.33 cycles/hash -Small key speed test - 27-byte keys - 88.31 cycles/hash -Small key speed test - 28-byte keys - 88.35 cycles/hash -Small key speed test - 29-byte keys - 88.29 cycles/hash -Small key speed test - 30-byte keys - 88.36 cycles/hash -Small key speed test - 31-byte keys - 88.41 cycles/hash -Average 88.808 cycles/hash +Alignment 7 - 8.257 bytes/cycle - 23624.60 MiB/sec @ 3 ghz +Alignment 6 - 8.258 bytes/cycle - 23625.84 MiB/sec @ 3 ghz +Alignment 5 - 8.297 bytes/cycle - 23738.71 MiB/sec @ 3 ghz +Alignment 4 - 8.303 bytes/cycle - 23754.63 MiB/sec @ 3 ghz +Alignment 3 - 8.964 bytes/cycle - 25645.24 MiB/sec @ 3 ghz +Alignment 2 - 9.884 bytes/cycle - 28277.87 MiB/sec @ 3 ghz +Alignment 1 - 11.448 bytes/cycle - 32752.23 MiB/sec @ 3 ghz +Alignment 0 - 11.932 bytes/cycle - 34137.50 MiB/sec @ 3 ghz +Average - 9.418 bytes/cycle - 26944.58 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 66.06 cycles/hash +Small key speed test - 2-byte keys - 66.11 cycles/hash +Small key speed test - 3-byte keys - 66.01 cycles/hash +Small key speed test - 4-byte keys - 66.08 cycles/hash +Small key speed test - 5-byte keys - 66.09 cycles/hash +Small key speed test - 6-byte keys - 66.07 cycles/hash +Small key speed test - 7-byte keys - 65.96 cycles/hash +Small key speed test - 8-byte keys - 66.07 cycles/hash +Small key speed test - 9-byte keys - 66.16 cycles/hash +Small key speed test - 10-byte keys - 66.13 cycles/hash +Small key speed test - 11-byte keys - 66.12 cycles/hash +Small key speed test - 12-byte keys - 66.14 cycles/hash +Small key speed test - 13-byte keys - 66.15 cycles/hash +Small key speed test - 14-byte keys - 66.16 cycles/hash +Small key speed test - 15-byte keys - 66.14 cycles/hash +Small key speed test - 16-byte keys - 65.98 cycles/hash +Small key speed test - 17-byte keys - 65.80 cycles/hash +Small key speed test - 18-byte keys - 65.79 cycles/hash +Small key speed test - 19-byte keys - 65.81 cycles/hash +Small key speed test - 20-byte keys - 65.84 cycles/hash +Small key speed test - 21-byte keys - 65.75 cycles/hash +Small key speed test - 22-byte keys - 65.77 cycles/hash +Small key speed test - 23-byte keys - 65.75 cycles/hash +Small key speed test - 24-byte keys - 65.78 cycles/hash +Small key speed test - 25-byte keys - 65.79 cycles/hash +Small key speed test - 26-byte keys - 65.79 cycles/hash +Small key speed test - 27-byte keys - 65.86 cycles/hash +Small key speed test - 28-byte keys - 65.87 cycles/hash +Small key speed test - 29-byte keys - 65.79 cycles/hash +Small key speed test - 30-byte keys - 65.77 cycles/hash +Small key speed test - 31-byte keys - 65.85 cycles/hash +Average 65.949 cycles/hash [[[ 'Hashmap' Speed Tests ]]] diff --git a/doc/MeowHash64low.txt b/doc/MeowHash64low.txt index dd2623f1..c633bb98 100644 --- a/doc/MeowHash64low.txt +++ b/doc/MeowHash64low.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 5.439 bytes/cycle - 15560.67 MiB/sec @ 3 ghz -Alignment 6 - 5.402 bytes/cycle - 15455.79 MiB/sec @ 3 ghz -Alignment 5 - 5.431 bytes/cycle - 15537.15 MiB/sec @ 3 ghz -Alignment 4 - 5.431 bytes/cycle - 15536.88 MiB/sec @ 3 ghz -Alignment 3 - 5.410 bytes/cycle - 15479.08 MiB/sec @ 3 ghz -Alignment 2 - 5.420 bytes/cycle - 15505.53 MiB/sec @ 3 ghz -Alignment 1 - 7.239 bytes/cycle - 20711.16 MiB/sec @ 3 ghz -Alignment 0 - 8.036 bytes/cycle - 22989.92 MiB/sec @ 3 ghz -Average - 5.976 bytes/cycle - 17097.02 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 89.46 cycles/hash -Small key speed test - 2-byte keys - 89.43 cycles/hash -Small key speed test - 3-byte keys - 89.38 cycles/hash -Small key speed test - 4-byte keys - 89.26 cycles/hash -Small key speed test - 5-byte keys - 89.50 cycles/hash -Small key speed test - 6-byte keys - 89.42 cycles/hash -Small key speed test - 7-byte keys - 89.40 cycles/hash -Small key speed test - 8-byte keys - 89.35 cycles/hash -Small key speed test - 9-byte keys - 89.29 cycles/hash -Small key speed test - 10-byte keys - 89.34 cycles/hash -Small key speed test - 11-byte keys - 89.27 cycles/hash -Small key speed test - 12-byte keys - 89.23 cycles/hash -Small key speed test - 13-byte keys - 89.35 cycles/hash -Small key speed test - 14-byte keys - 89.32 cycles/hash -Small key speed test - 15-byte keys - 89.27 cycles/hash -Small key speed test - 16-byte keys - 88.34 cycles/hash -Small key speed test - 17-byte keys - 88.33 cycles/hash -Small key speed test - 18-byte keys - 88.30 cycles/hash -Small key speed test - 19-byte keys - 88.35 cycles/hash -Small key speed test - 20-byte keys - 88.34 cycles/hash -Small key speed test - 21-byte keys - 88.29 cycles/hash -Small key speed test - 22-byte keys - 88.51 cycles/hash -Small key speed test - 23-byte keys - 88.34 cycles/hash -Small key speed test - 24-byte keys - 88.31 cycles/hash -Small key speed test - 25-byte keys - 88.43 cycles/hash -Small key speed test - 26-byte keys - 88.32 cycles/hash -Small key speed test - 27-byte keys - 88.32 cycles/hash -Small key speed test - 28-byte keys - 88.31 cycles/hash -Small key speed test - 29-byte keys - 88.31 cycles/hash -Small key speed test - 30-byte keys - 88.65 cycles/hash -Small key speed test - 31-byte keys - 88.29 cycles/hash -Average 88.839 cycles/hash +Alignment 7 - 9.806 bytes/cycle - 28054.74 MiB/sec @ 3 ghz +Alignment 6 - 9.833 bytes/cycle - 28133.33 MiB/sec @ 3 ghz +Alignment 5 - 9.893 bytes/cycle - 28302.81 MiB/sec @ 3 ghz +Alignment 4 - 9.899 bytes/cycle - 28320.98 MiB/sec @ 3 ghz +Alignment 3 - 9.836 bytes/cycle - 28140.45 MiB/sec @ 3 ghz +Alignment 2 - 9.841 bytes/cycle - 28155.28 MiB/sec @ 3 ghz +Alignment 1 - 11.438 bytes/cycle - 32723.66 MiB/sec @ 3 ghz +Alignment 0 - 11.903 bytes/cycle - 34053.46 MiB/sec @ 3 ghz +Average - 10.306 bytes/cycle - 29485.59 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 66.19 cycles/hash +Small key speed test - 2-byte keys - 66.14 cycles/hash +Small key speed test - 3-byte keys - 66.12 cycles/hash +Small key speed test - 4-byte keys - 66.07 cycles/hash +Small key speed test - 5-byte keys - 66.13 cycles/hash +Small key speed test - 6-byte keys - 66.21 cycles/hash +Small key speed test - 7-byte keys - 66.10 cycles/hash +Small key speed test - 8-byte keys - 66.11 cycles/hash +Small key speed test - 9-byte keys - 66.12 cycles/hash +Small key speed test - 10-byte keys - 66.18 cycles/hash +Small key speed test - 11-byte keys - 66.09 cycles/hash +Small key speed test - 12-byte keys - 66.09 cycles/hash +Small key speed test - 13-byte keys - 66.17 cycles/hash +Small key speed test - 14-byte keys - 66.18 cycles/hash +Small key speed test - 15-byte keys - 66.19 cycles/hash +Small key speed test - 16-byte keys - 65.97 cycles/hash +Small key speed test - 17-byte keys - 65.86 cycles/hash +Small key speed test - 18-byte keys - 65.78 cycles/hash +Small key speed test - 19-byte keys - 65.83 cycles/hash +Small key speed test - 20-byte keys - 65.81 cycles/hash +Small key speed test - 21-byte keys - 65.77 cycles/hash +Small key speed test - 22-byte keys - 65.86 cycles/hash +Small key speed test - 23-byte keys - 65.82 cycles/hash +Small key speed test - 24-byte keys - 65.80 cycles/hash +Small key speed test - 25-byte keys - 65.85 cycles/hash +Small key speed test - 26-byte keys - 65.87 cycles/hash +Small key speed test - 27-byte keys - 65.84 cycles/hash +Small key speed test - 28-byte keys - 65.82 cycles/hash +Small key speed test - 29-byte keys - 65.79 cycles/hash +Small key speed test - 30-byte keys - 65.84 cycles/hash +Small key speed test - 31-byte keys - 65.83 cycles/hash +Average 65.982 cycles/hash [[[ 'Hashmap' Speed Tests ]]] diff --git a/doc/MicroOAAT.txt b/doc/MicroOAAT.txt index 005a3868..8c47099e 100644 --- a/doc/MicroOAAT.txt +++ b/doc/MicroOAAT.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 0.342 bytes/cycle - 978.12 MiB/sec @ 3 ghz -Alignment 6 - 0.342 bytes/cycle - 977.98 MiB/sec @ 3 ghz -Alignment 5 - 0.342 bytes/cycle - 978.01 MiB/sec @ 3 ghz -Alignment 4 - 0.342 bytes/cycle - 977.96 MiB/sec @ 3 ghz -Alignment 3 - 0.342 bytes/cycle - 978.00 MiB/sec @ 3 ghz -Alignment 2 - 0.342 bytes/cycle - 977.92 MiB/sec @ 3 ghz -Alignment 1 - 0.342 bytes/cycle - 977.97 MiB/sec @ 3 ghz -Alignment 0 - 0.342 bytes/cycle - 977.96 MiB/sec @ 3 ghz -Average - 0.342 bytes/cycle - 977.99 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 16.00 cycles/hash -Small key speed test - 2-byte keys - 18.00 cycles/hash -Small key speed test - 3-byte keys - 21.54 cycles/hash -Small key speed test - 4-byte keys - 24.00 cycles/hash -Small key speed test - 5-byte keys - 27.00 cycles/hash -Small key speed test - 6-byte keys - 30.00 cycles/hash -Small key speed test - 7-byte keys - 33.00 cycles/hash -Small key speed test - 8-byte keys - 37.00 cycles/hash -Small key speed test - 9-byte keys - 40.00 cycles/hash -Small key speed test - 10-byte keys - 42.19 cycles/hash -Small key speed test - 11-byte keys - 45.00 cycles/hash -Small key speed test - 12-byte keys - 48.00 cycles/hash -Small key speed test - 13-byte keys - 51.00 cycles/hash -Small key speed test - 14-byte keys - 54.00 cycles/hash -Small key speed test - 15-byte keys - 57.00 cycles/hash -Small key speed test - 16-byte keys - 60.00 cycles/hash -Small key speed test - 17-byte keys - 63.00 cycles/hash -Small key speed test - 18-byte keys - 66.00 cycles/hash -Small key speed test - 19-byte keys - 69.98 cycles/hash -Small key speed test - 20-byte keys - 72.95 cycles/hash -Small key speed test - 21-byte keys - 74.99 cycles/hash -Small key speed test - 22-byte keys - 77.98 cycles/hash -Small key speed test - 23-byte keys - 80.52 cycles/hash -Small key speed test - 24-byte keys - 83.00 cycles/hash -Small key speed test - 25-byte keys - 86.00 cycles/hash -Small key speed test - 26-byte keys - 89.00 cycles/hash -Small key speed test - 27-byte keys - 92.00 cycles/hash -Small key speed test - 28-byte keys - 95.31 cycles/hash -Small key speed test - 29-byte keys - 98.98 cycles/hash -Small key speed test - 30-byte keys - 101.99 cycles/hash -Small key speed test - 31-byte keys - 104.88 cycles/hash -Average 60.010 cycles/hash +Alignment 7 - 0.212 bytes/cycle - 607.03 MiB/sec @ 3 ghz +Alignment 6 - 0.227 bytes/cycle - 648.21 MiB/sec @ 3 ghz +Alignment 5 - 0.254 bytes/cycle - 726.20 MiB/sec @ 3 ghz +Alignment 4 - 0.254 bytes/cycle - 725.66 MiB/sec @ 3 ghz +Alignment 3 - 0.254 bytes/cycle - 726.06 MiB/sec @ 3 ghz +Alignment 2 - 0.254 bytes/cycle - 725.85 MiB/sec @ 3 ghz +Alignment 1 - 0.254 bytes/cycle - 725.86 MiB/sec @ 3 ghz +Alignment 0 - 0.254 bytes/cycle - 725.91 MiB/sec @ 3 ghz +Average - 0.245 bytes/cycle - 701.35 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 18.00 cycles/hash +Small key speed test - 2-byte keys - 22.00 cycles/hash +Small key speed test - 3-byte keys - 26.00 cycles/hash +Small key speed test - 4-byte keys - 30.00 cycles/hash +Small key speed test - 5-byte keys - 34.00 cycles/hash +Small key speed test - 6-byte keys - 38.00 cycles/hash +Small key speed test - 7-byte keys - 42.00 cycles/hash +Small key speed test - 8-byte keys - 45.17 cycles/hash +Small key speed test - 9-byte keys - 49.16 cycles/hash +Small key speed test - 10-byte keys - 53.83 cycles/hash +Small key speed test - 11-byte keys - 57.99 cycles/hash +Small key speed test - 12-byte keys - 61.00 cycles/hash +Small key speed test - 13-byte keys - 65.00 cycles/hash +Small key speed test - 14-byte keys - 69.77 cycles/hash +Small key speed test - 15-byte keys - 73.00 cycles/hash +Small key speed test - 16-byte keys - 76.96 cycles/hash +Small key speed test - 17-byte keys - 80.66 cycles/hash +Small key speed test - 18-byte keys - 84.00 cycles/hash +Small key speed test - 19-byte keys - 88.12 cycles/hash +Small key speed test - 20-byte keys - 92.00 cycles/hash +Small key speed test - 21-byte keys - 96.58 cycles/hash +Small key speed test - 22-byte keys - 100.00 cycles/hash +Small key speed test - 23-byte keys - 103.98 cycles/hash +Small key speed test - 24-byte keys - 107.87 cycles/hash +Small key speed test - 25-byte keys - 111.88 cycles/hash +Small key speed test - 26-byte keys - 115.88 cycles/hash +Small key speed test - 27-byte keys - 118.86 cycles/hash +Small key speed test - 28-byte keys - 123.09 cycles/hash +Small key speed test - 29-byte keys - 126.27 cycles/hash +Small key speed test - 30-byte keys - 130.96 cycles/hash +Small key speed test - 31-byte keys - 135.00 cycles/hash +Average 76.678 cycles/hash [[[ 'Hashmap' Speed Tests (when inlined) ]]] diff --git a/doc/Murmur1.txt b/doc/Murmur1.txt index 60fed5f1..32369414 100644 --- a/doc/Murmur1.txt +++ b/doc/Murmur1.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 0.630 bytes/cycle - 1802.98 MiB/sec @ 3 ghz -Alignment 6 - 0.630 bytes/cycle - 1802.98 MiB/sec @ 3 ghz -Alignment 5 - 0.630 bytes/cycle - 1802.98 MiB/sec @ 3 ghz -Alignment 4 - 0.633 bytes/cycle - 1809.77 MiB/sec @ 3 ghz -Alignment 3 - 0.630 bytes/cycle - 1802.97 MiB/sec @ 3 ghz -Alignment 2 - 0.630 bytes/cycle - 1802.97 MiB/sec @ 3 ghz -Alignment 1 - 0.630 bytes/cycle - 1802.97 MiB/sec @ 3 ghz -Alignment 0 - 0.633 bytes/cycle - 1809.77 MiB/sec @ 3 ghz -Average - 0.631 bytes/cycle - 1804.67 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 30.00 cycles/hash -Small key speed test - 2-byte keys - 31.00 cycles/hash -Small key speed test - 3-byte keys - 32.00 cycles/hash -Small key speed test - 4-byte keys - 29.00 cycles/hash -Small key speed test - 5-byte keys - 35.82 cycles/hash -Small key speed test - 6-byte keys - 37.00 cycles/hash -Small key speed test - 7-byte keys - 37.00 cycles/hash -Small key speed test - 8-byte keys - 35.00 cycles/hash -Small key speed test - 9-byte keys - 42.00 cycles/hash -Small key speed test - 10-byte keys - 42.97 cycles/hash -Small key speed test - 11-byte keys - 44.00 cycles/hash -Small key speed test - 12-byte keys - 42.00 cycles/hash -Small key speed test - 13-byte keys - 48.00 cycles/hash -Small key speed test - 14-byte keys - 49.00 cycles/hash -Small key speed test - 15-byte keys - 50.00 cycles/hash -Small key speed test - 16-byte keys - 48.00 cycles/hash -Small key speed test - 17-byte keys - 55.00 cycles/hash -Small key speed test - 18-byte keys - 55.69 cycles/hash -Small key speed test - 19-byte keys - 56.00 cycles/hash -Small key speed test - 20-byte keys - 54.89 cycles/hash -Small key speed test - 21-byte keys - 61.88 cycles/hash -Small key speed test - 22-byte keys - 62.00 cycles/hash -Small key speed test - 23-byte keys - 62.60 cycles/hash -Small key speed test - 24-byte keys - 61.00 cycles/hash -Small key speed test - 25-byte keys - 67.00 cycles/hash -Small key speed test - 26-byte keys - 68.00 cycles/hash -Small key speed test - 27-byte keys - 69.00 cycles/hash -Small key speed test - 28-byte keys - 67.00 cycles/hash -Small key speed test - 29-byte keys - 74.00 cycles/hash -Small key speed test - 30-byte keys - 74.86 cycles/hash -Small key speed test - 31-byte keys - 75.00 cycles/hash -Average 51.507 cycles/hash +Alignment 7 - 0.709 bytes/cycle - 2027.61 MiB/sec @ 3 ghz +Alignment 6 - 0.709 bytes/cycle - 2027.63 MiB/sec @ 3 ghz +Alignment 5 - 0.709 bytes/cycle - 2027.57 MiB/sec @ 3 ghz +Alignment 4 - 0.709 bytes/cycle - 2028.28 MiB/sec @ 3 ghz +Alignment 3 - 0.709 bytes/cycle - 2027.52 MiB/sec @ 3 ghz +Alignment 2 - 0.709 bytes/cycle - 2027.68 MiB/sec @ 3 ghz +Alignment 1 - 0.709 bytes/cycle - 2028.47 MiB/sec @ 3 ghz +Alignment 0 - 0.709 bytes/cycle - 2028.03 MiB/sec @ 3 ghz +Average - 0.709 bytes/cycle - 2027.85 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 28.00 cycles/hash +Small key speed test - 2-byte keys - 30.00 cycles/hash +Small key speed test - 3-byte keys - 31.59 cycles/hash +Small key speed test - 4-byte keys - 28.00 cycles/hash +Small key speed test - 5-byte keys - 34.71 cycles/hash +Small key speed test - 6-byte keys - 35.00 cycles/hash +Small key speed test - 7-byte keys - 36.00 cycles/hash +Small key speed test - 8-byte keys - 34.00 cycles/hash +Small key speed test - 9-byte keys - 39.57 cycles/hash +Small key speed test - 10-byte keys - 41.00 cycles/hash +Small key speed test - 11-byte keys - 42.00 cycles/hash +Small key speed test - 12-byte keys - 39.98 cycles/hash +Small key speed test - 13-byte keys - 45.16 cycles/hash +Small key speed test - 14-byte keys - 47.00 cycles/hash +Small key speed test - 15-byte keys - 47.97 cycles/hash +Small key speed test - 16-byte keys - 45.26 cycles/hash +Small key speed test - 17-byte keys - 51.00 cycles/hash +Small key speed test - 18-byte keys - 52.00 cycles/hash +Small key speed test - 19-byte keys - 53.00 cycles/hash +Small key speed test - 20-byte keys - 50.99 cycles/hash +Small key speed test - 21-byte keys - 57.00 cycles/hash +Small key speed test - 22-byte keys - 57.72 cycles/hash +Small key speed test - 23-byte keys - 58.79 cycles/hash +Small key speed test - 24-byte keys - 56.50 cycles/hash +Small key speed test - 25-byte keys - 63.00 cycles/hash +Small key speed test - 26-byte keys - 63.82 cycles/hash +Small key speed test - 27-byte keys - 64.90 cycles/hash +Small key speed test - 28-byte keys - 62.00 cycles/hash +Small key speed test - 29-byte keys - 67.93 cycles/hash +Small key speed test - 30-byte keys - 69.00 cycles/hash +Small key speed test - 31-byte keys - 70.84 cycles/hash +Average 48.507 cycles/hash [[[ 'Hashmap' Speed Tests ]]] diff --git a/doc/Murmur2.txt b/doc/Murmur2.txt index 7fa08087..41e1f60e 100644 --- a/doc/Murmur2.txt +++ b/doc/Murmur2.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 1.098 bytes/cycle - 3140.88 MiB/sec @ 3 ghz -Alignment 6 - 1.098 bytes/cycle - 3140.88 MiB/sec @ 3 ghz -Alignment 5 - 1.098 bytes/cycle - 3140.88 MiB/sec @ 3 ghz -Alignment 4 - 1.106 bytes/cycle - 3165.21 MiB/sec @ 3 ghz -Alignment 3 - 1.098 bytes/cycle - 3140.87 MiB/sec @ 3 ghz -Alignment 2 - 1.098 bytes/cycle - 3140.86 MiB/sec @ 3 ghz -Alignment 1 - 1.098 bytes/cycle - 3140.86 MiB/sec @ 3 ghz -Alignment 0 - 1.106 bytes/cycle - 3165.22 MiB/sec @ 3 ghz -Average - 1.100 bytes/cycle - 3146.96 MiB/sec @ 3 ghz +Alignment 7 - 1.080 bytes/cycle - 3088.87 MiB/sec @ 3 ghz +Alignment 6 - 1.080 bytes/cycle - 3089.36 MiB/sec @ 3 ghz +Alignment 5 - 1.080 bytes/cycle - 3088.91 MiB/sec @ 3 ghz +Alignment 4 - 1.080 bytes/cycle - 3089.31 MiB/sec @ 3 ghz +Alignment 3 - 1.080 bytes/cycle - 3089.64 MiB/sec @ 3 ghz +Alignment 2 - 1.079 bytes/cycle - 3087.67 MiB/sec @ 3 ghz +Alignment 1 - 1.080 bytes/cycle - 3089.57 MiB/sec @ 3 ghz +Alignment 0 - 1.080 bytes/cycle - 3090.11 MiB/sec @ 3 ghz +Average - 1.080 bytes/cycle - 3089.18 MiB/sec @ 3 ghz Small key speed test - 1-byte keys - 23.00 cycles/hash -Small key speed test - 2-byte keys - 24.00 cycles/hash -Small key speed test - 3-byte keys - 25.00 cycles/hash +Small key speed test - 2-byte keys - 25.00 cycles/hash +Small key speed test - 3-byte keys - 26.00 cycles/hash Small key speed test - 4-byte keys - 28.00 cycles/hash -Small key speed test - 5-byte keys - 31.00 cycles/hash -Small key speed test - 6-byte keys - 32.00 cycles/hash -Small key speed test - 7-byte keys - 33.00 cycles/hash -Small key speed test - 8-byte keys - 31.11 cycles/hash -Small key speed test - 9-byte keys - 35.00 cycles/hash -Small key speed test - 10-byte keys - 36.00 cycles/hash -Small key speed test - 11-byte keys - 37.00 cycles/hash -Small key speed test - 12-byte keys - 35.00 cycles/hash -Small key speed test - 13-byte keys - 39.00 cycles/hash -Small key speed test - 14-byte keys - 40.00 cycles/hash +Small key speed test - 5-byte keys - 32.00 cycles/hash +Small key speed test - 6-byte keys - 32.34 cycles/hash +Small key speed test - 7-byte keys - 33.12 cycles/hash +Small key speed test - 8-byte keys - 31.93 cycles/hash +Small key speed test - 9-byte keys - 36.00 cycles/hash +Small key speed test - 10-byte keys - 37.00 cycles/hash +Small key speed test - 11-byte keys - 37.80 cycles/hash +Small key speed test - 12-byte keys - 36.96 cycles/hash +Small key speed test - 13-byte keys - 39.42 cycles/hash +Small key speed test - 14-byte keys - 40.53 cycles/hash Small key speed test - 15-byte keys - 41.00 cycles/hash -Small key speed test - 16-byte keys - 39.00 cycles/hash -Small key speed test - 17-byte keys - 43.00 cycles/hash -Small key speed test - 18-byte keys - 43.67 cycles/hash -Small key speed test - 19-byte keys - 44.68 cycles/hash +Small key speed test - 16-byte keys - 39.85 cycles/hash +Small key speed test - 17-byte keys - 43.13 cycles/hash +Small key speed test - 18-byte keys - 44.00 cycles/hash +Small key speed test - 19-byte keys - 46.00 cycles/hash Small key speed test - 20-byte keys - 43.00 cycles/hash -Small key speed test - 21-byte keys - 46.00 cycles/hash -Small key speed test - 22-byte keys - 47.00 cycles/hash -Small key speed test - 23-byte keys - 48.00 cycles/hash -Small key speed test - 24-byte keys - 46.00 cycles/hash -Small key speed test - 25-byte keys - 50.00 cycles/hash -Small key speed test - 26-byte keys - 51.00 cycles/hash -Small key speed test - 27-byte keys - 52.00 cycles/hash -Small key speed test - 28-byte keys - 50.00 cycles/hash -Small key speed test - 29-byte keys - 53.74 cycles/hash +Small key speed test - 21-byte keys - 47.00 cycles/hash +Small key speed test - 22-byte keys - 48.00 cycles/hash +Small key speed test - 23-byte keys - 48.94 cycles/hash +Small key speed test - 24-byte keys - 47.00 cycles/hash +Small key speed test - 25-byte keys - 50.61 cycles/hash +Small key speed test - 26-byte keys - 51.70 cycles/hash +Small key speed test - 27-byte keys - 52.76 cycles/hash +Small key speed test - 28-byte keys - 50.70 cycles/hash +Small key speed test - 29-byte keys - 54.00 cycles/hash Small key speed test - 30-byte keys - 55.00 cycles/hash Small key speed test - 31-byte keys - 56.00 cycles/hash -Average 40.587 cycles/hash +Average 41.219 cycles/hash [[[ 'Hashmap' Speed Tests (when inlined) ]]] diff --git a/doc/Murmur2A.txt b/doc/Murmur2A.txt index 4de19789..f58330c3 100644 --- a/doc/Murmur2A.txt +++ b/doc/Murmur2A.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 1.098 bytes/cycle - 3140.64 MiB/sec @ 3 ghz -Alignment 6 - 1.098 bytes/cycle - 3140.65 MiB/sec @ 3 ghz -Alignment 5 - 1.098 bytes/cycle - 3140.65 MiB/sec @ 3 ghz -Alignment 4 - 1.106 bytes/cycle - 3165.26 MiB/sec @ 3 ghz -Alignment 3 - 1.098 bytes/cycle - 3140.64 MiB/sec @ 3 ghz -Alignment 2 - 1.098 bytes/cycle - 3140.64 MiB/sec @ 3 ghz -Alignment 1 - 1.098 bytes/cycle - 3140.65 MiB/sec @ 3 ghz -Alignment 0 - 1.106 bytes/cycle - 3165.27 MiB/sec @ 3 ghz -Average - 1.100 bytes/cycle - 3146.80 MiB/sec @ 3 ghz +Alignment 7 - 1.078 bytes/cycle - 3084.97 MiB/sec @ 3 ghz +Alignment 6 - 1.080 bytes/cycle - 3088.55 MiB/sec @ 3 ghz +Alignment 5 - 1.080 bytes/cycle - 3089.75 MiB/sec @ 3 ghz +Alignment 4 - 1.079 bytes/cycle - 3086.75 MiB/sec @ 3 ghz +Alignment 3 - 1.079 bytes/cycle - 3088.05 MiB/sec @ 3 ghz +Alignment 2 - 1.080 bytes/cycle - 3089.59 MiB/sec @ 3 ghz +Alignment 1 - 1.079 bytes/cycle - 3086.98 MiB/sec @ 3 ghz +Alignment 0 - 1.080 bytes/cycle - 3089.24 MiB/sec @ 3 ghz +Average - 1.079 bytes/cycle - 3087.98 MiB/sec @ 3 ghz Small key speed test - 1-byte keys - 33.00 cycles/hash -Small key speed test - 2-byte keys - 34.19 cycles/hash +Small key speed test - 2-byte keys - 34.26 cycles/hash Small key speed test - 3-byte keys - 35.00 cycles/hash Small key speed test - 4-byte keys - 35.00 cycles/hash -Small key speed test - 5-byte keys - 35.00 cycles/hash -Small key speed test - 6-byte keys - 35.00 cycles/hash -Small key speed test - 7-byte keys - 35.00 cycles/hash -Small key speed test - 8-byte keys - 39.00 cycles/hash -Small key speed test - 9-byte keys - 39.00 cycles/hash -Small key speed test - 10-byte keys - 39.00 cycles/hash -Small key speed test - 11-byte keys - 39.00 cycles/hash -Small key speed test - 12-byte keys - 42.74 cycles/hash -Small key speed test - 13-byte keys - 42.99 cycles/hash -Small key speed test - 14-byte keys - 42.97 cycles/hash +Small key speed test - 5-byte keys - 36.00 cycles/hash +Small key speed test - 6-byte keys - 37.00 cycles/hash +Small key speed test - 7-byte keys - 37.85 cycles/hash +Small key speed test - 8-byte keys - 40.00 cycles/hash +Small key speed test - 9-byte keys - 38.65 cycles/hash +Small key speed test - 10-byte keys - 40.00 cycles/hash +Small key speed test - 11-byte keys - 40.00 cycles/hash +Small key speed test - 12-byte keys - 43.58 cycles/hash +Small key speed test - 13-byte keys - 43.00 cycles/hash +Small key speed test - 14-byte keys - 43.00 cycles/hash Small key speed test - 15-byte keys - 43.00 cycles/hash Small key speed test - 16-byte keys - 46.00 cycles/hash -Small key speed test - 17-byte keys - 46.00 cycles/hash -Small key speed test - 18-byte keys - 46.00 cycles/hash -Small key speed test - 19-byte keys - 46.34 cycles/hash -Small key speed test - 20-byte keys - 50.00 cycles/hash +Small key speed test - 17-byte keys - 48.00 cycles/hash +Small key speed test - 18-byte keys - 48.00 cycles/hash +Small key speed test - 19-byte keys - 48.00 cycles/hash +Small key speed test - 20-byte keys - 52.00 cycles/hash Small key speed test - 21-byte keys - 50.00 cycles/hash -Small key speed test - 22-byte keys - 50.00 cycles/hash -Small key speed test - 23-byte keys - 50.00 cycles/hash -Small key speed test - 24-byte keys - 53.18 cycles/hash +Small key speed test - 22-byte keys - 51.00 cycles/hash +Small key speed test - 23-byte keys - 51.00 cycles/hash +Small key speed test - 24-byte keys - 53.55 cycles/hash Small key speed test - 25-byte keys - 54.00 cycles/hash Small key speed test - 26-byte keys - 54.00 cycles/hash -Small key speed test - 27-byte keys - 54.00 cycles/hash -Small key speed test - 28-byte keys - 57.61 cycles/hash -Small key speed test - 29-byte keys - 57.43 cycles/hash -Small key speed test - 30-byte keys - 57.70 cycles/hash -Small key speed test - 31-byte keys - 57.00 cycles/hash -Average 45.134 cycles/hash +Small key speed test - 27-byte keys - 55.00 cycles/hash +Small key speed test - 28-byte keys - 58.00 cycles/hash +Small key speed test - 29-byte keys - 57.97 cycles/hash +Small key speed test - 30-byte keys - 58.00 cycles/hash +Small key speed test - 31-byte keys - 59.00 cycles/hash +Average 45.899 cycles/hash [[[ 'Hashmap' Speed Tests (when inlined) ]]] diff --git a/doc/Murmur2B.txt b/doc/Murmur2B.txt index f2d6eb8f..2cb52ab5 100644 --- a/doc/Murmur2B.txt +++ b/doc/Murmur2B.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 1.703 bytes/cycle - 4872.16 MiB/sec @ 3 ghz -Alignment 6 - 1.703 bytes/cycle - 4871.97 MiB/sec @ 3 ghz -Alignment 5 - 1.703 bytes/cycle - 4872.19 MiB/sec @ 3 ghz -Alignment 4 - 1.703 bytes/cycle - 4871.61 MiB/sec @ 3 ghz -Alignment 3 - 1.703 bytes/cycle - 4871.94 MiB/sec @ 3 ghz -Alignment 2 - 1.703 bytes/cycle - 4872.29 MiB/sec @ 3 ghz -Alignment 1 - 1.703 bytes/cycle - 4871.49 MiB/sec @ 3 ghz -Alignment 0 - 1.736 bytes/cycle - 4966.00 MiB/sec @ 3 ghz -Average - 1.707 bytes/cycle - 4883.71 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 23.00 cycles/hash -Small key speed test - 2-byte keys - 24.90 cycles/hash -Small key speed test - 3-byte keys - 25.71 cycles/hash -Small key speed test - 4-byte keys - 26.60 cycles/hash -Small key speed test - 5-byte keys - 27.00 cycles/hash -Small key speed test - 6-byte keys - 26.26 cycles/hash -Small key speed test - 7-byte keys - 27.00 cycles/hash -Small key speed test - 8-byte keys - 42.00 cycles/hash -Small key speed test - 9-byte keys - 46.00 cycles/hash -Small key speed test - 10-byte keys - 47.00 cycles/hash -Small key speed test - 11-byte keys - 48.00 cycles/hash -Small key speed test - 12-byte keys - 49.00 cycles/hash -Small key speed test - 13-byte keys - 49.85 cycles/hash -Small key speed test - 14-byte keys - 50.23 cycles/hash -Small key speed test - 15-byte keys - 51.00 cycles/hash -Small key speed test - 16-byte keys - 47.00 cycles/hash -Small key speed test - 17-byte keys - 50.00 cycles/hash -Small key speed test - 18-byte keys - 51.00 cycles/hash -Small key speed test - 19-byte keys - 52.00 cycles/hash -Small key speed test - 20-byte keys - 53.00 cycles/hash -Small key speed test - 21-byte keys - 54.00 cycles/hash -Small key speed test - 22-byte keys - 55.00 cycles/hash -Small key speed test - 23-byte keys - 56.00 cycles/hash -Small key speed test - 24-byte keys - 51.00 cycles/hash -Small key speed test - 25-byte keys - 55.00 cycles/hash -Small key speed test - 26-byte keys - 56.00 cycles/hash -Small key speed test - 27-byte keys - 57.00 cycles/hash -Small key speed test - 28-byte keys - 58.00 cycles/hash -Small key speed test - 29-byte keys - 59.00 cycles/hash -Small key speed test - 30-byte keys - 60.00 cycles/hash -Small key speed test - 31-byte keys - 61.00 cycles/hash -Average 46.405 cycles/hash +Alignment 7 - 1.776 bytes/cycle - 5081.83 MiB/sec @ 3 ghz +Alignment 6 - 1.807 bytes/cycle - 5170.33 MiB/sec @ 3 ghz +Alignment 5 - 2.168 bytes/cycle - 6203.01 MiB/sec @ 3 ghz +Alignment 4 - 2.165 bytes/cycle - 6194.17 MiB/sec @ 3 ghz +Alignment 3 - 2.158 bytes/cycle - 6174.29 MiB/sec @ 3 ghz +Alignment 2 - 2.159 bytes/cycle - 6177.49 MiB/sec @ 3 ghz +Alignment 1 - 2.158 bytes/cycle - 6174.69 MiB/sec @ 3 ghz +Alignment 0 - 2.160 bytes/cycle - 6179.25 MiB/sec @ 3 ghz +Average - 2.069 bytes/cycle - 5919.38 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 25.00 cycles/hash +Small key speed test - 2-byte keys - 27.00 cycles/hash +Small key speed test - 3-byte keys - 28.00 cycles/hash +Small key speed test - 4-byte keys - 29.00 cycles/hash +Small key speed test - 5-byte keys - 30.00 cycles/hash +Small key speed test - 6-byte keys - 31.00 cycles/hash +Small key speed test - 7-byte keys - 32.00 cycles/hash +Small key speed test - 8-byte keys - 32.00 cycles/hash +Small key speed test - 9-byte keys - 35.00 cycles/hash +Small key speed test - 10-byte keys - 36.00 cycles/hash +Small key speed test - 11-byte keys - 37.00 cycles/hash +Small key speed test - 12-byte keys - 38.00 cycles/hash +Small key speed test - 13-byte keys - 39.00 cycles/hash +Small key speed test - 14-byte keys - 40.00 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 - 39.00 cycles/hash +Small key speed test - 18-byte keys - 40.00 cycles/hash +Small key speed test - 19-byte keys - 40.84 cycles/hash +Small key speed test - 20-byte keys - 41.78 cycles/hash +Small key speed test - 21-byte keys - 42.23 cycles/hash +Small key speed test - 22-byte keys - 43.00 cycles/hash +Small key speed test - 23-byte keys - 44.11 cycles/hash +Small key speed test - 24-byte keys - 39.00 cycles/hash +Small key speed test - 25-byte keys - 43.00 cycles/hash +Small key speed test - 26-byte keys - 43.31 cycles/hash +Small key speed test - 27-byte keys - 45.00 cycles/hash +Small key speed test - 28-byte keys - 45.00 cycles/hash +Small key speed test - 29-byte keys - 45.96 cycles/hash +Small key speed test - 30-byte keys - 47.22 cycles/hash +Small key speed test - 31-byte keys - 48.00 cycles/hash +Average 38.176 cycles/hash [[[ 'Hashmap' Speed Tests (when inlined) ]]] diff --git a/doc/Murmur2C.txt b/doc/Murmur2C.txt index 1067d0b3..c8beeee5 100644 --- a/doc/Murmur2C.txt +++ b/doc/Murmur2C.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 1.431 bytes/cycle - 4095.29 MiB/sec @ 3 ghz -Alignment 6 - 1.431 bytes/cycle - 4095.27 MiB/sec @ 3 ghz -Alignment 5 - 1.431 bytes/cycle - 4095.28 MiB/sec @ 3 ghz -Alignment 4 - 1.442 bytes/cycle - 4125.98 MiB/sec @ 3 ghz -Alignment 3 - 1.420 bytes/cycle - 4063.16 MiB/sec @ 3 ghz -Alignment 2 - 1.420 bytes/cycle - 4063.17 MiB/sec @ 3 ghz -Alignment 1 - 1.420 bytes/cycle - 4063.16 MiB/sec @ 3 ghz -Alignment 0 - 1.443 bytes/cycle - 4127.52 MiB/sec @ 3 ghz -Average - 1.430 bytes/cycle - 4091.10 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 37.00 cycles/hash -Small key speed test - 2-byte keys - 39.00 cycles/hash -Small key speed test - 3-byte keys - 40.00 cycles/hash -Small key speed test - 4-byte keys - 42.00 cycles/hash -Small key speed test - 5-byte keys - 42.00 cycles/hash -Small key speed test - 6-byte keys - 42.00 cycles/hash -Small key speed test - 7-byte keys - 42.00 cycles/hash -Small key speed test - 8-byte keys - 41.00 cycles/hash -Small key speed test - 9-byte keys - 41.00 cycles/hash -Small key speed test - 10-byte keys - 41.00 cycles/hash -Small key speed test - 11-byte keys - 41.00 cycles/hash -Small key speed test - 12-byte keys - 46.00 cycles/hash -Small key speed test - 13-byte keys - 46.00 cycles/hash -Small key speed test - 14-byte keys - 45.92 cycles/hash -Small key speed test - 15-byte keys - 46.00 cycles/hash -Small key speed test - 16-byte keys - 45.00 cycles/hash -Small key speed test - 17-byte keys - 45.00 cycles/hash -Small key speed test - 18-byte keys - 45.00 cycles/hash -Small key speed test - 19-byte keys - 45.00 cycles/hash -Small key speed test - 20-byte keys - 50.00 cycles/hash -Small key speed test - 21-byte keys - 50.00 cycles/hash -Small key speed test - 22-byte keys - 50.00 cycles/hash -Small key speed test - 23-byte keys - 50.00 cycles/hash -Small key speed test - 24-byte keys - 49.92 cycles/hash -Small key speed test - 25-byte keys - 49.64 cycles/hash -Small key speed test - 26-byte keys - 49.27 cycles/hash -Small key speed test - 27-byte keys - 49.72 cycles/hash -Small key speed test - 28-byte keys - 54.00 cycles/hash -Small key speed test - 29-byte keys - 54.00 cycles/hash -Small key speed test - 30-byte keys - 54.00 cycles/hash -Small key speed test - 31-byte keys - 54.00 cycles/hash -Average 46.015 cycles/hash +Alignment 7 - 1.346 bytes/cycle - 3849.88 MiB/sec @ 3 ghz +Alignment 6 - 1.345 bytes/cycle - 3848.59 MiB/sec @ 3 ghz +Alignment 5 - 1.345 bytes/cycle - 3847.41 MiB/sec @ 3 ghz +Alignment 4 - 1.345 bytes/cycle - 3848.98 MiB/sec @ 3 ghz +Alignment 3 - 1.320 bytes/cycle - 3776.17 MiB/sec @ 3 ghz +Alignment 2 - 1.318 bytes/cycle - 3769.74 MiB/sec @ 3 ghz +Alignment 1 - 1.319 bytes/cycle - 3774.21 MiB/sec @ 3 ghz +Alignment 0 - 1.319 bytes/cycle - 3772.87 MiB/sec @ 3 ghz +Average - 1.332 bytes/cycle - 3810.98 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 36.00 cycles/hash +Small key speed test - 2-byte keys - 38.00 cycles/hash +Small key speed test - 3-byte keys - 39.00 cycles/hash +Small key speed test - 4-byte keys - 41.00 cycles/hash +Small key speed test - 5-byte keys - 40.93 cycles/hash +Small key speed test - 6-byte keys - 41.00 cycles/hash +Small key speed test - 7-byte keys - 41.00 cycles/hash +Small key speed test - 8-byte keys - 42.99 cycles/hash +Small key speed test - 9-byte keys - 47.00 cycles/hash +Small key speed test - 10-byte keys - 48.00 cycles/hash +Small key speed test - 11-byte keys - 48.29 cycles/hash +Small key speed test - 12-byte keys - 43.24 cycles/hash +Small key speed test - 13-byte keys - 47.33 cycles/hash +Small key speed test - 14-byte keys - 47.29 cycles/hash +Small key speed test - 15-byte keys - 48.78 cycles/hash +Small key speed test - 16-byte keys - 46.00 cycles/hash +Small key speed test - 17-byte keys - 50.43 cycles/hash +Small key speed test - 18-byte keys - 52.33 cycles/hash +Small key speed test - 19-byte keys - 52.00 cycles/hash +Small key speed test - 20-byte keys - 48.00 cycles/hash +Small key speed test - 21-byte keys - 50.47 cycles/hash +Small key speed test - 22-byte keys - 52.57 cycles/hash +Small key speed test - 23-byte keys - 55.00 cycles/hash +Small key speed test - 24-byte keys - 55.00 cycles/hash +Small key speed test - 25-byte keys - 59.00 cycles/hash +Small key speed test - 26-byte keys - 59.00 cycles/hash +Small key speed test - 27-byte keys - 59.60 cycles/hash +Small key speed test - 28-byte keys - 55.00 cycles/hash +Small key speed test - 29-byte keys - 58.00 cycles/hash +Small key speed test - 30-byte keys - 59.59 cycles/hash +Small key speed test - 31-byte keys - 60.00 cycles/hash +Average 49.091 cycles/hash [[[ 'Hashmap' Speed Tests (when inlined) ]]] diff --git a/doc/Murmur3A.txt b/doc/Murmur3A.txt index 42fd1d32..926f20ae 100644 --- a/doc/Murmur3A.txt +++ b/doc/Murmur3A.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 0.842 bytes/cycle - 2407.78 MiB/sec @ 3 ghz -Alignment 6 - 0.842 bytes/cycle - 2407.79 MiB/sec @ 3 ghz -Alignment 5 - 0.842 bytes/cycle - 2407.80 MiB/sec @ 3 ghz -Alignment 4 - 0.850 bytes/cycle - 2432.15 MiB/sec @ 3 ghz -Alignment 3 - 0.842 bytes/cycle - 2407.82 MiB/sec @ 3 ghz -Alignment 2 - 0.842 bytes/cycle - 2407.83 MiB/sec @ 3 ghz -Alignment 1 - 0.842 bytes/cycle - 2407.76 MiB/sec @ 3 ghz -Alignment 0 - 0.850 bytes/cycle - 2432.13 MiB/sec @ 3 ghz -Average - 0.844 bytes/cycle - 2413.88 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 33.00 cycles/hash -Small key speed test - 2-byte keys - 35.00 cycles/hash -Small key speed test - 3-byte keys - 36.00 cycles/hash -Small key speed test - 4-byte keys - 37.00 cycles/hash -Small key speed test - 5-byte keys - 38.00 cycles/hash -Small key speed test - 6-byte keys - 38.00 cycles/hash -Small key speed test - 7-byte keys - 38.00 cycles/hash -Small key speed test - 8-byte keys - 42.00 cycles/hash -Small key speed test - 9-byte keys - 43.00 cycles/hash -Small key speed test - 10-byte keys - 43.00 cycles/hash -Small key speed test - 11-byte keys - 43.00 cycles/hash -Small key speed test - 12-byte keys - 46.97 cycles/hash -Small key speed test - 13-byte keys - 48.00 cycles/hash -Small key speed test - 14-byte keys - 48.00 cycles/hash -Small key speed test - 15-byte keys - 48.00 cycles/hash -Small key speed test - 16-byte keys - 51.00 cycles/hash -Small key speed test - 17-byte keys - 53.00 cycles/hash -Small key speed test - 18-byte keys - 53.00 cycles/hash -Small key speed test - 19-byte keys - 53.00 cycles/hash -Small key speed test - 20-byte keys - 56.00 cycles/hash -Small key speed test - 21-byte keys - 58.00 cycles/hash -Small key speed test - 22-byte keys - 58.00 cycles/hash -Small key speed test - 23-byte keys - 57.30 cycles/hash -Small key speed test - 24-byte keys - 61.00 cycles/hash -Small key speed test - 25-byte keys - 62.12 cycles/hash -Small key speed test - 26-byte keys - 62.00 cycles/hash -Small key speed test - 27-byte keys - 62.00 cycles/hash -Small key speed test - 28-byte keys - 66.00 cycles/hash -Small key speed test - 29-byte keys - 67.32 cycles/hash -Small key speed test - 30-byte keys - 67.00 cycles/hash -Small key speed test - 31-byte keys - 67.00 cycles/hash -Average 50.668 cycles/hash +Alignment 7 - 1.041 bytes/cycle - 2978.59 MiB/sec @ 3 ghz +Alignment 6 - 1.043 bytes/cycle - 2984.43 MiB/sec @ 3 ghz +Alignment 5 - 1.040 bytes/cycle - 2976.19 MiB/sec @ 3 ghz +Alignment 4 - 1.046 bytes/cycle - 2992.31 MiB/sec @ 3 ghz +Alignment 3 - 1.042 bytes/cycle - 2979.79 MiB/sec @ 3 ghz +Alignment 2 - 1.040 bytes/cycle - 2975.35 MiB/sec @ 3 ghz +Alignment 1 - 1.041 bytes/cycle - 2978.89 MiB/sec @ 3 ghz +Alignment 0 - 1.047 bytes/cycle - 2995.80 MiB/sec @ 3 ghz +Average - 1.043 bytes/cycle - 2982.67 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 35.00 cycles/hash +Small key speed test - 2-byte keys - 36.81 cycles/hash +Small key speed test - 3-byte keys - 37.00 cycles/hash +Small key speed test - 4-byte keys - 38.00 cycles/hash +Small key speed test - 5-byte keys - 38.73 cycles/hash +Small key speed test - 6-byte keys - 39.86 cycles/hash +Small key speed test - 7-byte keys - 40.00 cycles/hash +Small key speed test - 8-byte keys - 41.00 cycles/hash +Small key speed test - 9-byte keys - 42.99 cycles/hash +Small key speed test - 10-byte keys - 42.99 cycles/hash +Small key speed test - 11-byte keys - 43.24 cycles/hash +Small key speed test - 12-byte keys - 45.55 cycles/hash +Small key speed test - 13-byte keys - 46.00 cycles/hash +Small key speed test - 14-byte keys - 46.00 cycles/hash +Small key speed test - 15-byte keys - 47.00 cycles/hash +Small key speed test - 16-byte keys - 49.00 cycles/hash +Small key speed test - 17-byte keys - 50.00 cycles/hash +Small key speed test - 18-byte keys - 50.13 cycles/hash +Small key speed test - 19-byte keys - 50.00 cycles/hash +Small key speed test - 20-byte keys - 52.99 cycles/hash +Small key speed test - 21-byte keys - 55.93 cycles/hash +Small key speed test - 22-byte keys - 55.00 cycles/hash +Small key speed test - 23-byte keys - 55.00 cycles/hash +Small key speed test - 24-byte keys - 58.12 cycles/hash +Small key speed test - 25-byte keys - 58.79 cycles/hash +Small key speed test - 26-byte keys - 59.00 cycles/hash +Small key speed test - 27-byte keys - 58.89 cycles/hash +Small key speed test - 28-byte keys - 61.12 cycles/hash +Small key speed test - 29-byte keys - 62.00 cycles/hash +Small key speed test - 30-byte keys - 62.19 cycles/hash +Small key speed test - 31-byte keys - 62.98 cycles/hash +Average 49.075 cycles/hash [[[ 'Hashmap' Speed Tests (when inlined) ]]] diff --git a/doc/Murmur3C.txt b/doc/Murmur3C.txt index 85baeeb1..95efa2fb 100644 --- a/doc/Murmur3C.txt +++ b/doc/Murmur3C.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 1.113 bytes/cycle - 3185.24 MiB/sec @ 3 ghz -Alignment 6 - 1.113 bytes/cycle - 3185.27 MiB/sec @ 3 ghz -Alignment 5 - 1.113 bytes/cycle - 3185.27 MiB/sec @ 3 ghz -Alignment 4 - 1.128 bytes/cycle - 3227.25 MiB/sec @ 3 ghz -Alignment 3 - 1.116 bytes/cycle - 3193.91 MiB/sec @ 3 ghz -Alignment 2 - 1.116 bytes/cycle - 3193.95 MiB/sec @ 3 ghz -Alignment 1 - 1.116 bytes/cycle - 3193.98 MiB/sec @ 3 ghz -Alignment 0 - 1.128 bytes/cycle - 3226.35 MiB/sec @ 3 ghz -Average - 1.118 bytes/cycle - 3198.90 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 48.49 cycles/hash -Small key speed test - 2-byte keys - 50.00 cycles/hash -Small key speed test - 3-byte keys - 51.94 cycles/hash -Small key speed test - 4-byte keys - 52.80 cycles/hash -Small key speed test - 5-byte keys - 54.00 cycles/hash -Small key speed test - 6-byte keys - 55.00 cycles/hash -Small key speed test - 7-byte keys - 55.00 cycles/hash -Small key speed test - 8-byte keys - 55.89 cycles/hash -Small key speed test - 9-byte keys - 57.92 cycles/hash -Small key speed test - 10-byte keys - 59.00 cycles/hash -Small key speed test - 11-byte keys - 60.00 cycles/hash -Small key speed test - 12-byte keys - 61.00 cycles/hash -Small key speed test - 13-byte keys - 62.87 cycles/hash -Small key speed test - 14-byte keys - 64.00 cycles/hash -Small key speed test - 15-byte keys - 64.71 cycles/hash -Small key speed test - 16-byte keys - 62.00 cycles/hash -Small key speed test - 17-byte keys - 64.90 cycles/hash -Small key speed test - 18-byte keys - 66.49 cycles/hash -Small key speed test - 19-byte keys - 68.75 cycles/hash -Small key speed test - 20-byte keys - 70.00 cycles/hash -Small key speed test - 21-byte keys - 73.00 cycles/hash -Small key speed test - 22-byte keys - 74.00 cycles/hash -Small key speed test - 23-byte keys - 74.00 cycles/hash -Small key speed test - 24-byte keys - 75.47 cycles/hash -Small key speed test - 25-byte keys - 77.00 cycles/hash -Small key speed test - 26-byte keys - 79.00 cycles/hash -Small key speed test - 27-byte keys - 80.00 cycles/hash -Small key speed test - 28-byte keys - 81.89 cycles/hash -Small key speed test - 29-byte keys - 83.00 cycles/hash -Small key speed test - 30-byte keys - 83.19 cycles/hash -Small key speed test - 31-byte keys - 84.00 cycles/hash -Average 66.107 cycles/hash +Alignment 7 - 1.689 bytes/cycle - 4832.94 MiB/sec @ 3 ghz +Alignment 6 - 1.690 bytes/cycle - 4835.66 MiB/sec @ 3 ghz +Alignment 5 - 1.691 bytes/cycle - 4836.57 MiB/sec @ 3 ghz +Alignment 4 - 1.699 bytes/cycle - 4859.49 MiB/sec @ 3 ghz +Alignment 3 - 1.683 bytes/cycle - 4814.60 MiB/sec @ 3 ghz +Alignment 2 - 1.683 bytes/cycle - 4814.99 MiB/sec @ 3 ghz +Alignment 1 - 1.683 bytes/cycle - 4814.48 MiB/sec @ 3 ghz +Alignment 0 - 1.698 bytes/cycle - 4856.68 MiB/sec @ 3 ghz +Average - 1.689 bytes/cycle - 4833.18 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 46.00 cycles/hash +Small key speed test - 2-byte keys - 46.53 cycles/hash +Small key speed test - 3-byte keys - 47.74 cycles/hash +Small key speed test - 4-byte keys - 48.56 cycles/hash +Small key speed test - 5-byte keys - 49.00 cycles/hash +Small key speed test - 6-byte keys - 50.52 cycles/hash +Small key speed test - 7-byte keys - 51.22 cycles/hash +Small key speed test - 8-byte keys - 52.00 cycles/hash +Small key speed test - 9-byte keys - 53.99 cycles/hash +Small key speed test - 10-byte keys - 52.00 cycles/hash +Small key speed test - 11-byte keys - 54.00 cycles/hash +Small key speed test - 12-byte keys - 55.97 cycles/hash +Small key speed test - 13-byte keys - 56.48 cycles/hash +Small key speed test - 14-byte keys - 57.25 cycles/hash +Small key speed test - 15-byte keys - 58.46 cycles/hash +Small key speed test - 16-byte keys - 55.78 cycles/hash +Small key speed test - 17-byte keys - 55.57 cycles/hash +Small key speed test - 18-byte keys - 56.45 cycles/hash +Small key speed test - 19-byte keys - 58.00 cycles/hash +Small key speed test - 20-byte keys - 58.00 cycles/hash +Small key speed test - 21-byte keys - 60.00 cycles/hash +Small key speed test - 22-byte keys - 60.26 cycles/hash +Small key speed test - 23-byte keys - 61.00 cycles/hash +Small key speed test - 24-byte keys - 61.73 cycles/hash +Small key speed test - 25-byte keys - 61.67 cycles/hash +Small key speed test - 26-byte keys - 64.00 cycles/hash +Small key speed test - 27-byte keys - 65.00 cycles/hash +Small key speed test - 28-byte keys - 64.72 cycles/hash +Small key speed test - 29-byte keys - 66.72 cycles/hash +Small key speed test - 30-byte keys - 66.61 cycles/hash +Small key speed test - 31-byte keys - 67.75 cycles/hash +Average 56.870 cycles/hash [[[ 'Hashmap' Speed Tests (when inlined) ]]] diff --git a/doc/Murmur3F.txt b/doc/Murmur3F.txt index 96bab1cc..eb0d289c 100644 --- a/doc/Murmur3F.txt +++ b/doc/Murmur3F.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 1.821 bytes/cycle - 5209.71 MiB/sec @ 3 ghz -Alignment 6 - 1.821 bytes/cycle - 5209.58 MiB/sec @ 3 ghz -Alignment 5 - 1.821 bytes/cycle - 5209.54 MiB/sec @ 3 ghz -Alignment 4 - 1.821 bytes/cycle - 5209.45 MiB/sec @ 3 ghz -Alignment 3 - 1.821 bytes/cycle - 5209.57 MiB/sec @ 3 ghz -Alignment 2 - 1.821 bytes/cycle - 5209.57 MiB/sec @ 3 ghz -Alignment 1 - 1.821 bytes/cycle - 5209.58 MiB/sec @ 3 ghz -Alignment 0 - 1.867 bytes/cycle - 5340.31 MiB/sec @ 3 ghz -Average - 1.827 bytes/cycle - 5225.91 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 37.49 cycles/hash -Small key speed test - 2-byte keys - 39.00 cycles/hash -Small key speed test - 3-byte keys - 40.00 cycles/hash -Small key speed test - 4-byte keys - 41.00 cycles/hash -Small key speed test - 5-byte keys - 41.51 cycles/hash -Small key speed test - 6-byte keys - 41.00 cycles/hash -Small key speed test - 7-byte keys - 41.95 cycles/hash -Small key speed test - 8-byte keys - 41.66 cycles/hash -Small key speed test - 9-byte keys - 43.00 cycles/hash -Small key speed test - 10-byte keys - 43.00 cycles/hash -Small key speed test - 11-byte keys - 44.00 cycles/hash -Small key speed test - 12-byte keys - 44.00 cycles/hash -Small key speed test - 13-byte keys - 45.00 cycles/hash -Small key speed test - 14-byte keys - 45.00 cycles/hash -Small key speed test - 15-byte keys - 45.94 cycles/hash -Small key speed test - 16-byte keys - 57.00 cycles/hash -Small key speed test - 17-byte keys - 57.11 cycles/hash -Small key speed test - 18-byte keys - 57.00 cycles/hash -Small key speed test - 19-byte keys - 57.45 cycles/hash -Small key speed test - 20-byte keys - 57.00 cycles/hash -Small key speed test - 21-byte keys - 57.00 cycles/hash -Small key speed test - 22-byte keys - 57.00 cycles/hash -Small key speed test - 23-byte keys - 57.00 cycles/hash -Small key speed test - 24-byte keys - 57.68 cycles/hash -Small key speed test - 25-byte keys - 58.00 cycles/hash -Small key speed test - 26-byte keys - 58.00 cycles/hash +Alignment 7 - 2.666 bytes/cycle - 7627.99 MiB/sec @ 3 ghz +Alignment 6 - 2.666 bytes/cycle - 7627.90 MiB/sec @ 3 ghz +Alignment 5 - 2.661 bytes/cycle - 7613.60 MiB/sec @ 3 ghz +Alignment 4 - 2.666 bytes/cycle - 7627.77 MiB/sec @ 3 ghz +Alignment 3 - 2.662 bytes/cycle - 7615.66 MiB/sec @ 3 ghz +Alignment 2 - 2.666 bytes/cycle - 7628.32 MiB/sec @ 3 ghz +Alignment 1 - 2.666 bytes/cycle - 7627.81 MiB/sec @ 3 ghz +Alignment 0 - 2.663 bytes/cycle - 7618.50 MiB/sec @ 3 ghz +Average - 2.665 bytes/cycle - 7623.44 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 43.00 cycles/hash +Small key speed test - 2-byte keys - 45.00 cycles/hash +Small key speed test - 3-byte keys - 45.52 cycles/hash +Small key speed test - 4-byte keys - 47.00 cycles/hash +Small key speed test - 5-byte keys - 48.00 cycles/hash +Small key speed test - 6-byte keys - 49.00 cycles/hash +Small key speed test - 7-byte keys - 50.00 cycles/hash +Small key speed test - 8-byte keys - 49.96 cycles/hash +Small key speed test - 9-byte keys - 52.00 cycles/hash +Small key speed test - 10-byte keys - 53.00 cycles/hash +Small key speed test - 11-byte keys - 54.00 cycles/hash +Small key speed test - 12-byte keys - 55.00 cycles/hash +Small key speed test - 13-byte keys - 54.12 cycles/hash +Small key speed test - 14-byte keys - 56.22 cycles/hash +Small key speed test - 15-byte keys - 56.17 cycles/hash +Small key speed test - 16-byte keys - 47.97 cycles/hash +Small key speed test - 17-byte keys - 48.00 cycles/hash +Small key speed test - 18-byte keys - 49.73 cycles/hash +Small key speed test - 19-byte keys - 51.00 cycles/hash +Small key speed test - 20-byte keys - 51.48 cycles/hash +Small key speed test - 21-byte keys - 52.85 cycles/hash +Small key speed test - 22-byte keys - 53.94 cycles/hash +Small key speed test - 23-byte keys - 54.46 cycles/hash +Small key speed test - 24-byte keys - 55.61 cycles/hash +Small key speed test - 25-byte keys - 57.00 cycles/hash +Small key speed test - 26-byte keys - 57.55 cycles/hash Small key speed test - 27-byte keys - 58.00 cycles/hash -Small key speed test - 28-byte keys - 58.85 cycles/hash -Small key speed test - 29-byte keys - 58.31 cycles/hash -Small key speed test - 30-byte keys - 58.00 cycles/hash -Small key speed test - 31-byte keys - 57.99 cycles/hash -Average 50.160 cycles/hash +Small key speed test - 28-byte keys - 58.00 cycles/hash +Small key speed test - 29-byte keys - 58.81 cycles/hash +Small key speed test - 30-byte keys - 59.95 cycles/hash +Small key speed test - 31-byte keys - 60.91 cycles/hash +Average 52.685 cycles/hash [[[ 'Hashmap' Speed Tests (when inlined) ]]] diff --git a/doc/MurmurOAAT.txt b/doc/MurmurOAAT.txt index 6bf3be32..588d41f9 100644 --- a/doc/MurmurOAAT.txt +++ b/doc/MurmurOAAT.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 0.158 bytes/cycle - 452.49 MiB/sec @ 3 ghz -Alignment 6 - 0.158 bytes/cycle - 452.49 MiB/sec @ 3 ghz -Alignment 5 - 0.158 bytes/cycle - 452.49 MiB/sec @ 3 ghz -Alignment 4 - 0.158 bytes/cycle - 452.49 MiB/sec @ 3 ghz -Alignment 3 - 0.158 bytes/cycle - 452.49 MiB/sec @ 3 ghz -Alignment 2 - 0.158 bytes/cycle - 452.49 MiB/sec @ 3 ghz -Alignment 1 - 0.158 bytes/cycle - 452.49 MiB/sec @ 3 ghz -Alignment 0 - 0.158 bytes/cycle - 452.49 MiB/sec @ 3 ghz -Average - 0.158 bytes/cycle - 452.49 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 17.13 cycles/hash -Small key speed test - 2-byte keys - 24.00 cycles/hash +Alignment 7 - 0.177 bytes/cycle - 506.65 MiB/sec @ 3 ghz +Alignment 6 - 0.177 bytes/cycle - 506.65 MiB/sec @ 3 ghz +Alignment 5 - 0.177 bytes/cycle - 506.59 MiB/sec @ 3 ghz +Alignment 4 - 0.177 bytes/cycle - 506.66 MiB/sec @ 3 ghz +Alignment 3 - 0.177 bytes/cycle - 506.65 MiB/sec @ 3 ghz +Alignment 2 - 0.177 bytes/cycle - 506.73 MiB/sec @ 3 ghz +Alignment 1 - 0.177 bytes/cycle - 506.68 MiB/sec @ 3 ghz +Alignment 0 - 0.177 bytes/cycle - 506.69 MiB/sec @ 3 ghz +Average - 0.177 bytes/cycle - 506.66 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 18.66 cycles/hash +Small key speed test - 2-byte keys - 24.63 cycles/hash Small key speed test - 3-byte keys - 30.00 cycles/hash -Small key speed test - 4-byte keys - 36.19 cycles/hash -Small key speed test - 5-byte keys - 43.00 cycles/hash -Small key speed test - 6-byte keys - 49.00 cycles/hash -Small key speed test - 7-byte keys - 55.63 cycles/hash -Small key speed test - 8-byte keys - 61.96 cycles/hash -Small key speed test - 9-byte keys - 68.00 cycles/hash -Small key speed test - 10-byte keys - 74.00 cycles/hash -Small key speed test - 11-byte keys - 80.80 cycles/hash -Small key speed test - 12-byte keys - 87.00 cycles/hash -Small key speed test - 13-byte keys - 93.00 cycles/hash -Small key speed test - 14-byte keys - 99.94 cycles/hash -Small key speed test - 15-byte keys - 106.00 cycles/hash -Small key speed test - 16-byte keys - 112.00 cycles/hash -Small key speed test - 17-byte keys - 118.94 cycles/hash -Small key speed test - 18-byte keys - 125.00 cycles/hash -Small key speed test - 19-byte keys - 131.00 cycles/hash -Small key speed test - 20-byte keys - 137.95 cycles/hash -Small key speed test - 21-byte keys - 144.00 cycles/hash -Small key speed test - 22-byte keys - 150.21 cycles/hash -Small key speed test - 23-byte keys - 156.87 cycles/hash -Small key speed test - 24-byte keys - 163.00 cycles/hash -Small key speed test - 25-byte keys - 169.31 cycles/hash -Small key speed test - 26-byte keys - 175.86 cycles/hash -Small key speed test - 27-byte keys - 182.00 cycles/hash -Small key speed test - 28-byte keys - 188.42 cycles/hash -Small key speed test - 29-byte keys - 194.79 cycles/hash -Small key speed test - 30-byte keys - 201.00 cycles/hash -Small key speed test - 31-byte keys - 207.58 cycles/hash -Average 112.373 cycles/hash +Small key speed test - 4-byte keys - 36.00 cycles/hash +Small key speed test - 5-byte keys - 41.00 cycles/hash +Small key speed test - 6-byte keys - 47.00 cycles/hash +Small key speed test - 7-byte keys - 52.79 cycles/hash +Small key speed test - 8-byte keys - 58.00 cycles/hash +Small key speed test - 9-byte keys - 63.98 cycles/hash +Small key speed test - 10-byte keys - 69.92 cycles/hash +Small key speed test - 11-byte keys - 75.00 cycles/hash +Small key speed test - 12-byte keys - 81.00 cycles/hash +Small key speed test - 13-byte keys - 86.78 cycles/hash +Small key speed test - 14-byte keys - 92.00 cycles/hash +Small key speed test - 15-byte keys - 97.73 cycles/hash +Small key speed test - 16-byte keys - 103.77 cycles/hash +Small key speed test - 17-byte keys - 108.98 cycles/hash +Small key speed test - 18-byte keys - 114.75 cycles/hash +Small key speed test - 19-byte keys - 120.00 cycles/hash +Small key speed test - 20-byte keys - 125.70 cycles/hash +Small key speed test - 21-byte keys - 131.66 cycles/hash +Small key speed test - 22-byte keys - 136.75 cycles/hash +Small key speed test - 23-byte keys - 142.70 cycles/hash +Small key speed test - 24-byte keys - 148.66 cycles/hash +Small key speed test - 25-byte keys - 153.64 cycles/hash +Small key speed test - 26-byte keys - 159.58 cycles/hash +Small key speed test - 27-byte keys - 164.61 cycles/hash +Small key speed test - 28-byte keys - 170.71 cycles/hash +Small key speed test - 29-byte keys - 176.66 cycles/hash +Small key speed test - 30-byte keys - 182.75 cycles/hash +Small key speed test - 31-byte keys - 187.70 cycles/hash +Average 103.326 cycles/hash [[[ 'Hashmap' Speed Tests (when inlined) ]]] diff --git a/doc/PMPML_32.txt b/doc/PMPML_32.txt index c2763d99..2834054c 100644 --- a/doc/PMPML_32.txt +++ b/doc/PMPML_32.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 2.374 bytes/cycle - 6790.76 MiB/sec @ 3 ghz -Alignment 6 - 2.374 bytes/cycle - 6792.38 MiB/sec @ 3 ghz -Alignment 5 - 2.374 bytes/cycle - 6793.48 MiB/sec @ 3 ghz -Alignment 4 - 2.375 bytes/cycle - 6794.14 MiB/sec @ 3 ghz -Alignment 3 - 2.375 bytes/cycle - 6793.58 MiB/sec @ 3 ghz -Alignment 2 - 2.375 bytes/cycle - 6794.66 MiB/sec @ 3 ghz -Alignment 1 - 2.374 bytes/cycle - 6793.23 MiB/sec @ 3 ghz -Alignment 0 - 2.493 bytes/cycle - 7132.75 MiB/sec @ 3 ghz -Average - 2.389 bytes/cycle - 6835.62 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 42.00 cycles/hash -Small key speed test - 2-byte keys - 42.00 cycles/hash -Small key speed test - 3-byte keys - 45.00 cycles/hash -Small key speed test - 4-byte keys - 44.00 cycles/hash -Small key speed test - 5-byte keys - 45.00 cycles/hash -Small key speed test - 6-byte keys - 45.00 cycles/hash -Small key speed test - 7-byte keys - 45.00 cycles/hash -Small key speed test - 8-byte keys - 47.00 cycles/hash -Small key speed test - 9-byte keys - 47.00 cycles/hash -Small key speed test - 10-byte keys - 47.00 cycles/hash -Small key speed test - 11-byte keys - 47.00 cycles/hash -Small key speed test - 12-byte keys - 49.00 cycles/hash -Small key speed test - 13-byte keys - 49.26 cycles/hash -Small key speed test - 14-byte keys - 49.00 cycles/hash -Small key speed test - 15-byte keys - 49.17 cycles/hash -Small key speed test - 16-byte keys - 52.00 cycles/hash -Small key speed test - 17-byte keys - 52.00 cycles/hash -Small key speed test - 18-byte keys - 52.00 cycles/hash -Small key speed test - 19-byte keys - 52.00 cycles/hash -Small key speed test - 20-byte keys - 54.00 cycles/hash -Small key speed test - 21-byte keys - 54.00 cycles/hash -Small key speed test - 22-byte keys - 54.00 cycles/hash -Small key speed test - 23-byte keys - 54.00 cycles/hash -Small key speed test - 24-byte keys - 55.90 cycles/hash -Small key speed test - 25-byte keys - 56.00 cycles/hash -Small key speed test - 26-byte keys - 56.00 cycles/hash -Small key speed test - 27-byte keys - 56.00 cycles/hash -Small key speed test - 28-byte keys - 58.00 cycles/hash -Small key speed test - 29-byte keys - 58.28 cycles/hash -Small key speed test - 30-byte keys - 58.00 cycles/hash -Small key speed test - 31-byte keys - 58.00 cycles/hash -Average 50.729 cycles/hash +Alignment 7 - 2.313 bytes/cycle - 6617.88 MiB/sec @ 3 ghz +Alignment 6 - 2.315 bytes/cycle - 6622.92 MiB/sec @ 3 ghz +Alignment 5 - 2.316 bytes/cycle - 6626.12 MiB/sec @ 3 ghz +Alignment 4 - 2.317 bytes/cycle - 6628.65 MiB/sec @ 3 ghz +Alignment 3 - 2.318 bytes/cycle - 6630.74 MiB/sec @ 3 ghz +Alignment 2 - 2.317 bytes/cycle - 6630.36 MiB/sec @ 3 ghz +Alignment 1 - 2.315 bytes/cycle - 6622.11 MiB/sec @ 3 ghz +Alignment 0 - 2.355 bytes/cycle - 6738.64 MiB/sec @ 3 ghz +Average - 2.321 bytes/cycle - 6639.68 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 38.24 cycles/hash +Small key speed test - 2-byte keys - 40.00 cycles/hash +Small key speed test - 3-byte keys - 40.00 cycles/hash +Small key speed test - 4-byte keys - 38.31 cycles/hash +Small key speed test - 5-byte keys - 39.00 cycles/hash +Small key speed test - 6-byte keys - 40.24 cycles/hash +Small key speed test - 7-byte keys - 41.00 cycles/hash +Small key speed test - 8-byte keys - 41.32 cycles/hash +Small key speed test - 9-byte keys - 41.33 cycles/hash +Small key speed test - 10-byte keys - 43.00 cycles/hash +Small key speed test - 11-byte keys - 42.00 cycles/hash +Small key speed test - 12-byte keys - 42.95 cycles/hash +Small key speed test - 13-byte keys - 43.00 cycles/hash +Small key speed test - 14-byte keys - 44.00 cycles/hash +Small key speed test - 15-byte keys - 44.00 cycles/hash +Small key speed test - 16-byte keys - 45.00 cycles/hash +Small key speed test - 17-byte keys - 45.99 cycles/hash +Small key speed test - 18-byte keys - 46.00 cycles/hash +Small key speed test - 19-byte keys - 45.00 cycles/hash +Small key speed test - 20-byte keys - 48.00 cycles/hash +Small key speed test - 21-byte keys - 48.96 cycles/hash +Small key speed test - 22-byte keys - 48.00 cycles/hash +Small key speed test - 23-byte keys - 49.21 cycles/hash +Small key speed test - 24-byte keys - 50.00 cycles/hash +Small key speed test - 25-byte keys - 49.15 cycles/hash +Small key speed test - 26-byte keys - 51.00 cycles/hash +Small key speed test - 27-byte keys - 49.60 cycles/hash +Small key speed test - 28-byte keys - 53.00 cycles/hash +Small key speed test - 29-byte keys - 52.00 cycles/hash +Small key speed test - 30-byte keys - 54.00 cycles/hash +Small key speed test - 31-byte keys - 52.00 cycles/hash +Average 45.333 cycles/hash [[[ 'Hashmap' Speed Tests ]]] diff --git a/doc/PMPML_64.txt b/doc/PMPML_64.txt index d9a212f6..44f6b92e 100644 --- a/doc/PMPML_64.txt +++ b/doc/PMPML_64.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 2.879 bytes/cycle - 8237.29 MiB/sec @ 3 ghz -Alignment 6 - 2.880 bytes/cycle - 8239.98 MiB/sec @ 3 ghz -Alignment 5 - 2.880 bytes/cycle - 8240.79 MiB/sec @ 3 ghz -Alignment 4 - 2.879 bytes/cycle - 8237.38 MiB/sec @ 3 ghz -Alignment 3 - 2.879 bytes/cycle - 8237.30 MiB/sec @ 3 ghz -Alignment 2 - 2.880 bytes/cycle - 8239.63 MiB/sec @ 3 ghz -Alignment 1 - 2.880 bytes/cycle - 8240.59 MiB/sec @ 3 ghz -Alignment 0 - 2.958 bytes/cycle - 8462.08 MiB/sec @ 3 ghz -Average - 2.889 bytes/cycle - 8266.88 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 46.00 cycles/hash -Small key speed test - 2-byte keys - 46.00 cycles/hash -Small key speed test - 3-byte keys - 48.11 cycles/hash -Small key speed test - 4-byte keys - 45.57 cycles/hash -Small key speed test - 5-byte keys - 46.00 cycles/hash -Small key speed test - 6-byte keys - 46.00 cycles/hash -Small key speed test - 7-byte keys - 47.00 cycles/hash -Small key speed test - 8-byte keys - 60.00 cycles/hash -Small key speed test - 9-byte keys - 60.00 cycles/hash -Small key speed test - 10-byte keys - 60.00 cycles/hash -Small key speed test - 11-byte keys - 60.00 cycles/hash -Small key speed test - 12-byte keys - 59.99 cycles/hash -Small key speed test - 13-byte keys - 59.55 cycles/hash -Small key speed test - 14-byte keys - 59.30 cycles/hash -Small key speed test - 15-byte keys - 59.00 cycles/hash -Small key speed test - 16-byte keys - 62.91 cycles/hash -Small key speed test - 17-byte keys - 62.66 cycles/hash -Small key speed test - 18-byte keys - 62.73 cycles/hash -Small key speed test - 19-byte keys - 63.00 cycles/hash -Small key speed test - 20-byte keys - 62.00 cycles/hash -Small key speed test - 21-byte keys - 62.00 cycles/hash -Small key speed test - 22-byte keys - 62.00 cycles/hash -Small key speed test - 23-byte keys - 62.00 cycles/hash -Small key speed test - 24-byte keys - 65.00 cycles/hash -Small key speed test - 25-byte keys - 65.00 cycles/hash -Small key speed test - 26-byte keys - 65.21 cycles/hash -Small key speed test - 27-byte keys - 65.23 cycles/hash -Small key speed test - 28-byte keys - 65.00 cycles/hash -Small key speed test - 29-byte keys - 65.00 cycles/hash -Small key speed test - 30-byte keys - 65.00 cycles/hash -Small key speed test - 31-byte keys - 64.00 cycles/hash -Average 58.750 cycles/hash +Alignment 7 - 3.434 bytes/cycle - 9823.77 MiB/sec @ 3 ghz +Alignment 6 - 3.432 bytes/cycle - 9817.95 MiB/sec @ 3 ghz +Alignment 5 - 3.431 bytes/cycle - 9816.00 MiB/sec @ 3 ghz +Alignment 4 - 3.431 bytes/cycle - 9816.74 MiB/sec @ 3 ghz +Alignment 3 - 3.434 bytes/cycle - 9824.09 MiB/sec @ 3 ghz +Alignment 2 - 3.432 bytes/cycle - 9817.83 MiB/sec @ 3 ghz +Alignment 1 - 3.431 bytes/cycle - 9815.86 MiB/sec @ 3 ghz +Alignment 0 - 3.474 bytes/cycle - 9937.89 MiB/sec @ 3 ghz +Average - 3.437 bytes/cycle - 9833.77 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 47.95 cycles/hash +Small key speed test - 2-byte keys - 47.92 cycles/hash +Small key speed test - 3-byte keys - 49.99 cycles/hash +Small key speed test - 4-byte keys - 48.00 cycles/hash +Small key speed test - 5-byte keys - 47.96 cycles/hash +Small key speed test - 6-byte keys - 47.94 cycles/hash +Small key speed test - 7-byte keys - 48.20 cycles/hash +Small key speed test - 8-byte keys - 46.00 cycles/hash +Small key speed test - 9-byte keys - 48.00 cycles/hash +Small key speed test - 10-byte keys - 48.00 cycles/hash +Small key speed test - 11-byte keys - 49.70 cycles/hash +Small key speed test - 12-byte keys - 48.00 cycles/hash +Small key speed test - 13-byte keys - 49.99 cycles/hash +Small key speed test - 14-byte keys - 50.00 cycles/hash +Small key speed test - 15-byte keys - 50.92 cycles/hash +Small key speed test - 16-byte keys - 48.00 cycles/hash +Small key speed test - 17-byte keys - 49.98 cycles/hash +Small key speed test - 18-byte keys - 49.96 cycles/hash +Small key speed test - 19-byte keys - 50.92 cycles/hash +Small key speed test - 20-byte keys - 49.96 cycles/hash +Small key speed test - 21-byte keys - 50.88 cycles/hash +Small key speed test - 22-byte keys - 50.91 cycles/hash +Small key speed test - 23-byte keys - 52.65 cycles/hash +Small key speed test - 24-byte keys - 50.00 cycles/hash +Small key speed test - 25-byte keys - 51.76 cycles/hash +Small key speed test - 26-byte keys - 51.64 cycles/hash +Small key speed test - 27-byte keys - 51.99 cycles/hash +Small key speed test - 28-byte keys - 51.97 cycles/hash +Small key speed test - 29-byte keys - 52.97 cycles/hash +Small key speed test - 30-byte keys - 52.98 cycles/hash +Small key speed test - 31-byte keys - 55.00 cycles/hash +Average 50.004 cycles/hash [[[ 'Hashmap' Speed Tests ]]] diff --git a/doc/PMurHash32.txt b/doc/PMurHash32.txt index 4450acad..ae36a24f 100644 --- a/doc/PMurHash32.txt +++ b/doc/PMurHash32.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 0.817 bytes/cycle - 2338.65 MiB/sec @ 3 ghz -Alignment 6 - 0.817 bytes/cycle - 2338.71 MiB/sec @ 3 ghz -Alignment 5 - 0.817 bytes/cycle - 2338.56 MiB/sec @ 3 ghz -Alignment 4 - 0.826 bytes/cycle - 2361.93 MiB/sec @ 3 ghz -Alignment 3 - 0.817 bytes/cycle - 2338.65 MiB/sec @ 3 ghz -Alignment 2 - 0.817 bytes/cycle - 2338.69 MiB/sec @ 3 ghz -Alignment 1 - 0.817 bytes/cycle - 2338.62 MiB/sec @ 3 ghz -Alignment 0 - 0.826 bytes/cycle - 2361.97 MiB/sec @ 3 ghz -Average - 0.819 bytes/cycle - 2344.47 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 36.00 cycles/hash -Small key speed test - 2-byte keys - 38.00 cycles/hash -Small key speed test - 3-byte keys - 40.00 cycles/hash -Small key speed test - 4-byte keys - 37.00 cycles/hash -Small key speed test - 5-byte keys - 38.00 cycles/hash -Small key speed test - 6-byte keys - 38.00 cycles/hash -Small key speed test - 7-byte keys - 38.55 cycles/hash -Small key speed test - 8-byte keys - 42.00 cycles/hash -Small key speed test - 9-byte keys - 43.00 cycles/hash -Small key speed test - 10-byte keys - 43.72 cycles/hash -Small key speed test - 11-byte keys - 43.11 cycles/hash -Small key speed test - 12-byte keys - 47.00 cycles/hash -Small key speed test - 13-byte keys - 48.00 cycles/hash -Small key speed test - 14-byte keys - 48.00 cycles/hash -Small key speed test - 15-byte keys - 48.00 cycles/hash -Small key speed test - 16-byte keys - 51.98 cycles/hash -Small key speed test - 17-byte keys - 53.00 cycles/hash -Small key speed test - 18-byte keys - 53.00 cycles/hash -Small key speed test - 19-byte keys - 53.00 cycles/hash -Small key speed test - 20-byte keys - 56.97 cycles/hash -Small key speed test - 21-byte keys - 58.00 cycles/hash -Small key speed test - 22-byte keys - 58.00 cycles/hash -Small key speed test - 23-byte keys - 58.00 cycles/hash -Small key speed test - 24-byte keys - 61.00 cycles/hash -Small key speed test - 25-byte keys - 62.76 cycles/hash -Small key speed test - 26-byte keys - 62.00 cycles/hash -Small key speed test - 27-byte keys - 62.87 cycles/hash -Small key speed test - 28-byte keys - 66.00 cycles/hash -Small key speed test - 29-byte keys - 67.00 cycles/hash -Small key speed test - 30-byte keys - 66.85 cycles/hash -Small key speed test - 31-byte keys - 67.00 cycles/hash -Average 51.155 cycles/hash +Alignment 7 - 1.048 bytes/cycle - 2999.17 MiB/sec @ 3 ghz +Alignment 6 - 1.047 bytes/cycle - 2995.23 MiB/sec @ 3 ghz +Alignment 5 - 1.048 bytes/cycle - 2998.17 MiB/sec @ 3 ghz +Alignment 4 - 1.060 bytes/cycle - 3031.38 MiB/sec @ 3 ghz +Alignment 3 - 1.048 bytes/cycle - 2999.70 MiB/sec @ 3 ghz +Alignment 2 - 1.048 bytes/cycle - 2999.00 MiB/sec @ 3 ghz +Alignment 1 - 1.049 bytes/cycle - 2999.94 MiB/sec @ 3 ghz +Alignment 0 - 1.057 bytes/cycle - 3024.17 MiB/sec @ 3 ghz +Average - 1.051 bytes/cycle - 3005.85 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 37.00 cycles/hash +Small key speed test - 2-byte keys - 39.00 cycles/hash +Small key speed test - 3-byte keys - 41.48 cycles/hash +Small key speed test - 4-byte keys - 36.00 cycles/hash +Small key speed test - 5-byte keys - 39.00 cycles/hash +Small key speed test - 6-byte keys - 42.59 cycles/hash +Small key speed test - 7-byte keys - 44.00 cycles/hash +Small key speed test - 8-byte keys - 40.00 cycles/hash +Small key speed test - 9-byte keys - 42.89 cycles/hash +Small key speed test - 10-byte keys - 45.96 cycles/hash +Small key speed test - 11-byte keys - 48.00 cycles/hash +Small key speed test - 12-byte keys - 43.00 cycles/hash +Small key speed test - 13-byte keys - 45.00 cycles/hash +Small key speed test - 14-byte keys - 46.53 cycles/hash +Small key speed test - 15-byte keys - 48.88 cycles/hash +Small key speed test - 16-byte keys - 47.00 cycles/hash +Small key speed test - 17-byte keys - 49.00 cycles/hash +Small key speed test - 18-byte keys - 50.43 cycles/hash +Small key speed test - 19-byte keys - 52.42 cycles/hash +Small key speed test - 20-byte keys - 51.00 cycles/hash +Small key speed test - 21-byte keys - 53.00 cycles/hash +Small key speed test - 22-byte keys - 53.00 cycles/hash +Small key speed test - 23-byte keys - 54.00 cycles/hash +Small key speed test - 24-byte keys - 56.00 cycles/hash +Small key speed test - 25-byte keys - 56.27 cycles/hash +Small key speed test - 26-byte keys - 56.47 cycles/hash +Small key speed test - 27-byte keys - 57.00 cycles/hash +Small key speed test - 28-byte keys - 59.23 cycles/hash +Small key speed test - 29-byte keys - 60.00 cycles/hash +Small key speed test - 30-byte keys - 60.00 cycles/hash +Small key speed test - 31-byte keys - 61.00 cycles/hash +Average 48.876 cycles/hash [[[ 'Hashmap' Speed Tests (when inlined) ]]] diff --git a/doc/SipHash.txt b/doc/SipHash.txt index 0f1f8946..a2a06929 100644 --- a/doc/SipHash.txt +++ b/doc/SipHash.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 0.343 bytes/cycle - 980.51 MiB/sec @ 3 ghz -Alignment 6 - 0.343 bytes/cycle - 980.51 MiB/sec @ 3 ghz -Alignment 5 - 0.343 bytes/cycle - 980.49 MiB/sec @ 3 ghz -Alignment 4 - 0.343 bytes/cycle - 980.53 MiB/sec @ 3 ghz -Alignment 3 - 0.343 bytes/cycle - 980.51 MiB/sec @ 3 ghz -Alignment 2 - 0.343 bytes/cycle - 980.52 MiB/sec @ 3 ghz -Alignment 1 - 0.343 bytes/cycle - 980.48 MiB/sec @ 3 ghz -Alignment 0 - 0.344 bytes/cycle - 983.07 MiB/sec @ 3 ghz -Average - 0.343 bytes/cycle - 980.83 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 91.00 cycles/hash -Small key speed test - 2-byte keys - 93.00 cycles/hash -Small key speed test - 3-byte keys - 94.00 cycles/hash -Small key speed test - 4-byte keys - 95.29 cycles/hash -Small key speed test - 5-byte keys - 95.22 cycles/hash -Small key speed test - 6-byte keys - 95.16 cycles/hash -Small key speed test - 7-byte keys - 95.29 cycles/hash -Small key speed test - 8-byte keys - 121.00 cycles/hash -Small key speed test - 9-byte keys - 120.54 cycles/hash -Small key speed test - 10-byte keys - 120.52 cycles/hash -Small key speed test - 11-byte keys - 121.00 cycles/hash -Small key speed test - 12-byte keys - 121.00 cycles/hash -Small key speed test - 13-byte keys - 121.00 cycles/hash -Small key speed test - 14-byte keys - 121.00 cycles/hash -Small key speed test - 15-byte keys - 122.00 cycles/hash -Small key speed test - 16-byte keys - 144.00 cycles/hash -Small key speed test - 17-byte keys - 143.00 cycles/hash -Small key speed test - 18-byte keys - 144.00 cycles/hash -Small key speed test - 19-byte keys - 144.00 cycles/hash -Small key speed test - 20-byte keys - 145.00 cycles/hash -Small key speed test - 21-byte keys - 146.00 cycles/hash -Small key speed test - 22-byte keys - 147.00 cycles/hash -Small key speed test - 23-byte keys - 147.81 cycles/hash -Small key speed test - 24-byte keys - 167.00 cycles/hash -Small key speed test - 25-byte keys - 166.00 cycles/hash -Small key speed test - 26-byte keys - 167.00 cycles/hash -Small key speed test - 27-byte keys - 168.00 cycles/hash -Small key speed test - 28-byte keys - 168.85 cycles/hash -Small key speed test - 29-byte keys - 169.28 cycles/hash -Small key speed test - 30-byte keys - 170.00 cycles/hash -Small key speed test - 31-byte keys - 171.00 cycles/hash -Average 133.386 cycles/hash +Alignment 7 - 0.330 bytes/cycle - 943.77 MiB/sec @ 3 ghz +Alignment 6 - 0.330 bytes/cycle - 943.96 MiB/sec @ 3 ghz +Alignment 5 - 0.330 bytes/cycle - 943.37 MiB/sec @ 3 ghz +Alignment 4 - 0.330 bytes/cycle - 943.90 MiB/sec @ 3 ghz +Alignment 3 - 0.330 bytes/cycle - 943.21 MiB/sec @ 3 ghz +Alignment 2 - 0.330 bytes/cycle - 943.52 MiB/sec @ 3 ghz +Alignment 1 - 0.330 bytes/cycle - 943.55 MiB/sec @ 3 ghz +Alignment 0 - 0.330 bytes/cycle - 942.94 MiB/sec @ 3 ghz +Average - 0.330 bytes/cycle - 943.53 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 108.97 cycles/hash +Small key speed test - 2-byte keys - 108.54 cycles/hash +Small key speed test - 3-byte keys - 108.77 cycles/hash +Small key speed test - 4-byte keys - 108.59 cycles/hash +Small key speed test - 5-byte keys - 108.60 cycles/hash +Small key speed test - 6-byte keys - 109.56 cycles/hash +Small key speed test - 7-byte keys - 109.23 cycles/hash +Small key speed test - 8-byte keys - 134.55 cycles/hash +Small key speed test - 9-byte keys - 133.57 cycles/hash +Small key speed test - 10-byte keys - 133.60 cycles/hash +Small key speed test - 11-byte keys - 133.63 cycles/hash +Small key speed test - 12-byte keys - 133.63 cycles/hash +Small key speed test - 13-byte keys - 133.69 cycles/hash +Small key speed test - 14-byte keys - 133.67 cycles/hash +Small key speed test - 15-byte keys - 133.67 cycles/hash +Small key speed test - 16-byte keys - 158.67 cycles/hash +Small key speed test - 17-byte keys - 157.64 cycles/hash +Small key speed test - 18-byte keys - 157.66 cycles/hash +Small key speed test - 19-byte keys - 157.64 cycles/hash +Small key speed test - 20-byte keys - 157.77 cycles/hash +Small key speed test - 21-byte keys - 157.75 cycles/hash +Small key speed test - 22-byte keys - 157.72 cycles/hash +Small key speed test - 23-byte keys - 157.75 cycles/hash +Small key speed test - 24-byte keys - 182.06 cycles/hash +Small key speed test - 25-byte keys - 183.35 cycles/hash +Small key speed test - 26-byte keys - 183.28 cycles/hash +Small key speed test - 27-byte keys - 183.77 cycles/hash +Small key speed test - 28-byte keys - 183.37 cycles/hash +Small key speed test - 29-byte keys - 183.84 cycles/hash +Small key speed test - 30-byte keys - 183.28 cycles/hash +Small key speed test - 31-byte keys - 183.80 cycles/hash +Average 147.148 cycles/hash [[[ 'Hashmap' Speed Tests (when inlined) ]]] diff --git a/doc/SipHash13.txt b/doc/SipHash13.txt index bc8d998d..0aaf7f1b 100644 --- a/doc/SipHash13.txt +++ b/doc/SipHash13.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 0.660 bytes/cycle - 1888.28 MiB/sec @ 3 ghz -Alignment 6 - 0.660 bytes/cycle - 1888.30 MiB/sec @ 3 ghz -Alignment 5 - 0.660 bytes/cycle - 1888.28 MiB/sec @ 3 ghz -Alignment 4 - 0.660 bytes/cycle - 1888.29 MiB/sec @ 3 ghz -Alignment 3 - 0.660 bytes/cycle - 1888.28 MiB/sec @ 3 ghz -Alignment 2 - 0.660 bytes/cycle - 1888.30 MiB/sec @ 3 ghz -Alignment 1 - 0.660 bytes/cycle - 1888.31 MiB/sec @ 3 ghz -Alignment 0 - 0.662 bytes/cycle - 1893.87 MiB/sec @ 3 ghz -Average - 0.660 bytes/cycle - 1888.99 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 69.00 cycles/hash -Small key speed test - 2-byte keys - 71.75 cycles/hash -Small key speed test - 3-byte keys - 72.00 cycles/hash -Small key speed test - 4-byte keys - 73.00 cycles/hash -Small key speed test - 5-byte keys - 73.00 cycles/hash -Small key speed test - 6-byte keys - 73.00 cycles/hash -Small key speed test - 7-byte keys - 73.28 cycles/hash -Small key speed test - 8-byte keys - 88.00 cycles/hash -Small key speed test - 9-byte keys - 88.00 cycles/hash -Small key speed test - 10-byte keys - 87.49 cycles/hash -Small key speed test - 11-byte keys - 87.70 cycles/hash -Small key speed test - 12-byte keys - 87.00 cycles/hash -Small key speed test - 13-byte keys - 88.00 cycles/hash -Small key speed test - 14-byte keys - 87.88 cycles/hash -Small key speed test - 15-byte keys - 87.96 cycles/hash -Small key speed test - 16-byte keys - 99.96 cycles/hash -Small key speed test - 17-byte keys - 99.00 cycles/hash -Small key speed test - 18-byte keys - 99.00 cycles/hash -Small key speed test - 19-byte keys - 99.23 cycles/hash -Small key speed test - 20-byte keys - 100.00 cycles/hash -Small key speed test - 21-byte keys - 100.11 cycles/hash -Small key speed test - 22-byte keys - 101.00 cycles/hash -Small key speed test - 23-byte keys - 102.00 cycles/hash -Small key speed test - 24-byte keys - 111.00 cycles/hash -Small key speed test - 25-byte keys - 111.00 cycles/hash -Small key speed test - 26-byte keys - 112.00 cycles/hash -Small key speed test - 27-byte keys - 112.00 cycles/hash -Small key speed test - 28-byte keys - 113.55 cycles/hash -Small key speed test - 29-byte keys - 114.24 cycles/hash -Small key speed test - 30-byte keys - 115.00 cycles/hash -Small key speed test - 31-byte keys - 116.00 cycles/hash -Average 93.940 cycles/hash +Alignment 7 - 0.634 bytes/cycle - 1813.94 MiB/sec @ 3 ghz +Alignment 6 - 0.634 bytes/cycle - 1813.39 MiB/sec @ 3 ghz +Alignment 5 - 0.634 bytes/cycle - 1812.92 MiB/sec @ 3 ghz +Alignment 4 - 0.634 bytes/cycle - 1812.61 MiB/sec @ 3 ghz +Alignment 3 - 0.634 bytes/cycle - 1812.86 MiB/sec @ 3 ghz +Alignment 2 - 0.633 bytes/cycle - 1812.42 MiB/sec @ 3 ghz +Alignment 1 - 0.633 bytes/cycle - 1811.51 MiB/sec @ 3 ghz +Alignment 0 - 0.633 bytes/cycle - 1812.34 MiB/sec @ 3 ghz +Average - 0.634 bytes/cycle - 1812.75 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 87.52 cycles/hash +Small key speed test - 2-byte keys - 87.10 cycles/hash +Small key speed test - 3-byte keys - 87.03 cycles/hash +Small key speed test - 4-byte keys - 86.94 cycles/hash +Small key speed test - 5-byte keys - 86.70 cycles/hash +Small key speed test - 6-byte keys - 87.34 cycles/hash +Small key speed test - 7-byte keys - 92.96 cycles/hash +Small key speed test - 8-byte keys - 99.92 cycles/hash +Small key speed test - 9-byte keys - 98.95 cycles/hash +Small key speed test - 10-byte keys - 98.94 cycles/hash +Small key speed test - 11-byte keys - 98.95 cycles/hash +Small key speed test - 12-byte keys - 98.93 cycles/hash +Small key speed test - 13-byte keys - 98.93 cycles/hash +Small key speed test - 14-byte keys - 98.94 cycles/hash +Small key speed test - 15-byte keys - 98.95 cycles/hash +Small key speed test - 16-byte keys - 112.84 cycles/hash +Small key speed test - 17-byte keys - 113.12 cycles/hash +Small key speed test - 18-byte keys - 112.04 cycles/hash +Small key speed test - 19-byte keys - 111.80 cycles/hash +Small key speed test - 20-byte keys - 112.03 cycles/hash +Small key speed test - 21-byte keys - 112.13 cycles/hash +Small key speed test - 22-byte keys - 112.52 cycles/hash +Small key speed test - 23-byte keys - 112.13 cycles/hash +Small key speed test - 24-byte keys - 126.32 cycles/hash +Small key speed test - 25-byte keys - 123.97 cycles/hash +Small key speed test - 26-byte keys - 124.52 cycles/hash +Small key speed test - 27-byte keys - 124.00 cycles/hash +Small key speed test - 28-byte keys - 124.54 cycles/hash +Small key speed test - 29-byte keys - 124.56 cycles/hash +Small key speed test - 30-byte keys - 124.08 cycles/hash +Small key speed test - 31-byte keys - 124.59 cycles/hash +Average 106.558 cycles/hash [[[ 'Hashmap' Speed Tests (when inlined) ]]] diff --git a/doc/Spooky128.txt b/doc/Spooky128.txt index 7d28b001..2ef3ea97 100644 --- a/doc/Spooky128.txt +++ b/doc/Spooky128.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 3.389 bytes/cycle - 9696.13 MiB/sec @ 3 ghz -Alignment 6 - 3.390 bytes/cycle - 9697.67 MiB/sec @ 3 ghz -Alignment 5 - 3.389 bytes/cycle - 9695.04 MiB/sec @ 3 ghz -Alignment 4 - 3.392 bytes/cycle - 9705.62 MiB/sec @ 3 ghz -Alignment 3 - 3.386 bytes/cycle - 9688.81 MiB/sec @ 3 ghz -Alignment 2 - 3.390 bytes/cycle - 9698.11 MiB/sec @ 3 ghz -Alignment 1 - 3.391 bytes/cycle - 9702.09 MiB/sec @ 3 ghz -Alignment 0 - 3.454 bytes/cycle - 9882.00 MiB/sec @ 3 ghz -Average - 3.398 bytes/cycle - 9720.68 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 50.00 cycles/hash -Small key speed test - 2-byte keys - 51.00 cycles/hash -Small key speed test - 3-byte keys - 52.84 cycles/hash -Small key speed test - 4-byte keys - 50.00 cycles/hash -Small key speed test - 5-byte keys - 49.29 cycles/hash -Small key speed test - 6-byte keys - 50.00 cycles/hash -Small key speed test - 7-byte keys - 50.00 cycles/hash -Small key speed test - 8-byte keys - 59.53 cycles/hash -Small key speed test - 9-byte keys - 58.78 cycles/hash -Small key speed test - 10-byte keys - 58.00 cycles/hash -Small key speed test - 11-byte keys - 59.00 cycles/hash -Small key speed test - 12-byte keys - 59.00 cycles/hash -Small key speed test - 13-byte keys - 59.00 cycles/hash -Small key speed test - 14-byte keys - 59.00 cycles/hash -Small key speed test - 15-byte keys - 59.00 cycles/hash -Small key speed test - 16-byte keys - 83.00 cycles/hash -Small key speed test - 17-byte keys - 84.00 cycles/hash -Small key speed test - 18-byte keys - 84.00 cycles/hash -Small key speed test - 19-byte keys - 84.00 cycles/hash -Small key speed test - 20-byte keys - 84.00 cycles/hash -Small key speed test - 21-byte keys - 84.22 cycles/hash -Small key speed test - 22-byte keys - 84.17 cycles/hash -Small key speed test - 23-byte keys - 85.99 cycles/hash -Small key speed test - 24-byte keys - 83.25 cycles/hash -Small key speed test - 25-byte keys - 84.00 cycles/hash -Small key speed test - 26-byte keys - 83.27 cycles/hash -Small key speed test - 27-byte keys - 83.00 cycles/hash -Small key speed test - 28-byte keys - 84.00 cycles/hash -Small key speed test - 29-byte keys - 83.00 cycles/hash -Small key speed test - 30-byte keys - 82.26 cycles/hash -Small key speed test - 31-byte keys - 83.00 cycles/hash -Average 69.794 cycles/hash +Alignment 7 - 3.831 bytes/cycle - 10961.49 MiB/sec @ 3 ghz +Alignment 6 - 3.831 bytes/cycle - 10960.82 MiB/sec @ 3 ghz +Alignment 5 - 3.831 bytes/cycle - 10960.02 MiB/sec @ 3 ghz +Alignment 4 - 3.830 bytes/cycle - 10958.80 MiB/sec @ 3 ghz +Alignment 3 - 3.831 bytes/cycle - 10960.10 MiB/sec @ 3 ghz +Alignment 2 - 4.607 bytes/cycle - 13181.52 MiB/sec @ 3 ghz +Alignment 1 - 4.588 bytes/cycle - 13127.33 MiB/sec @ 3 ghz +Alignment 0 - 4.593 bytes/cycle - 13140.74 MiB/sec @ 3 ghz +Average - 4.118 bytes/cycle - 11781.35 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 45.86 cycles/hash +Small key speed test - 2-byte keys - 47.00 cycles/hash +Small key speed test - 3-byte keys - 48.00 cycles/hash +Small key speed test - 4-byte keys - 45.99 cycles/hash +Small key speed test - 5-byte keys - 47.00 cycles/hash +Small key speed test - 6-byte keys - 48.73 cycles/hash +Small key speed test - 7-byte keys - 50.31 cycles/hash +Small key speed test - 8-byte keys - 45.00 cycles/hash +Small key speed test - 9-byte keys - 46.00 cycles/hash +Small key speed test - 10-byte keys - 47.17 cycles/hash +Small key speed test - 11-byte keys - 48.29 cycles/hash +Small key speed test - 12-byte keys - 45.99 cycles/hash +Small key speed test - 13-byte keys - 47.17 cycles/hash +Small key speed test - 14-byte keys - 48.99 cycles/hash +Small key speed test - 15-byte keys - 49.75 cycles/hash +Small key speed test - 16-byte keys - 69.68 cycles/hash +Small key speed test - 17-byte keys - 69.51 cycles/hash +Small key speed test - 18-byte keys - 69.25 cycles/hash +Small key speed test - 19-byte keys - 70.29 cycles/hash +Small key speed test - 20-byte keys - 69.50 cycles/hash +Small key speed test - 21-byte keys - 69.54 cycles/hash +Small key speed test - 22-byte keys - 70.59 cycles/hash +Small key speed test - 23-byte keys - 72.15 cycles/hash +Small key speed test - 24-byte keys - 69.64 cycles/hash +Small key speed test - 25-byte keys - 69.75 cycles/hash +Small key speed test - 26-byte keys - 68.98 cycles/hash +Small key speed test - 27-byte keys - 68.97 cycles/hash +Small key speed test - 28-byte keys - 68.99 cycles/hash +Small key speed test - 29-byte keys - 68.99 cycles/hash +Small key speed test - 30-byte keys - 69.72 cycles/hash +Small key speed test - 31-byte keys - 69.50 cycles/hash +Average 58.913 cycles/hash [[[ 'Hashmap' Speed Tests (when inlined) ]]] diff --git a/doc/Spooky32.txt b/doc/Spooky32.txt index 77a61fa0..453eeefd 100644 --- a/doc/Spooky32.txt +++ b/doc/Spooky32.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 3.388 bytes/cycle - 9692.48 MiB/sec @ 3 ghz -Alignment 6 - 3.389 bytes/cycle - 9696.01 MiB/sec @ 3 ghz -Alignment 5 - 3.391 bytes/cycle - 9700.64 MiB/sec @ 3 ghz -Alignment 4 - 3.392 bytes/cycle - 9705.42 MiB/sec @ 3 ghz -Alignment 3 - 3.375 bytes/cycle - 9654.91 MiB/sec @ 3 ghz -Alignment 2 - 3.387 bytes/cycle - 9689.88 MiB/sec @ 3 ghz -Alignment 1 - 3.386 bytes/cycle - 9688.32 MiB/sec @ 3 ghz -Alignment 0 - 3.442 bytes/cycle - 9846.60 MiB/sec @ 3 ghz -Average - 3.394 bytes/cycle - 9709.28 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 48.00 cycles/hash -Small key speed test - 2-byte keys - 49.26 cycles/hash -Small key speed test - 3-byte keys - 50.00 cycles/hash -Small key speed test - 4-byte keys - 48.00 cycles/hash -Small key speed test - 5-byte keys - 47.93 cycles/hash -Small key speed test - 6-byte keys - 48.00 cycles/hash -Small key speed test - 7-byte keys - 48.00 cycles/hash -Small key speed test - 8-byte keys - 57.00 cycles/hash -Small key speed test - 9-byte keys - 58.00 cycles/hash -Small key speed test - 10-byte keys - 57.00 cycles/hash -Small key speed test - 11-byte keys - 56.97 cycles/hash -Small key speed test - 12-byte keys - 57.00 cycles/hash -Small key speed test - 13-byte keys - 56.42 cycles/hash -Small key speed test - 14-byte keys - 56.69 cycles/hash -Small key speed test - 15-byte keys - 57.00 cycles/hash -Small key speed test - 16-byte keys - 81.00 cycles/hash -Small key speed test - 17-byte keys - 81.91 cycles/hash -Small key speed test - 18-byte keys - 82.00 cycles/hash -Small key speed test - 19-byte keys - 83.00 cycles/hash -Small key speed test - 20-byte keys - 81.91 cycles/hash -Small key speed test - 21-byte keys - 82.00 cycles/hash -Small key speed test - 22-byte keys - 83.00 cycles/hash -Small key speed test - 23-byte keys - 83.15 cycles/hash -Small key speed test - 24-byte keys - 81.96 cycles/hash -Small key speed test - 25-byte keys - 81.00 cycles/hash -Small key speed test - 26-byte keys - 81.00 cycles/hash -Small key speed test - 27-byte keys - 81.00 cycles/hash -Small key speed test - 28-byte keys - 82.00 cycles/hash -Small key speed test - 29-byte keys - 81.00 cycles/hash -Small key speed test - 30-byte keys - 81.00 cycles/hash -Small key speed test - 31-byte keys - 80.64 cycles/hash -Average 67.834 cycles/hash +Alignment 7 - 4.581 bytes/cycle - 13105.07 MiB/sec @ 3 ghz +Alignment 6 - 4.579 bytes/cycle - 13100.23 MiB/sec @ 3 ghz +Alignment 5 - 4.579 bytes/cycle - 13101.47 MiB/sec @ 3 ghz +Alignment 4 - 4.580 bytes/cycle - 13104.46 MiB/sec @ 3 ghz +Alignment 3 - 4.581 bytes/cycle - 13105.20 MiB/sec @ 3 ghz +Alignment 2 - 4.579 bytes/cycle - 13101.24 MiB/sec @ 3 ghz +Alignment 1 - 4.579 bytes/cycle - 13101.57 MiB/sec @ 3 ghz +Alignment 0 - 4.597 bytes/cycle - 13152.34 MiB/sec @ 3 ghz +Average - 4.582 bytes/cycle - 13108.95 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 42.00 cycles/hash +Small key speed test - 2-byte keys - 45.00 cycles/hash +Small key speed test - 3-byte keys - 45.16 cycles/hash +Small key speed test - 4-byte keys - 42.00 cycles/hash +Small key speed test - 5-byte keys - 45.00 cycles/hash +Small key speed test - 6-byte keys - 45.00 cycles/hash +Small key speed test - 7-byte keys - 47.17 cycles/hash +Small key speed test - 8-byte keys - 43.00 cycles/hash +Small key speed test - 9-byte keys - 43.00 cycles/hash +Small key speed test - 10-byte keys - 45.11 cycles/hash +Small key speed test - 11-byte keys - 46.00 cycles/hash +Small key speed test - 12-byte keys - 43.00 cycles/hash +Small key speed test - 13-byte keys - 45.60 cycles/hash +Small key speed test - 14-byte keys - 45.24 cycles/hash +Small key speed test - 15-byte keys - 46.21 cycles/hash +Small key speed test - 16-byte keys - 66.72 cycles/hash +Small key speed test - 17-byte keys - 66.61 cycles/hash +Small key speed test - 18-byte keys - 68.03 cycles/hash +Small key speed test - 19-byte keys - 69.56 cycles/hash +Small key speed test - 20-byte keys - 66.48 cycles/hash +Small key speed test - 21-byte keys - 67.72 cycles/hash +Small key speed test - 22-byte keys - 68.43 cycles/hash +Small key speed test - 23-byte keys - 69.99 cycles/hash +Small key speed test - 24-byte keys - 66.97 cycles/hash +Small key speed test - 25-byte keys - 67.87 cycles/hash +Small key speed test - 26-byte keys - 65.90 cycles/hash +Small key speed test - 27-byte keys - 66.78 cycles/hash +Small key speed test - 28-byte keys - 65.97 cycles/hash +Small key speed test - 29-byte keys - 65.90 cycles/hash +Small key speed test - 30-byte keys - 67.00 cycles/hash +Small key speed test - 31-byte keys - 65.97 cycles/hash +Average 56.271 cycles/hash [[[ 'Hashmap' Speed Tests (when inlined) ]]] diff --git a/doc/Spooky64.txt b/doc/Spooky64.txt index 52838f88..df11a0bd 100644 --- a/doc/Spooky64.txt +++ b/doc/Spooky64.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 3.385 bytes/cycle - 9684.87 MiB/sec @ 3 ghz -Alignment 6 - 3.388 bytes/cycle - 9693.35 MiB/sec @ 3 ghz -Alignment 5 - 3.390 bytes/cycle - 9697.88 MiB/sec @ 3 ghz -Alignment 4 - 3.396 bytes/cycle - 9714.93 MiB/sec @ 3 ghz -Alignment 3 - 3.387 bytes/cycle - 9691.40 MiB/sec @ 3 ghz -Alignment 2 - 3.386 bytes/cycle - 9686.75 MiB/sec @ 3 ghz -Alignment 1 - 3.393 bytes/cycle - 9707.60 MiB/sec @ 3 ghz -Alignment 0 - 3.449 bytes/cycle - 9867.82 MiB/sec @ 3 ghz -Average - 3.397 bytes/cycle - 9718.08 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 48.00 cycles/hash -Small key speed test - 2-byte keys - 49.00 cycles/hash -Small key speed test - 3-byte keys - 50.00 cycles/hash -Small key speed test - 4-byte keys - 48.00 cycles/hash -Small key speed test - 5-byte keys - 48.00 cycles/hash -Small key speed test - 6-byte keys - 48.00 cycles/hash -Small key speed test - 7-byte keys - 48.00 cycles/hash -Small key speed test - 8-byte keys - 57.00 cycles/hash -Small key speed test - 9-byte keys - 58.00 cycles/hash -Small key speed test - 10-byte keys - 57.00 cycles/hash -Small key speed test - 11-byte keys - 56.98 cycles/hash -Small key speed test - 12-byte keys - 57.00 cycles/hash -Small key speed test - 13-byte keys - 56.00 cycles/hash -Small key speed test - 14-byte keys - 56.71 cycles/hash -Small key speed test - 15-byte keys - 57.24 cycles/hash -Small key speed test - 16-byte keys - 81.00 cycles/hash -Small key speed test - 17-byte keys - 81.91 cycles/hash -Small key speed test - 18-byte keys - 82.00 cycles/hash -Small key speed test - 19-byte keys - 83.00 cycles/hash -Small key speed test - 20-byte keys - 81.90 cycles/hash -Small key speed test - 21-byte keys - 82.00 cycles/hash -Small key speed test - 22-byte keys - 83.00 cycles/hash -Small key speed test - 23-byte keys - 83.14 cycles/hash -Small key speed test - 24-byte keys - 81.96 cycles/hash -Small key speed test - 25-byte keys - 81.00 cycles/hash -Small key speed test - 26-byte keys - 81.00 cycles/hash -Small key speed test - 27-byte keys - 81.00 cycles/hash -Small key speed test - 28-byte keys - 81.89 cycles/hash -Small key speed test - 29-byte keys - 81.00 cycles/hash -Small key speed test - 30-byte keys - 81.00 cycles/hash -Small key speed test - 31-byte keys - 80.60 cycles/hash -Average 67.817 cycles/hash +Alignment 7 - 4.714 bytes/cycle - 13487.63 MiB/sec @ 3 ghz +Alignment 6 - 4.728 bytes/cycle - 13526.94 MiB/sec @ 3 ghz +Alignment 5 - 4.728 bytes/cycle - 13527.58 MiB/sec @ 3 ghz +Alignment 4 - 4.728 bytes/cycle - 13526.82 MiB/sec @ 3 ghz +Alignment 3 - 4.728 bytes/cycle - 13526.67 MiB/sec @ 3 ghz +Alignment 2 - 4.728 bytes/cycle - 13526.69 MiB/sec @ 3 ghz +Alignment 1 - 4.728 bytes/cycle - 13527.88 MiB/sec @ 3 ghz +Alignment 0 - 4.748 bytes/cycle - 13584.70 MiB/sec @ 3 ghz +Average - 4.729 bytes/cycle - 13529.36 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 41.00 cycles/hash +Small key speed test - 2-byte keys - 43.23 cycles/hash +Small key speed test - 3-byte keys - 44.00 cycles/hash +Small key speed test - 4-byte keys - 41.00 cycles/hash +Small key speed test - 5-byte keys - 43.59 cycles/hash +Small key speed test - 6-byte keys - 44.00 cycles/hash +Small key speed test - 7-byte keys - 46.00 cycles/hash +Small key speed test - 8-byte keys - 41.00 cycles/hash +Small key speed test - 9-byte keys - 42.00 cycles/hash +Small key speed test - 10-byte keys - 44.47 cycles/hash +Small key speed test - 11-byte keys - 45.99 cycles/hash +Small key speed test - 12-byte keys - 41.00 cycles/hash +Small key speed test - 13-byte keys - 43.23 cycles/hash +Small key speed test - 14-byte keys - 44.47 cycles/hash +Small key speed test - 15-byte keys - 45.00 cycles/hash +Small key speed test - 16-byte keys - 65.10 cycles/hash +Small key speed test - 17-byte keys - 64.64 cycles/hash +Small key speed test - 18-byte keys - 65.32 cycles/hash +Small key speed test - 19-byte keys - 66.00 cycles/hash +Small key speed test - 20-byte keys - 64.52 cycles/hash +Small key speed test - 21-byte keys - 66.57 cycles/hash +Small key speed test - 22-byte keys - 66.77 cycles/hash +Small key speed test - 23-byte keys - 67.43 cycles/hash +Small key speed test - 24-byte keys - 64.91 cycles/hash +Small key speed test - 25-byte keys - 82.00 cycles/hash +Small key speed test - 26-byte keys - 82.41 cycles/hash +Small key speed test - 27-byte keys - 83.91 cycles/hash +Small key speed test - 28-byte keys - 82.79 cycles/hash +Small key speed test - 29-byte keys - 82.00 cycles/hash +Small key speed test - 30-byte keys - 82.61 cycles/hash +Small key speed test - 31-byte keys - 84.69 cycles/hash +Average 58.762 cycles/hash [[[ 'Hashmap' Speed Tests (when inlined) ]]] diff --git a/doc/SpookyV2_128.txt b/doc/SpookyV2_128.txt index 0a822cbe..33c695bd 100644 --- a/doc/SpookyV2_128.txt +++ b/doc/SpookyV2_128.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 3.321 bytes/cycle - 9501.06 MiB/sec @ 3 ghz -Alignment 6 - 3.320 bytes/cycle - 9498.88 MiB/sec @ 3 ghz -Alignment 5 - 3.326 bytes/cycle - 9517.13 MiB/sec @ 3 ghz -Alignment 4 - 3.321 bytes/cycle - 9502.81 MiB/sec @ 3 ghz -Alignment 3 - 3.326 bytes/cycle - 9516.31 MiB/sec @ 3 ghz -Alignment 2 - 3.318 bytes/cycle - 9493.72 MiB/sec @ 3 ghz -Alignment 1 - 3.321 bytes/cycle - 9501.49 MiB/sec @ 3 ghz -Alignment 0 - 3.377 bytes/cycle - 9663.07 MiB/sec @ 3 ghz -Average - 3.329 bytes/cycle - 9524.31 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 52.25 cycles/hash -Small key speed test - 2-byte keys - 51.95 cycles/hash -Small key speed test - 3-byte keys - 54.00 cycles/hash -Small key speed test - 4-byte keys - 52.00 cycles/hash -Small key speed test - 5-byte keys - 52.02 cycles/hash -Small key speed test - 6-byte keys - 54.00 cycles/hash -Small key speed test - 7-byte keys - 55.00 cycles/hash -Small key speed test - 8-byte keys - 52.00 cycles/hash -Small key speed test - 9-byte keys - 51.00 cycles/hash -Small key speed test - 10-byte keys - 51.39 cycles/hash -Small key speed test - 11-byte keys - 53.00 cycles/hash -Small key speed test - 12-byte keys - 50.00 cycles/hash -Small key speed test - 13-byte keys - 51.00 cycles/hash -Small key speed test - 14-byte keys - 52.83 cycles/hash -Small key speed test - 15-byte keys - 55.00 cycles/hash -Small key speed test - 16-byte keys - 79.30 cycles/hash -Small key speed test - 17-byte keys - 77.99 cycles/hash -Small key speed test - 18-byte keys - 78.67 cycles/hash -Small key speed test - 19-byte keys - 81.07 cycles/hash -Small key speed test - 20-byte keys - 79.26 cycles/hash -Small key speed test - 21-byte keys - 77.00 cycles/hash -Small key speed test - 22-byte keys - 78.00 cycles/hash -Small key speed test - 23-byte keys - 79.00 cycles/hash -Small key speed test - 24-byte keys - 77.00 cycles/hash -Small key speed test - 25-byte keys - 77.94 cycles/hash -Small key speed test - 26-byte keys - 77.00 cycles/hash -Small key speed test - 27-byte keys - 78.00 cycles/hash -Small key speed test - 28-byte keys - 76.87 cycles/hash -Small key speed test - 29-byte keys - 77.60 cycles/hash -Small key speed test - 30-byte keys - 78.00 cycles/hash -Small key speed test - 31-byte keys - 80.00 cycles/hash -Average 65.810 cycles/hash +Alignment 7 - 4.716 bytes/cycle - 13493.24 MiB/sec @ 3 ghz +Alignment 6 - 4.722 bytes/cycle - 13509.74 MiB/sec @ 3 ghz +Alignment 5 - 4.722 bytes/cycle - 13510.60 MiB/sec @ 3 ghz +Alignment 4 - 4.718 bytes/cycle - 13499.73 MiB/sec @ 3 ghz +Alignment 3 - 4.721 bytes/cycle - 13508.21 MiB/sec @ 3 ghz +Alignment 2 - 4.722 bytes/cycle - 13509.05 MiB/sec @ 3 ghz +Alignment 1 - 4.723 bytes/cycle - 13513.25 MiB/sec @ 3 ghz +Alignment 0 - 4.739 bytes/cycle - 13558.72 MiB/sec @ 3 ghz +Average - 4.723 bytes/cycle - 13512.82 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 44.00 cycles/hash +Small key speed test - 2-byte keys - 45.88 cycles/hash +Small key speed test - 3-byte keys - 47.00 cycles/hash +Small key speed test - 4-byte keys - 44.00 cycles/hash +Small key speed test - 5-byte keys - 45.79 cycles/hash +Small key speed test - 6-byte keys - 47.38 cycles/hash +Small key speed test - 7-byte keys - 48.83 cycles/hash +Small key speed test - 8-byte keys - 44.00 cycles/hash +Small key speed test - 9-byte keys - 44.42 cycles/hash +Small key speed test - 10-byte keys - 46.93 cycles/hash +Small key speed test - 11-byte keys - 47.18 cycles/hash +Small key speed test - 12-byte keys - 44.00 cycles/hash +Small key speed test - 13-byte keys - 47.36 cycles/hash +Small key speed test - 14-byte keys - 48.66 cycles/hash +Small key speed test - 15-byte keys - 48.24 cycles/hash +Small key speed test - 16-byte keys - 69.79 cycles/hash +Small key speed test - 17-byte keys - 68.00 cycles/hash +Small key speed test - 18-byte keys - 68.00 cycles/hash +Small key speed test - 19-byte keys - 69.74 cycles/hash +Small key speed test - 20-byte keys - 68.13 cycles/hash +Small key speed test - 21-byte keys - 68.17 cycles/hash +Small key speed test - 22-byte keys - 69.96 cycles/hash +Small key speed test - 23-byte keys - 70.59 cycles/hash +Small key speed test - 24-byte keys - 68.30 cycles/hash +Small key speed test - 25-byte keys - 69.96 cycles/hash +Small key speed test - 26-byte keys - 69.75 cycles/hash +Small key speed test - 27-byte keys - 71.13 cycles/hash +Small key speed test - 28-byte keys - 69.97 cycles/hash +Small key speed test - 29-byte keys - 69.90 cycles/hash +Small key speed test - 30-byte keys - 70.99 cycles/hash +Small key speed test - 31-byte keys - 72.14 cycles/hash +Average 58.328 cycles/hash [[[ 'Hashmap' Speed Tests ]]] diff --git a/doc/SpookyV2_32.txt b/doc/SpookyV2_32.txt index e5fb324c..9407b7c4 100644 --- a/doc/SpookyV2_32.txt +++ b/doc/SpookyV2_32.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 3.323 bytes/cycle - 9507.05 MiB/sec @ 3 ghz -Alignment 6 - 3.316 bytes/cycle - 9486.16 MiB/sec @ 3 ghz -Alignment 5 - 3.317 bytes/cycle - 9488.98 MiB/sec @ 3 ghz -Alignment 4 - 3.325 bytes/cycle - 9513.82 MiB/sec @ 3 ghz -Alignment 3 - 3.329 bytes/cycle - 9524.57 MiB/sec @ 3 ghz -Alignment 2 - 3.330 bytes/cycle - 9526.86 MiB/sec @ 3 ghz -Alignment 1 - 3.329 bytes/cycle - 9524.44 MiB/sec @ 3 ghz -Alignment 0 - 3.378 bytes/cycle - 9663.15 MiB/sec @ 3 ghz -Average - 3.331 bytes/cycle - 9529.38 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 50.00 cycles/hash -Small key speed test - 2-byte keys - 50.00 cycles/hash -Small key speed test - 3-byte keys - 52.51 cycles/hash -Small key speed test - 4-byte keys - 50.00 cycles/hash -Small key speed test - 5-byte keys - 50.00 cycles/hash -Small key speed test - 6-byte keys - 52.17 cycles/hash -Small key speed test - 7-byte keys - 53.47 cycles/hash -Small key speed test - 8-byte keys - 50.00 cycles/hash -Small key speed test - 9-byte keys - 50.00 cycles/hash -Small key speed test - 10-byte keys - 50.00 cycles/hash -Small key speed test - 11-byte keys - 51.00 cycles/hash -Small key speed test - 12-byte keys - 48.42 cycles/hash -Small key speed test - 13-byte keys - 49.85 cycles/hash -Small key speed test - 14-byte keys - 50.98 cycles/hash -Small key speed test - 15-byte keys - 54.00 cycles/hash -Small key speed test - 16-byte keys - 77.00 cycles/hash -Small key speed test - 17-byte keys - 76.70 cycles/hash -Small key speed test - 18-byte keys - 78.50 cycles/hash -Small key speed test - 19-byte keys - 78.85 cycles/hash -Small key speed test - 20-byte keys - 76.70 cycles/hash -Small key speed test - 21-byte keys - 76.91 cycles/hash -Small key speed test - 22-byte keys - 77.00 cycles/hash -Small key speed test - 23-byte keys - 77.00 cycles/hash -Small key speed test - 24-byte keys - 76.85 cycles/hash -Small key speed test - 25-byte keys - 75.17 cycles/hash -Small key speed test - 26-byte keys - 76.00 cycles/hash -Small key speed test - 27-byte keys - 78.20 cycles/hash -Small key speed test - 28-byte keys - 75.00 cycles/hash -Small key speed test - 29-byte keys - 77.27 cycles/hash -Small key speed test - 30-byte keys - 77.64 cycles/hash -Small key speed test - 31-byte keys - 78.00 cycles/hash -Average 64.360 cycles/hash +Alignment 7 - 4.718 bytes/cycle - 13499.03 MiB/sec @ 3 ghz +Alignment 6 - 4.731 bytes/cycle - 13535.33 MiB/sec @ 3 ghz +Alignment 5 - 4.731 bytes/cycle - 13536.24 MiB/sec @ 3 ghz +Alignment 4 - 4.726 bytes/cycle - 13521.11 MiB/sec @ 3 ghz +Alignment 3 - 4.731 bytes/cycle - 13534.21 MiB/sec @ 3 ghz +Alignment 2 - 4.723 bytes/cycle - 13513.00 MiB/sec @ 3 ghz +Alignment 1 - 4.722 bytes/cycle - 13509.08 MiB/sec @ 3 ghz +Alignment 0 - 4.748 bytes/cycle - 13585.27 MiB/sec @ 3 ghz +Average - 4.729 bytes/cycle - 13529.16 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 41.00 cycles/hash +Small key speed test - 2-byte keys - 43.90 cycles/hash +Small key speed test - 3-byte keys - 43.99 cycles/hash +Small key speed test - 4-byte keys - 41.00 cycles/hash +Small key speed test - 5-byte keys - 43.76 cycles/hash +Small key speed test - 6-byte keys - 43.94 cycles/hash +Small key speed test - 7-byte keys - 46.00 cycles/hash +Small key speed test - 8-byte keys - 41.46 cycles/hash +Small key speed test - 9-byte keys - 42.00 cycles/hash +Small key speed test - 10-byte keys - 44.00 cycles/hash +Small key speed test - 11-byte keys - 45.00 cycles/hash +Small key speed test - 12-byte keys - 41.16 cycles/hash +Small key speed test - 13-byte keys - 44.00 cycles/hash +Small key speed test - 14-byte keys - 43.98 cycles/hash +Small key speed test - 15-byte keys - 45.00 cycles/hash +Small key speed test - 16-byte keys - 66.12 cycles/hash +Small key speed test - 17-byte keys - 65.73 cycles/hash +Small key speed test - 18-byte keys - 66.09 cycles/hash +Small key speed test - 19-byte keys - 66.00 cycles/hash +Small key speed test - 20-byte keys - 65.74 cycles/hash +Small key speed test - 21-byte keys - 65.87 cycles/hash +Small key speed test - 22-byte keys - 66.44 cycles/hash +Small key speed test - 23-byte keys - 68.78 cycles/hash +Small key speed test - 24-byte keys - 65.71 cycles/hash +Small key speed test - 25-byte keys - 66.74 cycles/hash +Small key speed test - 26-byte keys - 68.00 cycles/hash +Small key speed test - 27-byte keys - 68.33 cycles/hash +Small key speed test - 28-byte keys - 66.93 cycles/hash +Small key speed test - 29-byte keys - 67.74 cycles/hash +Small key speed test - 30-byte keys - 67.97 cycles/hash +Small key speed test - 31-byte keys - 69.63 cycles/hash +Average 55.548 cycles/hash [[[ 'Hashmap' Speed Tests ]]] diff --git a/doc/SpookyV2_64.txt b/doc/SpookyV2_64.txt index 9b00653d..818bbc9e 100644 --- a/doc/SpookyV2_64.txt +++ b/doc/SpookyV2_64.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 3.320 bytes/cycle - 9499.70 MiB/sec @ 3 ghz -Alignment 6 - 3.313 bytes/cycle - 9477.69 MiB/sec @ 3 ghz -Alignment 5 - 3.315 bytes/cycle - 9482.98 MiB/sec @ 3 ghz -Alignment 4 - 3.317 bytes/cycle - 9490.22 MiB/sec @ 3 ghz -Alignment 3 - 3.311 bytes/cycle - 9473.23 MiB/sec @ 3 ghz -Alignment 2 - 3.318 bytes/cycle - 9492.55 MiB/sec @ 3 ghz -Alignment 1 - 3.316 bytes/cycle - 9487.79 MiB/sec @ 3 ghz -Alignment 0 - 3.370 bytes/cycle - 9641.38 MiB/sec @ 3 ghz -Average - 3.322 bytes/cycle - 9505.69 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 50.00 cycles/hash -Small key speed test - 2-byte keys - 50.00 cycles/hash -Small key speed test - 3-byte keys - 52.00 cycles/hash -Small key speed test - 4-byte keys - 50.00 cycles/hash -Small key speed test - 5-byte keys - 50.00 cycles/hash -Small key speed test - 6-byte keys - 52.00 cycles/hash -Small key speed test - 7-byte keys - 53.59 cycles/hash -Small key speed test - 8-byte keys - 50.00 cycles/hash -Small key speed test - 9-byte keys - 50.00 cycles/hash -Small key speed test - 10-byte keys - 50.00 cycles/hash -Small key speed test - 11-byte keys - 51.00 cycles/hash -Small key speed test - 12-byte keys - 48.85 cycles/hash -Small key speed test - 13-byte keys - 49.00 cycles/hash -Small key speed test - 14-byte keys - 51.00 cycles/hash -Small key speed test - 15-byte keys - 53.00 cycles/hash -Small key speed test - 16-byte keys - 77.00 cycles/hash -Small key speed test - 17-byte keys - 76.77 cycles/hash -Small key speed test - 18-byte keys - 78.56 cycles/hash -Small key speed test - 19-byte keys - 78.90 cycles/hash -Small key speed test - 20-byte keys - 76.79 cycles/hash -Small key speed test - 21-byte keys - 77.00 cycles/hash -Small key speed test - 22-byte keys - 77.46 cycles/hash -Small key speed test - 23-byte keys - 77.25 cycles/hash -Small key speed test - 24-byte keys - 77.00 cycles/hash -Small key speed test - 25-byte keys - 75.77 cycles/hash -Small key speed test - 26-byte keys - 76.00 cycles/hash -Small key speed test - 27-byte keys - 78.97 cycles/hash -Small key speed test - 28-byte keys - 75.77 cycles/hash -Small key speed test - 29-byte keys - 77.97 cycles/hash -Small key speed test - 30-byte keys - 77.98 cycles/hash -Small key speed test - 31-byte keys - 78.00 cycles/hash -Average 64.439 cycles/hash +Alignment 7 - 3.831 bytes/cycle - 10959.39 MiB/sec @ 3 ghz +Alignment 6 - 3.831 bytes/cycle - 10959.81 MiB/sec @ 3 ghz +Alignment 5 - 4.644 bytes/cycle - 13287.20 MiB/sec @ 3 ghz +Alignment 4 - 4.634 bytes/cycle - 13257.92 MiB/sec @ 3 ghz +Alignment 3 - 4.626 bytes/cycle - 13235.05 MiB/sec @ 3 ghz +Alignment 2 - 4.620 bytes/cycle - 13218.66 MiB/sec @ 3 ghz +Alignment 1 - 4.621 bytes/cycle - 13220.53 MiB/sec @ 3 ghz +Alignment 0 - 4.646 bytes/cycle - 13291.98 MiB/sec @ 3 ghz +Average - 4.432 bytes/cycle - 12678.82 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 42.00 cycles/hash +Small key speed test - 2-byte keys - 44.85 cycles/hash +Small key speed test - 3-byte keys - 44.99 cycles/hash +Small key speed test - 4-byte keys - 41.99 cycles/hash +Small key speed test - 5-byte keys - 44.79 cycles/hash +Small key speed test - 6-byte keys - 45.00 cycles/hash +Small key speed test - 7-byte keys - 46.87 cycles/hash +Small key speed test - 8-byte keys - 42.00 cycles/hash +Small key speed test - 9-byte keys - 43.00 cycles/hash +Small key speed test - 10-byte keys - 45.00 cycles/hash +Small key speed test - 11-byte keys - 46.00 cycles/hash +Small key speed test - 12-byte keys - 42.28 cycles/hash +Small key speed test - 13-byte keys - 45.00 cycles/hash +Small key speed test - 14-byte keys - 45.00 cycles/hash +Small key speed test - 15-byte keys - 45.87 cycles/hash +Small key speed test - 16-byte keys - 67.79 cycles/hash +Small key speed test - 17-byte keys - 66.89 cycles/hash +Small key speed test - 18-byte keys - 67.60 cycles/hash +Small key speed test - 19-byte keys - 67.55 cycles/hash +Small key speed test - 20-byte keys - 66.89 cycles/hash +Small key speed test - 21-byte keys - 67.49 cycles/hash +Small key speed test - 22-byte keys - 67.77 cycles/hash +Small key speed test - 23-byte keys - 69.90 cycles/hash +Small key speed test - 24-byte keys - 66.97 cycles/hash +Small key speed test - 25-byte keys - 67.96 cycles/hash +Small key speed test - 26-byte keys - 69.59 cycles/hash +Small key speed test - 27-byte keys - 69.73 cycles/hash +Small key speed test - 28-byte keys - 68.00 cycles/hash +Small key speed test - 29-byte keys - 68.53 cycles/hash +Small key speed test - 30-byte keys - 69.76 cycles/hash +Small key speed test - 31-byte keys - 70.99 cycles/hash +Average 56.711 cycles/hash [[[ 'Hashmap' Speed Tests ]]] diff --git a/doc/TSip.txt b/doc/TSip.txt index 9418fa39..f5280fd7 100644 --- a/doc/TSip.txt +++ b/doc/TSip.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 1.127 bytes/cycle - 3223.22 MiB/sec @ 3 ghz -Alignment 6 - 1.127 bytes/cycle - 3223.17 MiB/sec @ 3 ghz -Alignment 5 - 1.127 bytes/cycle - 3223.16 MiB/sec @ 3 ghz -Alignment 4 - 1.127 bytes/cycle - 3223.51 MiB/sec @ 3 ghz -Alignment 3 - 1.127 bytes/cycle - 3223.50 MiB/sec @ 3 ghz -Alignment 2 - 1.127 bytes/cycle - 3223.38 MiB/sec @ 3 ghz -Alignment 1 - 1.127 bytes/cycle - 3223.33 MiB/sec @ 3 ghz -Alignment 0 - 1.141 bytes/cycle - 3265.42 MiB/sec @ 3 ghz -Average - 1.128 bytes/cycle - 3228.59 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 48.00 cycles/hash -Small key speed test - 2-byte keys - 47.17 cycles/hash -Small key speed test - 3-byte keys - 47.00 cycles/hash -Small key speed test - 4-byte keys - 48.00 cycles/hash -Small key speed test - 5-byte keys - 47.45 cycles/hash -Small key speed test - 6-byte keys - 48.00 cycles/hash -Small key speed test - 7-byte keys - 48.00 cycles/hash -Small key speed test - 8-byte keys - 54.00 cycles/hash -Small key speed test - 9-byte keys - 54.00 cycles/hash -Small key speed test - 10-byte keys - 54.49 cycles/hash -Small key speed test - 11-byte keys - 54.00 cycles/hash -Small key speed test - 12-byte keys - 54.00 cycles/hash -Small key speed test - 13-byte keys - 55.53 cycles/hash -Small key speed test - 14-byte keys - 55.00 cycles/hash -Small key speed test - 15-byte keys - 55.00 cycles/hash -Small key speed test - 16-byte keys - 61.00 cycles/hash -Small key speed test - 17-byte keys - 61.00 cycles/hash -Small key speed test - 18-byte keys - 60.50 cycles/hash -Small key speed test - 19-byte keys - 61.00 cycles/hash -Small key speed test - 20-byte keys - 61.00 cycles/hash -Small key speed test - 21-byte keys - 62.00 cycles/hash -Small key speed test - 22-byte keys - 61.00 cycles/hash -Small key speed test - 23-byte keys - 61.14 cycles/hash -Small key speed test - 24-byte keys - 68.00 cycles/hash -Small key speed test - 25-byte keys - 68.00 cycles/hash -Small key speed test - 26-byte keys - 68.00 cycles/hash -Small key speed test - 27-byte keys - 68.77 cycles/hash -Small key speed test - 28-byte keys - 69.00 cycles/hash -Small key speed test - 29-byte keys - 68.99 cycles/hash -Small key speed test - 30-byte keys - 68.75 cycles/hash -Small key speed test - 31-byte keys - 69.74 cycles/hash -Average 58.307 cycles/hash +Alignment 7 - 1.480 bytes/cycle - 4232.97 MiB/sec @ 3 ghz +Alignment 6 - 1.479 bytes/cycle - 4232.19 MiB/sec @ 3 ghz +Alignment 5 - 1.480 bytes/cycle - 4233.11 MiB/sec @ 3 ghz +Alignment 4 - 1.480 bytes/cycle - 4233.51 MiB/sec @ 3 ghz +Alignment 3 - 1.479 bytes/cycle - 4232.57 MiB/sec @ 3 ghz +Alignment 2 - 1.479 bytes/cycle - 4232.04 MiB/sec @ 3 ghz +Alignment 1 - 1.480 bytes/cycle - 4233.42 MiB/sec @ 3 ghz +Alignment 0 - 1.480 bytes/cycle - 4235.58 MiB/sec @ 3 ghz +Average - 1.480 bytes/cycle - 4233.17 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 45.00 cycles/hash +Small key speed test - 2-byte keys - 45.00 cycles/hash +Small key speed test - 3-byte keys - 45.00 cycles/hash +Small key speed test - 4-byte keys - 45.00 cycles/hash +Small key speed test - 5-byte keys - 44.73 cycles/hash +Small key speed test - 6-byte keys - 44.99 cycles/hash +Small key speed test - 7-byte keys - 44.96 cycles/hash +Small key speed test - 8-byte keys - 50.89 cycles/hash +Small key speed test - 9-byte keys - 50.92 cycles/hash +Small key speed test - 10-byte keys - 50.88 cycles/hash +Small key speed test - 11-byte keys - 51.68 cycles/hash +Small key speed test - 12-byte keys - 50.99 cycles/hash +Small key speed test - 13-byte keys - 50.96 cycles/hash +Small key speed test - 14-byte keys - 50.13 cycles/hash +Small key speed test - 15-byte keys - 50.17 cycles/hash +Small key speed test - 16-byte keys - 55.00 cycles/hash +Small key speed test - 17-byte keys - 55.00 cycles/hash +Small key speed test - 18-byte keys - 55.00 cycles/hash +Small key speed test - 19-byte keys - 55.98 cycles/hash +Small key speed test - 20-byte keys - 56.00 cycles/hash +Small key speed test - 21-byte keys - 54.99 cycles/hash +Small key speed test - 22-byte keys - 55.98 cycles/hash +Small key speed test - 23-byte keys - 55.00 cycles/hash +Small key speed test - 24-byte keys - 61.00 cycles/hash +Small key speed test - 25-byte keys - 61.00 cycles/hash +Small key speed test - 26-byte keys - 61.00 cycles/hash +Small key speed test - 27-byte keys - 61.60 cycles/hash +Small key speed test - 28-byte keys - 60.90 cycles/hash +Small key speed test - 29-byte keys - 61.00 cycles/hash +Small key speed test - 30-byte keys - 60.98 cycles/hash +Small key speed test - 31-byte keys - 61.00 cycles/hash +Average 53.314 cycles/hash [[[ 'Hashmap' Speed Tests (when inlined) ]]] diff --git a/doc/VHASH_32.txt b/doc/VHASH_32.txt index d80fdc9b..d7257274 100644 --- a/doc/VHASH_32.txt +++ b/doc/VHASH_32.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 3.256 bytes/cycle - 9316.32 MiB/sec @ 3 ghz -Alignment 6 - 3.263 bytes/cycle - 9335.52 MiB/sec @ 3 ghz -Alignment 5 - 3.253 bytes/cycle - 9308.27 MiB/sec @ 3 ghz -Alignment 4 - 3.265 bytes/cycle - 9340.73 MiB/sec @ 3 ghz -Alignment 3 - 3.254 bytes/cycle - 9310.37 MiB/sec @ 3 ghz -Alignment 2 - 3.254 bytes/cycle - 9310.23 MiB/sec @ 3 ghz -Alignment 1 - 3.263 bytes/cycle - 9334.19 MiB/sec @ 3 ghz -Alignment 0 - 3.379 bytes/cycle - 9666.69 MiB/sec @ 3 ghz -Average - 3.273 bytes/cycle - 9365.29 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 80.46 cycles/hash -Small key speed test - 2-byte keys - 80.54 cycles/hash -Small key speed test - 3-byte keys - 80.54 cycles/hash -Small key speed test - 4-byte keys - 80.46 cycles/hash -Small key speed test - 5-byte keys - 80.55 cycles/hash -Small key speed test - 6-byte keys - 80.54 cycles/hash -Small key speed test - 7-byte keys - 80.55 cycles/hash -Small key speed test - 8-byte keys - 80.46 cycles/hash -Small key speed test - 9-byte keys - 80.54 cycles/hash -Small key speed test - 10-byte keys - 80.54 cycles/hash -Small key speed test - 11-byte keys - 80.54 cycles/hash -Small key speed test - 12-byte keys - 80.45 cycles/hash -Small key speed test - 13-byte keys - 80.54 cycles/hash -Small key speed test - 14-byte keys - 80.54 cycles/hash -Small key speed test - 15-byte keys - 80.54 cycles/hash -Small key speed test - 16-byte keys - 80.45 cycles/hash -Small key speed test - 17-byte keys - 83.00 cycles/hash -Small key speed test - 18-byte keys - 83.00 cycles/hash -Small key speed test - 19-byte keys - 83.00 cycles/hash -Small key speed test - 20-byte keys - 83.00 cycles/hash -Small key speed test - 21-byte keys - 83.00 cycles/hash -Small key speed test - 22-byte keys - 83.00 cycles/hash -Small key speed test - 23-byte keys - 83.00 cycles/hash -Small key speed test - 24-byte keys - 83.00 cycles/hash -Small key speed test - 25-byte keys - 83.00 cycles/hash -Small key speed test - 26-byte keys - 83.00 cycles/hash -Small key speed test - 27-byte keys - 83.00 cycles/hash -Small key speed test - 28-byte keys - 83.00 cycles/hash -Small key speed test - 29-byte keys - 83.00 cycles/hash -Small key speed test - 30-byte keys - 83.00 cycles/hash -Small key speed test - 31-byte keys - 83.00 cycles/hash -Average 81.718 cycles/hash +Alignment 7 - 4.560 bytes/cycle - 13047.65 MiB/sec @ 3 ghz +Alignment 6 - 4.561 bytes/cycle - 13048.58 MiB/sec @ 3 ghz +Alignment 5 - 4.561 bytes/cycle - 13048.30 MiB/sec @ 3 ghz +Alignment 4 - 4.561 bytes/cycle - 13048.29 MiB/sec @ 3 ghz +Alignment 3 - 4.561 bytes/cycle - 13048.86 MiB/sec @ 3 ghz +Alignment 2 - 4.561 bytes/cycle - 13048.24 MiB/sec @ 3 ghz +Alignment 1 - 4.553 bytes/cycle - 13025.68 MiB/sec @ 3 ghz +Alignment 0 - 4.583 bytes/cycle - 13111.63 MiB/sec @ 3 ghz +Average - 4.562 bytes/cycle - 13053.40 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 65.24 cycles/hash +Small key speed test - 2-byte keys - 65.00 cycles/hash +Small key speed test - 3-byte keys - 65.00 cycles/hash +Small key speed test - 4-byte keys - 65.00 cycles/hash +Small key speed test - 5-byte keys - 65.00 cycles/hash +Small key speed test - 6-byte keys - 65.00 cycles/hash +Small key speed test - 7-byte keys - 65.00 cycles/hash +Small key speed test - 8-byte keys - 65.00 cycles/hash +Small key speed test - 9-byte keys - 65.00 cycles/hash +Small key speed test - 10-byte keys - 65.00 cycles/hash +Small key speed test - 11-byte keys - 65.00 cycles/hash +Small key speed test - 12-byte keys - 65.00 cycles/hash +Small key speed test - 13-byte keys - 65.24 cycles/hash +Small key speed test - 14-byte keys - 65.00 cycles/hash +Small key speed test - 15-byte keys - 65.00 cycles/hash +Small key speed test - 16-byte keys - 65.00 cycles/hash +Small key speed test - 17-byte keys - 66.00 cycles/hash +Small key speed test - 18-byte keys - 66.50 cycles/hash +Small key speed test - 19-byte keys - 66.00 cycles/hash +Small key speed test - 20-byte keys - 66.47 cycles/hash +Small key speed test - 21-byte keys - 66.93 cycles/hash +Small key speed test - 22-byte keys - 67.03 cycles/hash +Small key speed test - 23-byte keys - 66.95 cycles/hash +Small key speed test - 24-byte keys - 66.85 cycles/hash +Small key speed test - 25-byte keys - 66.93 cycles/hash +Small key speed test - 26-byte keys - 66.77 cycles/hash +Small key speed test - 27-byte keys - 66.84 cycles/hash +Small key speed test - 28-byte keys - 66.91 cycles/hash +Small key speed test - 29-byte keys - 66.75 cycles/hash +Small key speed test - 30-byte keys - 66.88 cycles/hash +Small key speed test - 31-byte keys - 66.84 cycles/hash +Average 65.843 cycles/hash [[[ 'Hashmap' Speed Tests ]]] diff --git a/doc/VHASH_64.txt b/doc/VHASH_64.txt index 374455f0..807fab4e 100644 --- a/doc/VHASH_64.txt +++ b/doc/VHASH_64.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 3.258 bytes/cycle - 9319.98 MiB/sec @ 3 ghz -Alignment 6 - 3.258 bytes/cycle - 9321.65 MiB/sec @ 3 ghz -Alignment 5 - 3.266 bytes/cycle - 9345.46 MiB/sec @ 3 ghz -Alignment 4 - 3.268 bytes/cycle - 9350.15 MiB/sec @ 3 ghz -Alignment 3 - 3.268 bytes/cycle - 9350.88 MiB/sec @ 3 ghz -Alignment 2 - 3.258 bytes/cycle - 9322.21 MiB/sec @ 3 ghz -Alignment 1 - 3.266 bytes/cycle - 9344.75 MiB/sec @ 3 ghz -Alignment 0 - 3.382 bytes/cycle - 9676.96 MiB/sec @ 3 ghz -Average - 3.278 bytes/cycle - 9379.00 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 80.49 cycles/hash -Small key speed test - 2-byte keys - 80.58 cycles/hash -Small key speed test - 3-byte keys - 80.59 cycles/hash -Small key speed test - 4-byte keys - 80.45 cycles/hash -Small key speed test - 5-byte keys - 80.54 cycles/hash -Small key speed test - 6-byte keys - 80.54 cycles/hash -Small key speed test - 7-byte keys - 80.54 cycles/hash -Small key speed test - 8-byte keys - 80.51 cycles/hash -Small key speed test - 9-byte keys - 80.58 cycles/hash -Small key speed test - 10-byte keys - 80.59 cycles/hash -Small key speed test - 11-byte keys - 80.59 cycles/hash -Small key speed test - 12-byte keys - 80.48 cycles/hash -Small key speed test - 13-byte keys - 80.56 cycles/hash -Small key speed test - 14-byte keys - 80.59 cycles/hash -Small key speed test - 15-byte keys - 80.60 cycles/hash -Small key speed test - 16-byte keys - 80.50 cycles/hash -Small key speed test - 17-byte keys - 83.00 cycles/hash -Small key speed test - 18-byte keys - 83.00 cycles/hash -Small key speed test - 19-byte keys - 83.00 cycles/hash -Small key speed test - 20-byte keys - 83.00 cycles/hash -Small key speed test - 21-byte keys - 83.00 cycles/hash -Small key speed test - 22-byte keys - 83.00 cycles/hash -Small key speed test - 23-byte keys - 83.00 cycles/hash -Small key speed test - 24-byte keys - 83.00 cycles/hash -Small key speed test - 25-byte keys - 83.00 cycles/hash -Small key speed test - 26-byte keys - 83.00 cycles/hash -Small key speed test - 27-byte keys - 83.00 cycles/hash -Small key speed test - 28-byte keys - 83.00 cycles/hash -Small key speed test - 29-byte keys - 83.00 cycles/hash -Small key speed test - 30-byte keys - 83.00 cycles/hash -Small key speed test - 31-byte keys - 83.00 cycles/hash -Average 81.734 cycles/hash +Alignment 7 - 4.692 bytes/cycle - 13423.00 MiB/sec @ 3 ghz +Alignment 6 - 4.710 bytes/cycle - 13474.37 MiB/sec @ 3 ghz +Alignment 5 - 4.710 bytes/cycle - 13474.25 MiB/sec @ 3 ghz +Alignment 4 - 4.710 bytes/cycle - 13475.08 MiB/sec @ 3 ghz +Alignment 3 - 4.698 bytes/cycle - 13439.67 MiB/sec @ 3 ghz +Alignment 2 - 4.710 bytes/cycle - 13474.58 MiB/sec @ 3 ghz +Alignment 1 - 4.698 bytes/cycle - 13441.50 MiB/sec @ 3 ghz +Alignment 0 - 4.726 bytes/cycle - 13521.55 MiB/sec @ 3 ghz +Average - 4.707 bytes/cycle - 13465.50 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 63.00 cycles/hash +Small key speed test - 2-byte keys - 63.00 cycles/hash +Small key speed test - 3-byte keys - 63.00 cycles/hash +Small key speed test - 4-byte keys - 63.00 cycles/hash +Small key speed test - 5-byte keys - 63.13 cycles/hash +Small key speed test - 6-byte keys - 63.00 cycles/hash +Small key speed test - 7-byte keys - 63.00 cycles/hash +Small key speed test - 8-byte keys - 63.00 cycles/hash +Small key speed test - 9-byte keys - 63.00 cycles/hash +Small key speed test - 10-byte keys - 63.00 cycles/hash +Small key speed test - 11-byte keys - 63.00 cycles/hash +Small key speed test - 12-byte keys - 63.00 cycles/hash +Small key speed test - 13-byte keys - 63.00 cycles/hash +Small key speed test - 14-byte keys - 63.00 cycles/hash +Small key speed test - 15-byte keys - 63.00 cycles/hash +Small key speed test - 16-byte keys - 63.00 cycles/hash +Small key speed test - 17-byte keys - 64.52 cycles/hash +Small key speed test - 18-byte keys - 64.54 cycles/hash +Small key speed test - 19-byte keys - 64.49 cycles/hash +Small key speed test - 20-byte keys - 64.50 cycles/hash +Small key speed test - 21-byte keys - 64.99 cycles/hash +Small key speed test - 22-byte keys - 64.91 cycles/hash +Small key speed test - 23-byte keys - 64.92 cycles/hash +Small key speed test - 24-byte keys - 64.90 cycles/hash +Small key speed test - 25-byte keys - 64.91 cycles/hash +Small key speed test - 26-byte keys - 64.97 cycles/hash +Small key speed test - 27-byte keys - 64.98 cycles/hash +Small key speed test - 28-byte keys - 64.89 cycles/hash +Small key speed test - 29-byte keys - 64.91 cycles/hash +Small key speed test - 30-byte keys - 64.90 cycles/hash +Small key speed test - 31-byte keys - 64.93 cycles/hash +Average 63.883 cycles/hash [[[ 'Hashmap' Speed Tests ]]] diff --git a/doc/aesni-low.txt b/doc/aesni-low.txt index 87aa521a..8be56cab 100644 --- a/doc/aesni-low.txt +++ b/doc/aesni-low.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 11.156 bytes/cycle - 31917.80 MiB/sec @ 3 ghz -Alignment 6 - 10.509 bytes/cycle - 30066.78 MiB/sec @ 3 ghz -Alignment 5 - 10.505 bytes/cycle - 30055.92 MiB/sec @ 3 ghz -Alignment 4 - 10.611 bytes/cycle - 30358.79 MiB/sec @ 3 ghz -Alignment 3 - 11.116 bytes/cycle - 31804.05 MiB/sec @ 3 ghz -Alignment 2 - 10.521 bytes/cycle - 30101.33 MiB/sec @ 3 ghz -Alignment 1 - 10.494 bytes/cycle - 30023.41 MiB/sec @ 3 ghz -Alignment 0 - 10.121 bytes/cycle - 28956.82 MiB/sec @ 3 ghz -Average - 10.629 bytes/cycle - 30410.61 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 27.54 cycles/hash -Small key speed test - 2-byte keys - 27.60 cycles/hash -Small key speed test - 3-byte keys - 27.59 cycles/hash +Alignment 7 - 11.178 bytes/cycle - 31980.45 MiB/sec @ 3 ghz +Alignment 6 - 10.579 bytes/cycle - 30266.13 MiB/sec @ 3 ghz +Alignment 5 - 11.194 bytes/cycle - 32026.79 MiB/sec @ 3 ghz +Alignment 4 - 11.223 bytes/cycle - 32108.99 MiB/sec @ 3 ghz +Alignment 3 - 11.182 bytes/cycle - 31990.95 MiB/sec @ 3 ghz +Alignment 2 - 11.202 bytes/cycle - 32048.69 MiB/sec @ 3 ghz +Alignment 1 - 10.559 bytes/cycle - 30210.39 MiB/sec @ 3 ghz +Alignment 0 - 10.184 bytes/cycle - 29136.72 MiB/sec @ 3 ghz +Average - 10.913 bytes/cycle - 31221.14 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 27.00 cycles/hash +Small key speed test - 2-byte keys - 27.00 cycles/hash +Small key speed test - 3-byte keys - 27.00 cycles/hash Small key speed test - 4-byte keys - 25.00 cycles/hash -Small key speed test - 5-byte keys - 27.63 cycles/hash -Small key speed test - 6-byte keys - 27.57 cycles/hash -Small key speed test - 7-byte keys - 27.57 cycles/hash +Small key speed test - 5-byte keys - 27.00 cycles/hash +Small key speed test - 6-byte keys - 27.00 cycles/hash +Small key speed test - 7-byte keys - 27.00 cycles/hash Small key speed test - 8-byte keys - 25.00 cycles/hash -Small key speed test - 9-byte keys - 27.32 cycles/hash -Small key speed test - 10-byte keys - 27.60 cycles/hash -Small key speed test - 11-byte keys - 27.60 cycles/hash -Small key speed test - 12-byte keys - 27.59 cycles/hash -Small key speed test - 13-byte keys - 27.62 cycles/hash -Small key speed test - 14-byte keys - 27.59 cycles/hash -Small key speed test - 15-byte keys - 27.62 cycles/hash -Small key speed test - 16-byte keys - 26.54 cycles/hash -Small key speed test - 17-byte keys - 33.00 cycles/hash -Small key speed test - 18-byte keys - 33.00 cycles/hash -Small key speed test - 19-byte keys - 33.00 cycles/hash -Small key speed test - 20-byte keys - 34.00 cycles/hash -Small key speed test - 21-byte keys - 32.00 cycles/hash -Small key speed test - 22-byte keys - 32.00 cycles/hash -Small key speed test - 23-byte keys - 32.28 cycles/hash -Small key speed test - 24-byte keys - 32.47 cycles/hash -Small key speed test - 25-byte keys - 32.54 cycles/hash -Small key speed test - 26-byte keys - 32.00 cycles/hash -Small key speed test - 27-byte keys - 32.23 cycles/hash -Small key speed test - 28-byte keys - 32.15 cycles/hash -Small key speed test - 29-byte keys - 32.19 cycles/hash -Small key speed test - 30-byte keys - 32.18 cycles/hash -Small key speed test - 31-byte keys - 32.24 cycles/hash -Average 29.750 cycles/hash +Small key speed test - 9-byte keys - 27.00 cycles/hash +Small key speed test - 10-byte keys - 27.00 cycles/hash +Small key speed test - 11-byte keys - 27.00 cycles/hash +Small key speed test - 12-byte keys - 27.00 cycles/hash +Small key speed test - 13-byte keys - 27.00 cycles/hash +Small key speed test - 14-byte keys - 27.00 cycles/hash +Small key speed test - 15-byte keys - 27.00 cycles/hash +Small key speed test - 16-byte keys - 26.00 cycles/hash +Small key speed test - 17-byte keys - 32.00 cycles/hash +Small key speed test - 18-byte keys - 32.00 cycles/hash +Small key speed test - 19-byte keys - 32.00 cycles/hash +Small key speed test - 20-byte keys - 33.00 cycles/hash +Small key speed test - 21-byte keys - 33.00 cycles/hash +Small key speed test - 22-byte keys - 33.00 cycles/hash +Small key speed test - 23-byte keys - 33.00 cycles/hash +Small key speed test - 24-byte keys - 33.00 cycles/hash +Small key speed test - 25-byte keys - 33.00 cycles/hash +Small key speed test - 26-byte keys - 33.00 cycles/hash +Small key speed test - 27-byte keys - 33.00 cycles/hash +Small key speed test - 28-byte keys - 33.00 cycles/hash +Small key speed test - 29-byte keys - 33.00 cycles/hash +Small key speed test - 30-byte keys - 33.00 cycles/hash +Small key speed test - 31-byte keys - 33.00 cycles/hash +Average 29.645 cycles/hash [[[ 'Hashmap' Speed Tests ]]] diff --git a/doc/aesni.txt b/doc/aesni.txt index 15941bfe..51d29a6d 100644 --- a/doc/aesni.txt +++ b/doc/aesni.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 10.495 bytes/cycle - 30025.49 MiB/sec @ 3 ghz -Alignment 6 - 11.305 bytes/cycle - 32345.08 MiB/sec @ 3 ghz -Alignment 5 - 10.476 bytes/cycle - 29971.55 MiB/sec @ 3 ghz -Alignment 4 - 11.304 bytes/cycle - 32341.73 MiB/sec @ 3 ghz -Alignment 3 - 11.151 bytes/cycle - 31902.73 MiB/sec @ 3 ghz -Alignment 2 - 11.308 bytes/cycle - 32353.60 MiB/sec @ 3 ghz -Alignment 1 - 11.161 bytes/cycle - 31932.44 MiB/sec @ 3 ghz -Alignment 0 - 9.666 bytes/cycle - 27654.61 MiB/sec @ 3 ghz -Average - 10.858 bytes/cycle - 31065.90 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 27.80 cycles/hash -Small key speed test - 2-byte keys - 27.78 cycles/hash -Small key speed test - 3-byte keys - 27.72 cycles/hash -Small key speed test - 4-byte keys - 25.19 cycles/hash -Small key speed test - 5-byte keys - 27.81 cycles/hash -Small key speed test - 6-byte keys - 27.84 cycles/hash -Small key speed test - 7-byte keys - 27.77 cycles/hash -Small key speed test - 8-byte keys - 25.00 cycles/hash -Small key speed test - 9-byte keys - 27.47 cycles/hash -Small key speed test - 10-byte keys - 27.79 cycles/hash -Small key speed test - 11-byte keys - 27.78 cycles/hash -Small key speed test - 12-byte keys - 27.85 cycles/hash -Small key speed test - 13-byte keys - 27.79 cycles/hash -Small key speed test - 14-byte keys - 27.77 cycles/hash -Small key speed test - 15-byte keys - 27.79 cycles/hash -Small key speed test - 16-byte keys - 26.76 cycles/hash -Small key speed test - 17-byte keys - 33.00 cycles/hash -Small key speed test - 18-byte keys - 33.00 cycles/hash -Small key speed test - 19-byte keys - 33.00 cycles/hash -Small key speed test - 20-byte keys - 34.00 cycles/hash -Small key speed test - 21-byte keys - 32.65 cycles/hash -Small key speed test - 22-byte keys - 32.62 cycles/hash -Small key speed test - 23-byte keys - 32.66 cycles/hash -Small key speed test - 24-byte keys - 32.92 cycles/hash -Small key speed test - 25-byte keys - 32.83 cycles/hash -Small key speed test - 26-byte keys - 32.66 cycles/hash -Small key speed test - 27-byte keys - 32.67 cycles/hash -Small key speed test - 28-byte keys - 32.77 cycles/hash -Small key speed test - 29-byte keys - 32.69 cycles/hash -Small key speed test - 30-byte keys - 32.70 cycles/hash -Small key speed test - 31-byte keys - 32.65 cycles/hash -Average 30.024 cycles/hash +Alignment 7 - 10.965 bytes/cycle - 31371.32 MiB/sec @ 3 ghz +Alignment 6 - 10.953 bytes/cycle - 31335.67 MiB/sec @ 3 ghz +Alignment 5 - 10.930 bytes/cycle - 31271.51 MiB/sec @ 3 ghz +Alignment 4 - 10.993 bytes/cycle - 31450.45 MiB/sec @ 3 ghz +Alignment 3 - 11.374 bytes/cycle - 32540.25 MiB/sec @ 3 ghz +Alignment 2 - 10.882 bytes/cycle - 31134.32 MiB/sec @ 3 ghz +Alignment 1 - 10.921 bytes/cycle - 31246.02 MiB/sec @ 3 ghz +Alignment 0 - 10.314 bytes/cycle - 29509.20 MiB/sec @ 3 ghz +Average - 10.916 bytes/cycle - 31232.34 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 26.96 cycles/hash +Small key speed test - 2-byte keys - 26.96 cycles/hash +Small key speed test - 3-byte keys - 26.97 cycles/hash +Small key speed test - 4-byte keys - 25.00 cycles/hash +Small key speed test - 5-byte keys - 26.96 cycles/hash +Small key speed test - 6-byte keys - 26.96 cycles/hash +Small key speed test - 7-byte keys - 26.97 cycles/hash +Small key speed test - 8-byte keys - 24.00 cycles/hash +Small key speed test - 9-byte keys - 26.98 cycles/hash +Small key speed test - 10-byte keys - 26.97 cycles/hash +Small key speed test - 11-byte keys - 26.98 cycles/hash +Small key speed test - 12-byte keys - 26.97 cycles/hash +Small key speed test - 13-byte keys - 26.98 cycles/hash +Small key speed test - 14-byte keys - 26.97 cycles/hash +Small key speed test - 15-byte keys - 26.96 cycles/hash +Small key speed test - 16-byte keys - 25.00 cycles/hash +Small key speed test - 17-byte keys - 32.00 cycles/hash +Small key speed test - 18-byte keys - 32.00 cycles/hash +Small key speed test - 19-byte keys - 32.00 cycles/hash +Small key speed test - 20-byte keys - 33.00 cycles/hash +Small key speed test - 21-byte keys - 32.00 cycles/hash +Small key speed test - 22-byte keys - 32.00 cycles/hash +Small key speed test - 23-byte keys - 32.00 cycles/hash +Small key speed test - 24-byte keys - 32.00 cycles/hash +Small key speed test - 25-byte keys - 32.00 cycles/hash +Small key speed test - 26-byte keys - 32.00 cycles/hash +Small key speed test - 27-byte keys - 32.00 cycles/hash +Small key speed test - 28-byte keys - 32.00 cycles/hash +Small key speed test - 29-byte keys - 32.00 cycles/hash +Small key speed test - 30-byte keys - 32.00 cycles/hash +Small key speed test - 31-byte keys - 32.00 cycles/hash +Average 29.213 cycles/hash [[[ 'Hashmap' Speed Tests ]]] diff --git a/doc/aesnihash.txt b/doc/aesnihash.txt index e1319fc6..702ed1c0 100644 --- a/doc/aesnihash.txt +++ b/doc/aesnihash.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest . FAIL !!!!! [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 1.035 bytes/cycle - 2960.99 MiB/sec @ 3 ghz -Alignment 6 - 1.035 bytes/cycle - 2960.99 MiB/sec @ 3 ghz -Alignment 5 - 1.035 bytes/cycle - 2960.99 MiB/sec @ 3 ghz -Alignment 4 - 1.035 bytes/cycle - 2961.00 MiB/sec @ 3 ghz -Alignment 3 - 1.035 bytes/cycle - 2961.01 MiB/sec @ 3 ghz -Alignment 2 - 1.035 bytes/cycle - 2961.00 MiB/sec @ 3 ghz -Alignment 1 - 1.035 bytes/cycle - 2961.00 MiB/sec @ 3 ghz -Alignment 0 - 1.042 bytes/cycle - 2980.14 MiB/sec @ 3 ghz -Average - 1.036 bytes/cycle - 2963.39 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 52.00 cycles/hash -Small key speed test - 2-byte keys - 53.00 cycles/hash -Small key speed test - 3-byte keys - 54.00 cycles/hash -Small key speed test - 4-byte keys - 55.00 cycles/hash -Small key speed test - 5-byte keys - 56.00 cycles/hash -Small key speed test - 6-byte keys - 57.00 cycles/hash -Small key speed test - 7-byte keys - 58.00 cycles/hash -Small key speed test - 8-byte keys - 58.79 cycles/hash -Small key speed test - 9-byte keys - 59.00 cycles/hash -Small key speed test - 10-byte keys - 60.00 cycles/hash -Small key speed test - 11-byte keys - 61.00 cycles/hash -Small key speed test - 12-byte keys - 62.00 cycles/hash -Small key speed test - 13-byte keys - 63.00 cycles/hash -Small key speed test - 14-byte keys - 64.00 cycles/hash -Small key speed test - 15-byte keys - 65.00 cycles/hash -Small key speed test - 16-byte keys - 47.98 cycles/hash -Small key speed test - 17-byte keys - 79.00 cycles/hash -Small key speed test - 18-byte keys - 80.00 cycles/hash -Small key speed test - 19-byte keys - 81.00 cycles/hash -Small key speed test - 20-byte keys - 82.00 cycles/hash -Small key speed test - 21-byte keys - 83.00 cycles/hash -Small key speed test - 22-byte keys - 84.00 cycles/hash -Small key speed test - 23-byte keys - 85.00 cycles/hash -Small key speed test - 24-byte keys - 85.59 cycles/hash -Small key speed test - 25-byte keys - 86.23 cycles/hash -Small key speed test - 26-byte keys - 87.00 cycles/hash -Small key speed test - 27-byte keys - 88.00 cycles/hash -Small key speed test - 28-byte keys - 89.00 cycles/hash -Small key speed test - 29-byte keys - 90.00 cycles/hash -Small key speed test - 30-byte keys - 91.00 cycles/hash -Small key speed test - 31-byte keys - 92.00 cycles/hash -Average 71.244 cycles/hash +Alignment 7 - 1.950 bytes/cycle - 5579.94 MiB/sec @ 3 ghz +Alignment 6 - 1.950 bytes/cycle - 5579.94 MiB/sec @ 3 ghz +Alignment 5 - 1.950 bytes/cycle - 5579.08 MiB/sec @ 3 ghz +Alignment 4 - 1.950 bytes/cycle - 5579.34 MiB/sec @ 3 ghz +Alignment 3 - 1.950 bytes/cycle - 5578.94 MiB/sec @ 3 ghz +Alignment 2 - 1.950 bytes/cycle - 5578.96 MiB/sec @ 3 ghz +Alignment 1 - 1.950 bytes/cycle - 5578.50 MiB/sec @ 3 ghz +Alignment 0 - 1.950 bytes/cycle - 5579.89 MiB/sec @ 3 ghz +Average - 1.950 bytes/cycle - 5579.32 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 51.00 cycles/hash +Small key speed test - 2-byte keys - 51.00 cycles/hash +Small key speed test - 3-byte keys - 50.00 cycles/hash +Small key speed test - 4-byte keys - 49.90 cycles/hash +Small key speed test - 5-byte keys - 55.99 cycles/hash +Small key speed test - 6-byte keys - 56.22 cycles/hash +Small key speed test - 7-byte keys - 56.00 cycles/hash +Small key speed test - 8-byte keys - 51.00 cycles/hash +Small key speed test - 9-byte keys - 51.00 cycles/hash +Small key speed test - 10-byte keys - 50.00 cycles/hash +Small key speed test - 11-byte keys - 49.96 cycles/hash +Small key speed test - 12-byte keys - 56.33 cycles/hash +Small key speed test - 13-byte keys - 56.14 cycles/hash +Small key speed test - 14-byte keys - 56.00 cycles/hash +Small key speed test - 15-byte keys - 57.51 cycles/hash +Small key speed test - 16-byte keys - 32.00 cycles/hash +Small key speed test - 17-byte keys - 56.51 cycles/hash +Small key speed test - 18-byte keys - 62.89 cycles/hash +Small key speed test - 19-byte keys - 62.86 cycles/hash +Small key speed test - 20-byte keys - 62.62 cycles/hash +Small key speed test - 21-byte keys - 63.00 cycles/hash +Small key speed test - 22-byte keys - 62.88 cycles/hash +Small key speed test - 23-byte keys - 62.85 cycles/hash +Small key speed test - 24-byte keys - 56.92 cycles/hash +Small key speed test - 25-byte keys - 63.00 cycles/hash +Small key speed test - 26-byte keys - 63.50 cycles/hash +Small key speed test - 27-byte keys - 63.05 cycles/hash +Small key speed test - 28-byte keys - 63.00 cycles/hash +Small key speed test - 29-byte keys - 62.89 cycles/hash +Small key speed test - 30-byte keys - 62.81 cycles/hash +Small key speed test - 31-byte keys - 62.77 cycles/hash +Average 56.825 cycles/hash [[[ 'Hashmap' Speed Tests ]]] diff --git a/doc/beamsplitter.txt b/doc/beamsplitter.txt index 46a09d95..7764a2cd 100644 --- a/doc/beamsplitter.txt +++ b/doc/beamsplitter.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 0.200 bytes/cycle - 572.57 MiB/sec @ 3 ghz -Alignment 6 - 0.200 bytes/cycle - 572.56 MiB/sec @ 3 ghz -Alignment 5 - 0.200 bytes/cycle - 572.56 MiB/sec @ 3 ghz -Alignment 4 - 0.200 bytes/cycle - 572.58 MiB/sec @ 3 ghz -Alignment 3 - 0.200 bytes/cycle - 572.58 MiB/sec @ 3 ghz -Alignment 2 - 0.200 bytes/cycle - 572.55 MiB/sec @ 3 ghz -Alignment 1 - 0.200 bytes/cycle - 572.54 MiB/sec @ 3 ghz -Alignment 0 - 0.206 bytes/cycle - 588.16 MiB/sec @ 3 ghz -Average - 0.201 bytes/cycle - 574.51 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 454.00 cycles/hash -Small key speed test - 2-byte keys - 580.30 cycles/hash -Small key speed test - 3-byte keys - 655.04 cycles/hash -Small key speed test - 4-byte keys - 840.36 cycles/hash -Small key speed test - 5-byte keys - 967.97 cycles/hash -Small key speed test - 6-byte keys - 1044.16 cycles/hash -Small key speed test - 7-byte keys - 1230.61 cycles/hash -Small key speed test - 8-byte keys - 260.75 cycles/hash -Small key speed test - 9-byte keys - 402.93 cycles/hash -Small key speed test - 10-byte keys - 575.86 cycles/hash -Small key speed test - 11-byte keys - 768.12 cycles/hash -Small key speed test - 12-byte keys - 897.72 cycles/hash -Small key speed test - 13-byte keys - 1060.86 cycles/hash -Small key speed test - 14-byte keys - 1251.12 cycles/hash -Small key speed test - 15-byte keys - 1383.93 cycles/hash -Small key speed test - 16-byte keys - 357.99 cycles/hash -Small key speed test - 17-byte keys - 517.18 cycles/hash -Small key speed test - 18-byte keys - 677.48 cycles/hash -Small key speed test - 19-byte keys - 809.21 cycles/hash -Small key speed test - 20-byte keys - 1002.13 cycles/hash -Small key speed test - 21-byte keys - 1163.65 cycles/hash -Small key speed test - 22-byte keys - 1292.92 cycles/hash -Small key speed test - 23-byte keys - 1486.82 cycles/hash -Small key speed test - 24-byte keys - 358.25 cycles/hash -Small key speed test - 25-byte keys - 491.51 cycles/hash -Small key speed test - 26-byte keys - 573.72 cycles/hash -Small key speed test - 27-byte keys - 675.11 cycles/hash -Small key speed test - 28-byte keys - 819.95 cycles/hash -Small key speed test - 29-byte keys - 935.40 cycles/hash -Small key speed test - 30-byte keys - 1042.54 cycles/hash -Small key speed test - 31-byte keys - 1180.67 cycles/hash -Average 830.912 cycles/hash +Alignment 7 - 0.201 bytes/cycle - 576.21 MiB/sec @ 3 ghz +Alignment 6 - 0.201 bytes/cycle - 576.25 MiB/sec @ 3 ghz +Alignment 5 - 0.202 bytes/cycle - 576.54 MiB/sec @ 3 ghz +Alignment 4 - 0.202 bytes/cycle - 576.55 MiB/sec @ 3 ghz +Alignment 3 - 0.201 bytes/cycle - 576.49 MiB/sec @ 3 ghz +Alignment 2 - 0.202 bytes/cycle - 576.51 MiB/sec @ 3 ghz +Alignment 1 - 0.202 bytes/cycle - 576.52 MiB/sec @ 3 ghz +Alignment 0 - 0.202 bytes/cycle - 576.75 MiB/sec @ 3 ghz +Average - 0.201 bytes/cycle - 576.48 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 427.99 cycles/hash +Small key speed test - 2-byte keys - 543.56 cycles/hash +Small key speed test - 3-byte keys - 594.64 cycles/hash +Small key speed test - 4-byte keys - 785.31 cycles/hash +Small key speed test - 5-byte keys - 904.49 cycles/hash +Small key speed test - 6-byte keys - 951.26 cycles/hash +Small key speed test - 7-byte keys - 1186.03 cycles/hash +Small key speed test - 8-byte keys - 217.91 cycles/hash +Small key speed test - 9-byte keys - 367.33 cycles/hash +Small key speed test - 10-byte keys - 497.00 cycles/hash +Small key speed test - 11-byte keys - 684.98 cycles/hash +Small key speed test - 12-byte keys - 847.50 cycles/hash +Small key speed test - 13-byte keys - 937.87 cycles/hash +Small key speed test - 14-byte keys - 1121.24 cycles/hash +Small key speed test - 15-byte keys - 1241.52 cycles/hash +Small key speed test - 16-byte keys - 362.42 cycles/hash +Small key speed test - 17-byte keys - 520.18 cycles/hash +Small key speed test - 18-byte keys - 742.47 cycles/hash +Small key speed test - 19-byte keys - 807.83 cycles/hash +Small key speed test - 20-byte keys - 954.17 cycles/hash +Small key speed test - 21-byte keys - 1119.62 cycles/hash +Small key speed test - 22-byte keys - 1238.78 cycles/hash +Small key speed test - 23-byte keys - 1388.56 cycles/hash +Small key speed test - 24-byte keys - 363.29 cycles/hash +Small key speed test - 25-byte keys - 509.56 cycles/hash +Small key speed test - 26-byte keys - 589.65 cycles/hash +Small key speed test - 27-byte keys - 670.13 cycles/hash +Small key speed test - 28-byte keys - 1051.20 cycles/hash +Small key speed test - 29-byte keys - 1127.21 cycles/hash +Small key speed test - 30-byte keys - 946.51 cycles/hash +Small key speed test - 31-byte keys - 1427.34 cycles/hash +Average 810.565 cycles/hash [[[ 'Hashmap' Speed Tests ]]] diff --git a/doc/bernstein.txt b/doc/bernstein.txt index 36ade2a2..79f3264c 100644 --- a/doc/bernstein.txt +++ b/doc/bernstein.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 0.277 bytes/cycle - 791.81 MiB/sec @ 3 ghz -Alignment 6 - 0.277 bytes/cycle - 791.81 MiB/sec @ 3 ghz -Alignment 5 - 0.277 bytes/cycle - 791.81 MiB/sec @ 3 ghz -Alignment 4 - 0.277 bytes/cycle - 791.81 MiB/sec @ 3 ghz -Alignment 3 - 0.277 bytes/cycle - 791.81 MiB/sec @ 3 ghz -Alignment 2 - 0.277 bytes/cycle - 791.81 MiB/sec @ 3 ghz -Alignment 1 - 0.277 bytes/cycle - 791.81 MiB/sec @ 3 ghz -Alignment 0 - 0.277 bytes/cycle - 791.81 MiB/sec @ 3 ghz -Average - 0.277 bytes/cycle - 791.81 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 12.56 cycles/hash -Small key speed test - 2-byte keys - 16.00 cycles/hash -Small key speed test - 3-byte keys - 20.00 cycles/hash -Small key speed test - 4-byte keys - 23.00 cycles/hash -Small key speed test - 5-byte keys - 27.00 cycles/hash -Small key speed test - 6-byte keys - 30.00 cycles/hash -Small key speed test - 7-byte keys - 34.00 cycles/hash -Small key speed test - 8-byte keys - 38.00 cycles/hash -Small key speed test - 9-byte keys - 41.15 cycles/hash -Small key speed test - 10-byte keys - 45.00 cycles/hash -Small key speed test - 11-byte keys - 48.58 cycles/hash -Small key speed test - 12-byte keys - 52.00 cycles/hash -Small key speed test - 13-byte keys - 56.00 cycles/hash -Small key speed test - 14-byte keys - 59.00 cycles/hash -Small key speed test - 15-byte keys - 63.00 cycles/hash -Small key speed test - 16-byte keys - 67.00 cycles/hash -Small key speed test - 17-byte keys - 70.00 cycles/hash -Small key speed test - 18-byte keys - 74.00 cycles/hash -Small key speed test - 19-byte keys - 77.19 cycles/hash -Small key speed test - 20-byte keys - 81.00 cycles/hash -Small key speed test - 21-byte keys - 85.00 cycles/hash -Small key speed test - 22-byte keys - 88.00 cycles/hash -Small key speed test - 23-byte keys - 92.00 cycles/hash -Small key speed test - 24-byte keys - 95.45 cycles/hash -Small key speed test - 25-byte keys - 99.00 cycles/hash -Small key speed test - 26-byte keys - 103.00 cycles/hash -Small key speed test - 27-byte keys - 106.00 cycles/hash -Small key speed test - 28-byte keys - 110.00 cycles/hash -Small key speed test - 29-byte keys - 113.92 cycles/hash -Small key speed test - 30-byte keys - 117.00 cycles/hash -Small key speed test - 31-byte keys - 121.00 cycles/hash -Average 66.608 cycles/hash +Alignment 7 - 0.366 bytes/cycle - 1046.32 MiB/sec @ 3 ghz +Alignment 6 - 0.365 bytes/cycle - 1044.90 MiB/sec @ 3 ghz +Alignment 5 - 0.365 bytes/cycle - 1044.91 MiB/sec @ 3 ghz +Alignment 4 - 0.366 bytes/cycle - 1046.32 MiB/sec @ 3 ghz +Alignment 3 - 0.366 bytes/cycle - 1046.32 MiB/sec @ 3 ghz +Alignment 2 - 0.366 bytes/cycle - 1046.32 MiB/sec @ 3 ghz +Alignment 1 - 0.366 bytes/cycle - 1046.32 MiB/sec @ 3 ghz +Alignment 0 - 0.366 bytes/cycle - 1046.37 MiB/sec @ 3 ghz +Average - 0.366 bytes/cycle - 1045.97 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 16.96 cycles/hash +Small key speed test - 2-byte keys - 20.58 cycles/hash +Small key speed test - 3-byte keys - 21.75 cycles/hash +Small key speed test - 4-byte keys - 23.87 cycles/hash +Small key speed test - 5-byte keys - 26.00 cycles/hash +Small key speed test - 6-byte keys - 29.00 cycles/hash +Small key speed test - 7-byte keys - 32.00 cycles/hash +Small key speed test - 8-byte keys - 34.00 cycles/hash +Small key speed test - 9-byte keys - 43.04 cycles/hash +Small key speed test - 10-byte keys - 49.00 cycles/hash +Small key speed test - 11-byte keys - 52.98 cycles/hash +Small key speed test - 12-byte keys - 55.00 cycles/hash +Small key speed test - 13-byte keys - 59.00 cycles/hash +Small key speed test - 14-byte keys - 61.13 cycles/hash +Small key speed test - 15-byte keys - 53.00 cycles/hash +Small key speed test - 16-byte keys - 56.00 cycles/hash +Small key speed test - 17-byte keys - 59.00 cycles/hash +Small key speed test - 18-byte keys - 61.99 cycles/hash +Small key speed test - 19-byte keys - 64.45 cycles/hash +Small key speed test - 20-byte keys - 67.45 cycles/hash +Small key speed test - 21-byte keys - 70.00 cycles/hash +Small key speed test - 22-byte keys - 72.66 cycles/hash +Small key speed test - 23-byte keys - 75.54 cycles/hash +Small key speed test - 24-byte keys - 78.49 cycles/hash +Small key speed test - 25-byte keys - 81.00 cycles/hash +Small key speed test - 26-byte keys - 84.00 cycles/hash +Small key speed test - 27-byte keys - 86.48 cycles/hash +Small key speed test - 28-byte keys - 89.56 cycles/hash +Small key speed test - 29-byte keys - 91.81 cycles/hash +Small key speed test - 30-byte keys - 94.54 cycles/hash +Small key speed test - 31-byte keys - 97.33 cycles/hash +Average 58.310 cycles/hash [[[ 'Hashmap' Speed Tests (when inlined) ]]] diff --git a/doc/chaskey.txt b/doc/chaskey.txt index af2e4599..35aca708 100644 --- a/doc/chaskey.txt +++ b/doc/chaskey.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 0.263 bytes/cycle - 753.18 MiB/sec @ 3 ghz -Alignment 6 - 0.263 bytes/cycle - 753.20 MiB/sec @ 3 ghz -Alignment 5 - 0.263 bytes/cycle - 753.23 MiB/sec @ 3 ghz -Alignment 4 - 0.264 bytes/cycle - 754.43 MiB/sec @ 3 ghz -Alignment 3 - 0.263 bytes/cycle - 752.60 MiB/sec @ 3 ghz -Alignment 2 - 0.263 bytes/cycle - 752.58 MiB/sec @ 3 ghz -Alignment 1 - 0.263 bytes/cycle - 752.60 MiB/sec @ 3 ghz -Alignment 0 - 0.264 bytes/cycle - 754.44 MiB/sec @ 3 ghz -Average - 0.263 bytes/cycle - 753.28 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 126.00 cycles/hash -Small key speed test - 2-byte keys - 126.00 cycles/hash -Small key speed test - 3-byte keys - 119.00 cycles/hash -Small key speed test - 4-byte keys - 128.00 cycles/hash -Small key speed test - 5-byte keys - 128.00 cycles/hash -Small key speed test - 6-byte keys - 128.00 cycles/hash -Small key speed test - 7-byte keys - 129.57 cycles/hash -Small key speed test - 8-byte keys - 154.44 cycles/hash -Small key speed test - 9-byte keys - 126.99 cycles/hash -Small key speed test - 10-byte keys - 126.99 cycles/hash -Small key speed test - 11-byte keys - 151.39 cycles/hash -Small key speed test - 12-byte keys - 129.00 cycles/hash -Small key speed test - 13-byte keys - 129.00 cycles/hash -Small key speed test - 14-byte keys - 129.00 cycles/hash -Small key speed test - 15-byte keys - 119.00 cycles/hash -Small key speed test - 16-byte keys - 80.00 cycles/hash -Small key speed test - 17-byte keys - 183.59 cycles/hash -Small key speed test - 18-byte keys - 176.92 cycles/hash -Small key speed test - 19-byte keys - 168.21 cycles/hash -Small key speed test - 20-byte keys - 179.49 cycles/hash -Small key speed test - 21-byte keys - 179.43 cycles/hash -Small key speed test - 22-byte keys - 179.47 cycles/hash -Small key speed test - 23-byte keys - 188.59 cycles/hash -Small key speed test - 24-byte keys - 175.99 cycles/hash -Small key speed test - 25-byte keys - 176.90 cycles/hash -Small key speed test - 26-byte keys - 176.90 cycles/hash -Small key speed test - 27-byte keys - 170.03 cycles/hash -Small key speed test - 28-byte keys - 176.23 cycles/hash -Small key speed test - 29-byte keys - 176.32 cycles/hash -Small key speed test - 30-byte keys - 175.63 cycles/hash -Small key speed test - 31-byte keys - 170.24 cycles/hash -Average 151.107 cycles/hash +Alignment 7 - 0.399 bytes/cycle - 1141.80 MiB/sec @ 3 ghz +Alignment 6 - 0.399 bytes/cycle - 1141.70 MiB/sec @ 3 ghz +Alignment 5 - 0.400 bytes/cycle - 1143.75 MiB/sec @ 3 ghz +Alignment 4 - 0.399 bytes/cycle - 1141.54 MiB/sec @ 3 ghz +Alignment 3 - 0.401 bytes/cycle - 1146.10 MiB/sec @ 3 ghz +Alignment 2 - 0.400 bytes/cycle - 1144.13 MiB/sec @ 3 ghz +Alignment 1 - 0.400 bytes/cycle - 1144.03 MiB/sec @ 3 ghz +Alignment 0 - 0.399 bytes/cycle - 1141.36 MiB/sec @ 3 ghz +Average - 0.400 bytes/cycle - 1143.05 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 95.15 cycles/hash +Small key speed test - 2-byte keys - 94.90 cycles/hash +Small key speed test - 3-byte keys - 92.84 cycles/hash +Small key speed test - 4-byte keys - 94.93 cycles/hash +Small key speed test - 5-byte keys - 94.72 cycles/hash +Small key speed test - 6-byte keys - 94.73 cycles/hash +Small key speed test - 7-byte keys - 90.08 cycles/hash +Small key speed test - 8-byte keys - 95.76 cycles/hash +Small key speed test - 9-byte keys - 94.67 cycles/hash +Small key speed test - 10-byte keys - 94.90 cycles/hash +Small key speed test - 11-byte keys - 92.90 cycles/hash +Small key speed test - 12-byte keys - 94.99 cycles/hash +Small key speed test - 13-byte keys - 95.48 cycles/hash +Small key speed test - 14-byte keys - 95.03 cycles/hash +Small key speed test - 15-byte keys - 91.43 cycles/hash +Small key speed test - 16-byte keys - 62.00 cycles/hash +Small key speed test - 17-byte keys - 139.39 cycles/hash +Small key speed test - 18-byte keys - 138.69 cycles/hash +Small key speed test - 19-byte keys - 131.27 cycles/hash +Small key speed test - 20-byte keys - 137.87 cycles/hash +Small key speed test - 21-byte keys - 137.87 cycles/hash +Small key speed test - 22-byte keys - 137.81 cycles/hash +Small key speed test - 23-byte keys - 130.30 cycles/hash +Small key speed test - 24-byte keys - 138.23 cycles/hash +Small key speed test - 25-byte keys - 138.30 cycles/hash +Small key speed test - 26-byte keys - 137.81 cycles/hash +Small key speed test - 27-byte keys - 131.29 cycles/hash +Small key speed test - 28-byte keys - 138.68 cycles/hash +Small key speed test - 29-byte keys - 139.83 cycles/hash +Small key speed test - 30-byte keys - 142.09 cycles/hash +Small key speed test - 31-byte keys - 130.81 cycles/hash +Average 113.702 cycles/hash [[[ 'Hashmap' Speed Tests ]]] diff --git a/doc/clhash.txt b/doc/clhash.txt index 427ed1d0..e11a09ec 100644 --- a/doc/clhash.txt +++ b/doc/clhash.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 1.400 bytes/cycle - 4005.13 MiB/sec @ 3 ghz -Alignment 6 - 1.400 bytes/cycle - 4004.64 MiB/sec @ 3 ghz -Alignment 5 - 1.400 bytes/cycle - 4005.30 MiB/sec @ 3 ghz -Alignment 4 - 1.400 bytes/cycle - 4005.25 MiB/sec @ 3 ghz -Alignment 3 - 1.400 bytes/cycle - 4005.20 MiB/sec @ 3 ghz -Alignment 2 - 1.400 bytes/cycle - 4004.50 MiB/sec @ 3 ghz -Alignment 1 - 1.400 bytes/cycle - 4005.39 MiB/sec @ 3 ghz -Alignment 0 - 1.420 bytes/cycle - 4063.45 MiB/sec @ 3 ghz -Average - 1.402 bytes/cycle - 4012.36 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 78.00 cycles/hash -Small key speed test - 2-byte keys - 79.00 cycles/hash -Small key speed test - 3-byte keys - 80.00 cycles/hash -Small key speed test - 4-byte keys - 81.00 cycles/hash -Small key speed test - 5-byte keys - 82.33 cycles/hash -Small key speed test - 6-byte keys - 85.00 cycles/hash -Small key speed test - 7-byte keys - 87.00 cycles/hash -Small key speed test - 8-byte keys - 73.00 cycles/hash -Small key speed test - 9-byte keys - 78.00 cycles/hash -Small key speed test - 10-byte keys - 79.23 cycles/hash -Small key speed test - 11-byte keys - 80.00 cycles/hash -Small key speed test - 12-byte keys - 81.00 cycles/hash -Small key speed test - 13-byte keys - 82.82 cycles/hash -Small key speed test - 14-byte keys - 86.00 cycles/hash -Small key speed test - 15-byte keys - 88.75 cycles/hash -Small key speed test - 16-byte keys - 74.00 cycles/hash -Small key speed test - 17-byte keys - 82.00 cycles/hash -Small key speed test - 18-byte keys - 83.00 cycles/hash -Small key speed test - 19-byte keys - 84.00 cycles/hash -Small key speed test - 20-byte keys - 85.96 cycles/hash -Small key speed test - 21-byte keys - 86.00 cycles/hash -Small key speed test - 22-byte keys - 87.78 cycles/hash -Small key speed test - 23-byte keys - 88.00 cycles/hash -Small key speed test - 24-byte keys - 76.74 cycles/hash -Small key speed test - 25-byte keys - 88.01 cycles/hash -Small key speed test - 26-byte keys - 89.95 cycles/hash -Small key speed test - 27-byte keys - 88.20 cycles/hash -Small key speed test - 28-byte keys - 86.00 cycles/hash -Small key speed test - 29-byte keys - 87.00 cycles/hash -Small key speed test - 30-byte keys - 88.00 cycles/hash -Small key speed test - 31-byte keys - 88.79 cycles/hash -Average 83.373 cycles/hash +Alignment 7 - 6.734 bytes/cycle - 19264.98 MiB/sec @ 3 ghz +Alignment 6 - 6.439 bytes/cycle - 18423.09 MiB/sec @ 3 ghz +Alignment 5 - 6.555 bytes/cycle - 18752.99 MiB/sec @ 3 ghz +Alignment 4 - 6.538 bytes/cycle - 18705.48 MiB/sec @ 3 ghz +Alignment 3 - 6.771 bytes/cycle - 19372.53 MiB/sec @ 3 ghz +Alignment 2 - 6.098 bytes/cycle - 17446.27 MiB/sec @ 3 ghz +Alignment 1 - 6.785 bytes/cycle - 19411.56 MiB/sec @ 3 ghz +Alignment 0 - 6.378 bytes/cycle - 18247.37 MiB/sec @ 3 ghz +Average - 6.537 bytes/cycle - 18703.04 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 70.88 cycles/hash +Small key speed test - 2-byte keys - 70.85 cycles/hash +Small key speed test - 3-byte keys - 70.90 cycles/hash +Small key speed test - 4-byte keys - 71.00 cycles/hash +Small key speed test - 5-byte keys - 71.00 cycles/hash +Small key speed test - 6-byte keys - 71.00 cycles/hash +Small key speed test - 7-byte keys - 70.76 cycles/hash +Small key speed test - 8-byte keys - 61.81 cycles/hash +Small key speed test - 9-byte keys - 70.94 cycles/hash +Small key speed test - 10-byte keys - 70.95 cycles/hash +Small key speed test - 11-byte keys - 71.00 cycles/hash +Small key speed test - 12-byte keys - 70.95 cycles/hash +Small key speed test - 13-byte keys - 71.90 cycles/hash +Small key speed test - 14-byte keys - 71.87 cycles/hash +Small key speed test - 15-byte keys - 72.08 cycles/hash +Small key speed test - 16-byte keys - 61.76 cycles/hash +Small key speed test - 17-byte keys - 69.97 cycles/hash +Small key speed test - 18-byte keys - 70.24 cycles/hash +Small key speed test - 19-byte keys - 70.24 cycles/hash +Small key speed test - 20-byte keys - 69.97 cycles/hash +Small key speed test - 21-byte keys - 69.97 cycles/hash +Small key speed test - 22-byte keys - 70.14 cycles/hash +Small key speed test - 23-byte keys - 69.99 cycles/hash +Small key speed test - 24-byte keys - 62.97 cycles/hash +Small key speed test - 25-byte keys - 70.92 cycles/hash +Small key speed test - 26-byte keys - 71.92 cycles/hash +Small key speed test - 27-byte keys - 71.94 cycles/hash +Small key speed test - 28-byte keys - 71.98 cycles/hash +Small key speed test - 29-byte keys - 71.98 cycles/hash +Small key speed test - 30-byte keys - 71.96 cycles/hash +Small key speed test - 31-byte keys - 71.99 cycles/hash +Average 70.188 cycles/hash [[[ 'Hashmap' Speed Tests (when inlined) ]]] diff --git a/doc/cmetrohash64_1.txt b/doc/cmetrohash64_1.txt index 5cceaf1d..2b3283f2 100644 --- a/doc/cmetrohash64_1.txt +++ b/doc/cmetrohash64_1.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 3.363 bytes/cycle - 9622.59 MiB/sec @ 3 ghz -Alignment 6 - 3.364 bytes/cycle - 9623.24 MiB/sec @ 3 ghz -Alignment 5 - 3.364 bytes/cycle - 9623.22 MiB/sec @ 3 ghz -Alignment 4 - 3.363 bytes/cycle - 9622.53 MiB/sec @ 3 ghz -Alignment 3 - 3.363 bytes/cycle - 9622.63 MiB/sec @ 3 ghz -Alignment 2 - 3.363 bytes/cycle - 9622.98 MiB/sec @ 3 ghz -Alignment 1 - 3.364 bytes/cycle - 9623.05 MiB/sec @ 3 ghz -Alignment 0 - 3.547 bytes/cycle - 10147.95 MiB/sec @ 3 ghz -Average - 3.386 bytes/cycle - 9688.52 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 28.53 cycles/hash -Small key speed test - 2-byte keys - 28.41 cycles/hash -Small key speed test - 3-byte keys - 35.00 cycles/hash -Small key speed test - 4-byte keys - 28.00 cycles/hash -Small key speed test - 5-byte keys - 35.00 cycles/hash -Small key speed test - 6-byte keys - 35.00 cycles/hash -Small key speed test - 7-byte keys - 41.00 cycles/hash -Small key speed test - 8-byte keys - 39.00 cycles/hash -Small key speed test - 9-byte keys - 46.00 cycles/hash -Small key speed test - 10-byte keys - 46.00 cycles/hash -Small key speed test - 11-byte keys - 52.00 cycles/hash -Small key speed test - 12-byte keys - 45.00 cycles/hash -Small key speed test - 13-byte keys - 52.00 cycles/hash -Small key speed test - 14-byte keys - 52.00 cycles/hash -Small key speed test - 15-byte keys - 59.00 cycles/hash -Small key speed test - 16-byte keys - 43.59 cycles/hash -Small key speed test - 17-byte keys - 50.97 cycles/hash -Small key speed test - 18-byte keys - 51.00 cycles/hash -Small key speed test - 19-byte keys - 57.00 cycles/hash -Small key speed test - 20-byte keys - 50.45 cycles/hash -Small key speed test - 21-byte keys - 57.00 cycles/hash -Small key speed test - 22-byte keys - 57.00 cycles/hash -Small key speed test - 23-byte keys - 63.00 cycles/hash -Small key speed test - 24-byte keys - 50.00 cycles/hash -Small key speed test - 25-byte keys - 57.79 cycles/hash -Small key speed test - 26-byte keys - 57.00 cycles/hash -Small key speed test - 27-byte keys - 63.00 cycles/hash -Small key speed test - 28-byte keys - 57.00 cycles/hash -Small key speed test - 29-byte keys - 63.00 cycles/hash -Small key speed test - 30-byte keys - 63.00 cycles/hash -Small key speed test - 31-byte keys - 69.00 cycles/hash -Average 49.411 cycles/hash +Alignment 7 - 5.140 bytes/cycle - 14705.34 MiB/sec @ 3 ghz +Alignment 6 - 5.149 bytes/cycle - 14731.33 MiB/sec @ 3 ghz +Alignment 5 - 5.150 bytes/cycle - 14735.55 MiB/sec @ 3 ghz +Alignment 4 - 5.150 bytes/cycle - 14733.87 MiB/sec @ 3 ghz +Alignment 3 - 5.150 bytes/cycle - 14735.23 MiB/sec @ 3 ghz +Alignment 2 - 5.148 bytes/cycle - 14728.86 MiB/sec @ 3 ghz +Alignment 1 - 4.456 bytes/cycle - 12748.34 MiB/sec @ 3 ghz +Alignment 0 - 4.228 bytes/cycle - 12095.32 MiB/sec @ 3 ghz +Average - 4.946 bytes/cycle - 14151.73 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 34.00 cycles/hash +Small key speed test - 2-byte keys - 34.00 cycles/hash +Small key speed test - 3-byte keys - 40.94 cycles/hash +Small key speed test - 4-byte keys - 34.00 cycles/hash +Small key speed test - 5-byte keys - 41.00 cycles/hash +Small key speed test - 6-byte keys - 39.29 cycles/hash +Small key speed test - 7-byte keys - 38.98 cycles/hash +Small key speed test - 8-byte keys - 27.00 cycles/hash +Small key speed test - 9-byte keys - 33.00 cycles/hash +Small key speed test - 10-byte keys - 33.00 cycles/hash +Small key speed test - 11-byte keys - 39.00 cycles/hash +Small key speed test - 12-byte keys - 33.00 cycles/hash +Small key speed test - 13-byte keys - 39.00 cycles/hash +Small key speed test - 14-byte keys - 39.00 cycles/hash +Small key speed test - 15-byte keys - 44.00 cycles/hash +Small key speed test - 16-byte keys - 33.55 cycles/hash +Small key speed test - 17-byte keys - 39.00 cycles/hash +Small key speed test - 18-byte keys - 39.00 cycles/hash +Small key speed test - 19-byte keys - 44.00 cycles/hash +Small key speed test - 20-byte keys - 38.16 cycles/hash +Small key speed test - 21-byte keys - 45.24 cycles/hash +Small key speed test - 22-byte keys - 44.82 cycles/hash +Small key speed test - 23-byte keys - 51.41 cycles/hash +Small key speed test - 24-byte keys - 39.00 cycles/hash +Small key speed test - 25-byte keys - 45.68 cycles/hash +Small key speed test - 26-byte keys - 45.00 cycles/hash +Small key speed test - 27-byte keys - 50.82 cycles/hash +Small key speed test - 28-byte keys - 44.97 cycles/hash +Small key speed test - 29-byte keys - 51.00 cycles/hash +Small key speed test - 30-byte keys - 51.00 cycles/hash +Small key speed test - 31-byte keys - 56.00 cycles/hash +Average 40.899 cycles/hash [[[ 'Hashmap' Speed Tests (when inlined) ]]] diff --git a/doc/cmetrohash64_1o.txt b/doc/cmetrohash64_1o.txt index 458bfe25..8eecc72b 100644 --- a/doc/cmetrohash64_1o.txt +++ b/doc/cmetrohash64_1o.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 3.359 bytes/cycle - 9609.61 MiB/sec @ 3 ghz -Alignment 6 - 3.359 bytes/cycle - 9610.52 MiB/sec @ 3 ghz -Alignment 5 - 3.359 bytes/cycle - 9609.90 MiB/sec @ 3 ghz -Alignment 4 - 3.359 bytes/cycle - 9610.00 MiB/sec @ 3 ghz -Alignment 3 - 3.359 bytes/cycle - 9609.39 MiB/sec @ 3 ghz -Alignment 2 - 3.359 bytes/cycle - 9609.62 MiB/sec @ 3 ghz -Alignment 1 - 3.359 bytes/cycle - 9610.00 MiB/sec @ 3 ghz -Alignment 0 - 3.539 bytes/cycle - 10124.58 MiB/sec @ 3 ghz -Average - 3.381 bytes/cycle - 9674.20 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 29.33 cycles/hash -Small key speed test - 2-byte keys - 29.00 cycles/hash -Small key speed test - 3-byte keys - 36.00 cycles/hash -Small key speed test - 4-byte keys - 29.00 cycles/hash -Small key speed test - 5-byte keys - 35.00 cycles/hash -Small key speed test - 6-byte keys - 35.58 cycles/hash -Small key speed test - 7-byte keys - 42.00 cycles/hash -Small key speed test - 8-byte keys - 39.00 cycles/hash -Small key speed test - 9-byte keys - 45.00 cycles/hash -Small key speed test - 10-byte keys - 45.00 cycles/hash -Small key speed test - 11-byte keys - 52.00 cycles/hash -Small key speed test - 12-byte keys - 45.00 cycles/hash -Small key speed test - 13-byte keys - 52.00 cycles/hash -Small key speed test - 14-byte keys - 52.00 cycles/hash -Small key speed test - 15-byte keys - 59.00 cycles/hash -Small key speed test - 16-byte keys - 44.00 cycles/hash -Small key speed test - 17-byte keys - 49.87 cycles/hash -Small key speed test - 18-byte keys - 49.00 cycles/hash -Small key speed test - 19-byte keys - 56.00 cycles/hash -Small key speed test - 20-byte keys - 49.00 cycles/hash -Small key speed test - 21-byte keys - 56.00 cycles/hash -Small key speed test - 22-byte keys - 56.00 cycles/hash -Small key speed test - 23-byte keys - 61.93 cycles/hash -Small key speed test - 24-byte keys - 50.00 cycles/hash -Small key speed test - 25-byte keys - 56.00 cycles/hash -Small key speed test - 26-byte keys - 56.00 cycles/hash -Small key speed test - 27-byte keys - 62.00 cycles/hash -Small key speed test - 28-byte keys - 56.00 cycles/hash -Small key speed test - 29-byte keys - 62.00 cycles/hash -Small key speed test - 30-byte keys - 62.00 cycles/hash -Small key speed test - 31-byte keys - 68.74 cycles/hash -Average 49.014 cycles/hash +Alignment 7 - 5.202 bytes/cycle - 14882.05 MiB/sec @ 3 ghz +Alignment 6 - 5.208 bytes/cycle - 14901.00 MiB/sec @ 3 ghz +Alignment 5 - 5.208 bytes/cycle - 14899.57 MiB/sec @ 3 ghz +Alignment 4 - 5.204 bytes/cycle - 14889.88 MiB/sec @ 3 ghz +Alignment 3 - 5.209 bytes/cycle - 14902.89 MiB/sec @ 3 ghz +Alignment 2 - 5.210 bytes/cycle - 14906.15 MiB/sec @ 3 ghz +Alignment 1 - 5.207 bytes/cycle - 14896.12 MiB/sec @ 3 ghz +Alignment 0 - 5.276 bytes/cycle - 15096.17 MiB/sec @ 3 ghz +Average - 5.216 bytes/cycle - 14921.73 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 28.00 cycles/hash +Small key speed test - 2-byte keys - 28.30 cycles/hash +Small key speed test - 3-byte keys - 32.99 cycles/hash +Small key speed test - 4-byte keys - 28.00 cycles/hash +Small key speed test - 5-byte keys - 33.00 cycles/hash +Small key speed test - 6-byte keys - 33.00 cycles/hash +Small key speed test - 7-byte keys - 39.00 cycles/hash +Small key speed test - 8-byte keys - 28.00 cycles/hash +Small key speed test - 9-byte keys - 33.00 cycles/hash +Small key speed test - 10-byte keys - 33.00 cycles/hash +Small key speed test - 11-byte keys - 39.86 cycles/hash +Small key speed test - 12-byte keys - 33.00 cycles/hash +Small key speed test - 13-byte keys - 39.32 cycles/hash +Small key speed test - 14-byte keys - 39.32 cycles/hash +Small key speed test - 15-byte keys - 43.27 cycles/hash +Small key speed test - 16-byte keys - 34.00 cycles/hash +Small key speed test - 17-byte keys - 37.81 cycles/hash +Small key speed test - 18-byte keys - 37.94 cycles/hash +Small key speed test - 19-byte keys - 43.00 cycles/hash +Small key speed test - 20-byte keys - 38.46 cycles/hash +Small key speed test - 21-byte keys - 43.12 cycles/hash +Small key speed test - 22-byte keys - 43.00 cycles/hash +Small key speed test - 23-byte keys - 49.00 cycles/hash +Small key speed test - 24-byte keys - 38.67 cycles/hash +Small key speed test - 25-byte keys - 43.24 cycles/hash +Small key speed test - 26-byte keys - 43.13 cycles/hash +Small key speed test - 27-byte keys - 49.30 cycles/hash +Small key speed test - 28-byte keys - 43.00 cycles/hash +Small key speed test - 29-byte keys - 49.30 cycles/hash +Small key speed test - 30-byte keys - 49.19 cycles/hash +Small key speed test - 31-byte keys - 54.18 cycles/hash +Average 38.948 cycles/hash [[[ 'Hashmap' Speed Tests (when inlined) ]]] diff --git a/doc/cmetrohash64_2.txt b/doc/cmetrohash64_2.txt index eeababe5..fa7d4780 100644 --- a/doc/cmetrohash64_2.txt +++ b/doc/cmetrohash64_2.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 3.356 bytes/cycle - 9602.94 MiB/sec @ 3 ghz -Alignment 6 - 3.357 bytes/cycle - 9603.28 MiB/sec @ 3 ghz -Alignment 5 - 3.357 bytes/cycle - 9603.46 MiB/sec @ 3 ghz -Alignment 4 - 3.356 bytes/cycle - 9602.54 MiB/sec @ 3 ghz -Alignment 3 - 3.357 bytes/cycle - 9603.12 MiB/sec @ 3 ghz -Alignment 2 - 3.357 bytes/cycle - 9603.47 MiB/sec @ 3 ghz -Alignment 1 - 3.357 bytes/cycle - 9603.72 MiB/sec @ 3 ghz -Alignment 0 - 3.535 bytes/cycle - 10112.69 MiB/sec @ 3 ghz -Average - 3.379 bytes/cycle - 9666.90 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 28.71 cycles/hash -Small key speed test - 2-byte keys - 28.00 cycles/hash -Small key speed test - 3-byte keys - 35.00 cycles/hash +Alignment 7 - 4.977 bytes/cycle - 14237.90 MiB/sec @ 3 ghz +Alignment 6 - 4.987 bytes/cycle - 14268.53 MiB/sec @ 3 ghz +Alignment 5 - 4.988 bytes/cycle - 14270.56 MiB/sec @ 3 ghz +Alignment 4 - 4.994 bytes/cycle - 14288.98 MiB/sec @ 3 ghz +Alignment 3 - 4.987 bytes/cycle - 14267.70 MiB/sec @ 3 ghz +Alignment 2 - 4.994 bytes/cycle - 14288.36 MiB/sec @ 3 ghz +Alignment 1 - 4.994 bytes/cycle - 14287.88 MiB/sec @ 3 ghz +Alignment 0 - 5.049 bytes/cycle - 14444.14 MiB/sec @ 3 ghz +Average - 4.996 bytes/cycle - 14294.26 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 28.15 cycles/hash +Small key speed test - 2-byte keys - 28.20 cycles/hash +Small key speed test - 3-byte keys - 34.00 cycles/hash Small key speed test - 4-byte keys - 28.00 cycles/hash -Small key speed test - 5-byte keys - 35.00 cycles/hash -Small key speed test - 6-byte keys - 35.00 cycles/hash -Small key speed test - 7-byte keys - 41.00 cycles/hash -Small key speed test - 8-byte keys - 39.61 cycles/hash -Small key speed test - 9-byte keys - 45.87 cycles/hash -Small key speed test - 10-byte keys - 45.58 cycles/hash -Small key speed test - 11-byte keys - 52.00 cycles/hash -Small key speed test - 12-byte keys - 46.00 cycles/hash -Small key speed test - 13-byte keys - 52.00 cycles/hash -Small key speed test - 14-byte keys - 52.00 cycles/hash -Small key speed test - 15-byte keys - 59.00 cycles/hash -Small key speed test - 16-byte keys - 44.00 cycles/hash -Small key speed test - 17-byte keys - 50.55 cycles/hash -Small key speed test - 18-byte keys - 51.00 cycles/hash -Small key speed test - 19-byte keys - 57.00 cycles/hash -Small key speed test - 20-byte keys - 51.00 cycles/hash -Small key speed test - 21-byte keys - 57.00 cycles/hash -Small key speed test - 22-byte keys - 57.00 cycles/hash -Small key speed test - 23-byte keys - 64.00 cycles/hash -Small key speed test - 24-byte keys - 51.95 cycles/hash -Small key speed test - 25-byte keys - 57.00 cycles/hash -Small key speed test - 26-byte keys - 57.00 cycles/hash -Small key speed test - 27-byte keys - 64.00 cycles/hash -Small key speed test - 28-byte keys - 57.00 cycles/hash -Small key speed test - 29-byte keys - 64.00 cycles/hash -Small key speed test - 30-byte keys - 63.17 cycles/hash -Small key speed test - 31-byte keys - 70.00 cycles/hash -Average 49.627 cycles/hash +Small key speed test - 5-byte keys - 34.00 cycles/hash +Small key speed test - 6-byte keys - 34.00 cycles/hash +Small key speed test - 7-byte keys - 40.00 cycles/hash +Small key speed test - 8-byte keys - 28.00 cycles/hash +Small key speed test - 9-byte keys - 34.00 cycles/hash +Small key speed test - 10-byte keys - 34.00 cycles/hash +Small key speed test - 11-byte keys - 40.49 cycles/hash +Small key speed test - 12-byte keys - 34.00 cycles/hash +Small key speed test - 13-byte keys - 40.19 cycles/hash +Small key speed test - 14-byte keys - 39.97 cycles/hash +Small key speed test - 15-byte keys - 45.48 cycles/hash +Small key speed test - 16-byte keys - 35.44 cycles/hash +Small key speed test - 17-byte keys - 40.82 cycles/hash +Small key speed test - 18-byte keys - 40.00 cycles/hash +Small key speed test - 19-byte keys - 45.24 cycles/hash +Small key speed test - 20-byte keys - 39.97 cycles/hash +Small key speed test - 21-byte keys - 45.60 cycles/hash +Small key speed test - 22-byte keys - 45.98 cycles/hash +Small key speed test - 23-byte keys - 52.27 cycles/hash +Small key speed test - 24-byte keys - 39.99 cycles/hash +Small key speed test - 25-byte keys - 46.98 cycles/hash +Small key speed test - 26-byte keys - 46.22 cycles/hash +Small key speed test - 27-byte keys - 52.71 cycles/hash +Small key speed test - 28-byte keys - 45.44 cycles/hash +Small key speed test - 29-byte keys - 52.88 cycles/hash +Small key speed test - 30-byte keys - 53.07 cycles/hash +Small key speed test - 31-byte keys - 58.60 cycles/hash +Average 40.764 cycles/hash [[[ 'Hashmap' Speed Tests (when inlined) ]]] diff --git a/doc/crc32_hw.txt b/doc/crc32_hw.txt index 855c7619..7c0b0e33 100644 --- a/doc/crc32_hw.txt +++ b/doc/crc32_hw.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 2.213 bytes/cycle - 6330.63 MiB/sec @ 3 ghz -Alignment 6 - 2.213 bytes/cycle - 6330.60 MiB/sec @ 3 ghz -Alignment 5 - 2.213 bytes/cycle - 6330.40 MiB/sec @ 3 ghz -Alignment 4 - 2.213 bytes/cycle - 6330.23 MiB/sec @ 3 ghz -Alignment 3 - 2.213 bytes/cycle - 6330.12 MiB/sec @ 3 ghz -Alignment 2 - 2.213 bytes/cycle - 6330.02 MiB/sec @ 3 ghz -Alignment 1 - 2.212 bytes/cycle - 6329.83 MiB/sec @ 3 ghz -Alignment 0 - 2.213 bytes/cycle - 6330.43 MiB/sec @ 3 ghz -Average - 2.213 bytes/cycle - 6330.28 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 19.00 cycles/hash -Small key speed test - 2-byte keys - 19.94 cycles/hash -Small key speed test - 3-byte keys - 18.00 cycles/hash -Small key speed test - 4-byte keys - 19.00 cycles/hash -Small key speed test - 5-byte keys - 18.00 cycles/hash -Small key speed test - 6-byte keys - 18.00 cycles/hash -Small key speed test - 7-byte keys - 20.66 cycles/hash -Small key speed test - 8-byte keys - 26.00 cycles/hash -Small key speed test - 9-byte keys - 28.00 cycles/hash -Small key speed test - 10-byte keys - 28.00 cycles/hash -Small key speed test - 11-byte keys - 30.26 cycles/hash -Small key speed test - 12-byte keys - 28.00 cycles/hash -Small key speed test - 13-byte keys - 30.26 cycles/hash -Small key speed test - 14-byte keys - 30.25 cycles/hash -Small key speed test - 15-byte keys - 33.00 cycles/hash -Small key speed test - 16-byte keys - 29.63 cycles/hash -Small key speed test - 17-byte keys - 31.00 cycles/hash -Small key speed test - 18-byte keys - 31.00 cycles/hash -Small key speed test - 19-byte keys - 34.00 cycles/hash -Small key speed test - 20-byte keys - 31.00 cycles/hash -Small key speed test - 21-byte keys - 34.00 cycles/hash -Small key speed test - 22-byte keys - 34.00 cycles/hash -Small key speed test - 23-byte keys - 37.00 cycles/hash -Small key speed test - 24-byte keys - 33.00 cycles/hash -Small key speed test - 25-byte keys - 35.00 cycles/hash -Small key speed test - 26-byte keys - 35.00 cycles/hash -Small key speed test - 27-byte keys - 38.00 cycles/hash -Small key speed test - 28-byte keys - 35.00 cycles/hash -Small key speed test - 29-byte keys - 38.00 cycles/hash -Small key speed test - 30-byte keys - 38.00 cycles/hash -Small key speed test - 31-byte keys - 40.00 cycles/hash -Average 29.677 cycles/hash +Alignment 7 - 2.180 bytes/cycle - 6238.39 MiB/sec @ 3 ghz +Alignment 6 - 2.184 bytes/cycle - 6247.14 MiB/sec @ 3 ghz +Alignment 5 - 2.183 bytes/cycle - 6246.94 MiB/sec @ 3 ghz +Alignment 4 - 2.183 bytes/cycle - 6246.73 MiB/sec @ 3 ghz +Alignment 3 - 2.183 bytes/cycle - 6246.61 MiB/sec @ 3 ghz +Alignment 2 - 2.183 bytes/cycle - 6246.60 MiB/sec @ 3 ghz +Alignment 1 - 2.179 bytes/cycle - 6235.06 MiB/sec @ 3 ghz +Alignment 0 - 2.184 bytes/cycle - 6247.54 MiB/sec @ 3 ghz +Average - 2.183 bytes/cycle - 6244.38 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 26.78 cycles/hash +Small key speed test - 2-byte keys - 29.48 cycles/hash +Small key speed test - 3-byte keys - 32.96 cycles/hash +Small key speed test - 4-byte keys - 32.88 cycles/hash +Small key speed test - 5-byte keys - 37.43 cycles/hash +Small key speed test - 6-byte keys - 38.22 cycles/hash +Small key speed test - 7-byte keys - 40.34 cycles/hash +Small key speed test - 8-byte keys - 32.98 cycles/hash +Small key speed test - 9-byte keys - 37.29 cycles/hash +Small key speed test - 10-byte keys - 37.94 cycles/hash +Small key speed test - 11-byte keys - 41.93 cycles/hash +Small key speed test - 12-byte keys - 34.98 cycles/hash +Small key speed test - 13-byte keys - 41.15 cycles/hash +Small key speed test - 14-byte keys - 41.53 cycles/hash +Small key speed test - 15-byte keys - 44.02 cycles/hash +Small key speed test - 16-byte keys - 39.28 cycles/hash +Small key speed test - 17-byte keys - 43.58 cycles/hash +Small key speed test - 18-byte keys - 43.97 cycles/hash +Small key speed test - 19-byte keys - 46.26 cycles/hash +Small key speed test - 20-byte keys - 38.96 cycles/hash +Small key speed test - 21-byte keys - 44.33 cycles/hash +Small key speed test - 22-byte keys - 44.83 cycles/hash +Small key speed test - 23-byte keys - 48.73 cycles/hash +Small key speed test - 24-byte keys - 42.37 cycles/hash +Small key speed test - 25-byte keys - 47.05 cycles/hash +Small key speed test - 26-byte keys - 47.53 cycles/hash +Small key speed test - 27-byte keys - 49.05 cycles/hash +Small key speed test - 28-byte keys - 43.00 cycles/hash +Small key speed test - 29-byte keys - 47.98 cycles/hash +Small key speed test - 30-byte keys - 48.87 cycles/hash +Small key speed test - 31-byte keys - 52.45 cycles/hash +Average 41.230 cycles/hash [[[ 'Hashmap' Speed Tests (when inlined) ]]] diff --git a/doc/crc32_hw1.txt b/doc/crc32_hw1.txt index d2505bf1..7944620d 100644 --- a/doc/crc32_hw1.txt +++ b/doc/crc32_hw1.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 8.048 bytes/cycle - 23026.31 MiB/sec @ 3 ghz -Alignment 6 - 8.047 bytes/cycle - 23024.05 MiB/sec @ 3 ghz -Alignment 5 - 8.049 bytes/cycle - 23027.03 MiB/sec @ 3 ghz -Alignment 4 - 8.048 bytes/cycle - 23026.35 MiB/sec @ 3 ghz -Alignment 3 - 8.050 bytes/cycle - 23029.89 MiB/sec @ 3 ghz -Alignment 2 - 8.048 bytes/cycle - 23026.30 MiB/sec @ 3 ghz -Alignment 1 - 8.048 bytes/cycle - 23026.94 MiB/sec @ 3 ghz -Alignment 0 - 8.052 bytes/cycle - 23037.27 MiB/sec @ 3 ghz -Average - 8.049 bytes/cycle - 23028.02 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 27.00 cycles/hash -Small key speed test - 2-byte keys - 28.00 cycles/hash -Small key speed test - 3-byte keys - 28.00 cycles/hash -Small key speed test - 4-byte keys - 29.00 cycles/hash -Small key speed test - 5-byte keys - 29.00 cycles/hash -Small key speed test - 6-byte keys - 30.00 cycles/hash -Small key speed test - 7-byte keys - 31.00 cycles/hash -Small key speed test - 8-byte keys - 25.00 cycles/hash -Small key speed test - 9-byte keys - 28.00 cycles/hash -Small key speed test - 10-byte keys - 30.33 cycles/hash -Small key speed test - 11-byte keys - 33.00 cycles/hash -Small key speed test - 12-byte keys - 36.00 cycles/hash -Small key speed test - 13-byte keys - 39.00 cycles/hash -Small key speed test - 14-byte keys - 41.00 cycles/hash -Small key speed test - 15-byte keys - 44.00 cycles/hash -Small key speed test - 16-byte keys - 28.00 cycles/hash -Small key speed test - 17-byte keys - 30.33 cycles/hash -Small key speed test - 18-byte keys - 33.00 cycles/hash -Small key speed test - 19-byte keys - 36.00 cycles/hash -Small key speed test - 20-byte keys - 39.00 cycles/hash -Small key speed test - 21-byte keys - 41.00 cycles/hash -Small key speed test - 22-byte keys - 44.00 cycles/hash -Small key speed test - 23-byte keys - 47.00 cycles/hash -Small key speed test - 24-byte keys - 30.29 cycles/hash -Small key speed test - 25-byte keys - 33.00 cycles/hash -Small key speed test - 26-byte keys - 36.00 cycles/hash -Small key speed test - 27-byte keys - 39.00 cycles/hash -Small key speed test - 28-byte keys - 41.00 cycles/hash -Small key speed test - 29-byte keys - 44.00 cycles/hash -Small key speed test - 30-byte keys - 47.00 cycles/hash -Small key speed test - 31-byte keys - 49.20 cycles/hash -Average 35.360 cycles/hash +Alignment 7 - 2.650 bytes/cycle - 7580.95 MiB/sec @ 3 ghz +Alignment 6 - 2.652 bytes/cycle - 7587.64 MiB/sec @ 3 ghz +Alignment 5 - 2.646 bytes/cycle - 7570.42 MiB/sec @ 3 ghz +Alignment 4 - 2.650 bytes/cycle - 7580.64 MiB/sec @ 3 ghz +Alignment 3 - 2.650 bytes/cycle - 7581.03 MiB/sec @ 3 ghz +Alignment 2 - 2.639 bytes/cycle - 7550.38 MiB/sec @ 3 ghz +Alignment 1 - 2.637 bytes/cycle - 7545.67 MiB/sec @ 3 ghz +Alignment 0 - 2.642 bytes/cycle - 7557.60 MiB/sec @ 3 ghz +Average - 2.646 bytes/cycle - 7569.29 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 28.17 cycles/hash +Small key speed test - 2-byte keys - 30.45 cycles/hash +Small key speed test - 3-byte keys - 32.95 cycles/hash +Small key speed test - 4-byte keys - 35.86 cycles/hash +Small key speed test - 5-byte keys - 48.78 cycles/hash +Small key speed test - 6-byte keys - 48.50 cycles/hash +Small key speed test - 7-byte keys - 47.68 cycles/hash +Small key speed test - 8-byte keys - 40.89 cycles/hash +Small key speed test - 9-byte keys - 44.09 cycles/hash +Small key speed test - 10-byte keys - 48.84 cycles/hash +Small key speed test - 11-byte keys - 50.46 cycles/hash +Small key speed test - 12-byte keys - 43.69 cycles/hash +Small key speed test - 13-byte keys - 46.88 cycles/hash +Small key speed test - 14-byte keys - 52.28 cycles/hash +Small key speed test - 15-byte keys - 52.37 cycles/hash +Small key speed test - 16-byte keys - 45.09 cycles/hash +Small key speed test - 17-byte keys - 49.21 cycles/hash +Small key speed test - 18-byte keys - 53.69 cycles/hash +Small key speed test - 19-byte keys - 56.12 cycles/hash +Small key speed test - 20-byte keys - 48.91 cycles/hash +Small key speed test - 21-byte keys - 52.08 cycles/hash +Small key speed test - 22-byte keys - 57.20 cycles/hash +Small key speed test - 23-byte keys - 58.25 cycles/hash +Small key speed test - 24-byte keys - 49.71 cycles/hash +Small key speed test - 25-byte keys - 53.45 cycles/hash +Small key speed test - 26-byte keys - 57.56 cycles/hash +Small key speed test - 27-byte keys - 60.31 cycles/hash +Small key speed test - 28-byte keys - 51.89 cycles/hash +Small key speed test - 29-byte keys - 54.83 cycles/hash +Small key speed test - 30-byte keys - 59.83 cycles/hash +Small key speed test - 31-byte keys - 61.16 cycles/hash +Average 49.071 cycles/hash [[[ 'Hashmap' Speed Tests (when inlined) ]]] diff --git a/doc/crc32_pclmul.txt b/doc/crc32_pclmul.txt index 4572095f..6910b823 100644 --- a/doc/crc32_pclmul.txt +++ b/doc/crc32_pclmul.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest . FAIL !!!!! [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 0.842 bytes/cycle - 2408.27 MiB/sec @ 3 ghz -Alignment 6 - 0.845 bytes/cycle - 2416.78 MiB/sec @ 3 ghz -Alignment 5 - 0.843 bytes/cycle - 2410.95 MiB/sec @ 3 ghz -Alignment 4 - 0.844 bytes/cycle - 2416.11 MiB/sec @ 3 ghz -Alignment 3 - 0.844 bytes/cycle - 2413.46 MiB/sec @ 3 ghz -Alignment 2 - 0.845 bytes/cycle - 2417.70 MiB/sec @ 3 ghz -Alignment 1 - 0.845 bytes/cycle - 2416.72 MiB/sec @ 3 ghz -Alignment 0 - 1.012 bytes/cycle - 2894.35 MiB/sec @ 3 ghz -Average - 0.865 bytes/cycle - 2474.29 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 219.45 cycles/hash -Small key speed test - 2-byte keys - 220.79 cycles/hash -Small key speed test - 3-byte keys - 220.92 cycles/hash -Small key speed test - 4-byte keys - 219.77 cycles/hash -Small key speed test - 5-byte keys - 219.77 cycles/hash -Small key speed test - 6-byte keys - 219.77 cycles/hash -Small key speed test - 7-byte keys - 219.74 cycles/hash -Small key speed test - 8-byte keys - 220.02 cycles/hash -Small key speed test - 9-byte keys - 219.92 cycles/hash -Small key speed test - 10-byte keys - 219.92 cycles/hash -Small key speed test - 11-byte keys - 219.92 cycles/hash -Small key speed test - 12-byte keys - 220.03 cycles/hash -Small key speed test - 13-byte keys - 219.95 cycles/hash -Small key speed test - 14-byte keys - 220.00 cycles/hash -Small key speed test - 15-byte keys - 219.91 cycles/hash -Small key speed test - 16-byte keys - 218.08 cycles/hash -Small key speed test - 17-byte keys - 220.42 cycles/hash -Small key speed test - 18-byte keys - 220.49 cycles/hash -Small key speed test - 19-byte keys - 220.42 cycles/hash -Small key speed test - 20-byte keys - 220.37 cycles/hash -Small key speed test - 21-byte keys - 220.42 cycles/hash -Small key speed test - 22-byte keys - 220.47 cycles/hash -Small key speed test - 23-byte keys - 220.41 cycles/hash -Small key speed test - 24-byte keys - 220.36 cycles/hash -Small key speed test - 25-byte keys - 220.42 cycles/hash -Small key speed test - 26-byte keys - 220.47 cycles/hash -Small key speed test - 27-byte keys - 220.43 cycles/hash -Small key speed test - 28-byte keys - 220.37 cycles/hash -Small key speed test - 29-byte keys - 220.41 cycles/hash -Small key speed test - 30-byte keys - 220.48 cycles/hash -Small key speed test - 31-byte keys - 220.42 cycles/hash -Average 220.139 cycles/hash +Alignment 7 - 2.767 bytes/cycle - 7915.39 MiB/sec @ 3 ghz +Alignment 6 - 2.723 bytes/cycle - 7791.36 MiB/sec @ 3 ghz +Alignment 5 - 2.714 bytes/cycle - 7765.22 MiB/sec @ 3 ghz +Alignment 4 - 2.695 bytes/cycle - 7711.13 MiB/sec @ 3 ghz +Alignment 3 - 2.755 bytes/cycle - 7883.33 MiB/sec @ 3 ghz +Alignment 2 - 2.760 bytes/cycle - 7897.43 MiB/sec @ 3 ghz +Alignment 1 - 2.721 bytes/cycle - 7783.42 MiB/sec @ 3 ghz +Alignment 0 - 4.361 bytes/cycle - 12477.43 MiB/sec @ 3 ghz +Average - 2.937 bytes/cycle - 8403.09 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 101.58 cycles/hash +Small key speed test - 2-byte keys - 103.38 cycles/hash +Small key speed test - 3-byte keys - 103.06 cycles/hash +Small key speed test - 4-byte keys - 106.60 cycles/hash +Small key speed test - 5-byte keys - 103.24 cycles/hash +Small key speed test - 6-byte keys - 103.26 cycles/hash +Small key speed test - 7-byte keys - 103.04 cycles/hash +Small key speed test - 8-byte keys - 108.52 cycles/hash +Small key speed test - 9-byte keys - 102.78 cycles/hash +Small key speed test - 10-byte keys - 102.86 cycles/hash +Small key speed test - 11-byte keys - 103.61 cycles/hash +Small key speed test - 12-byte keys - 105.06 cycles/hash +Small key speed test - 13-byte keys - 105.33 cycles/hash +Small key speed test - 14-byte keys - 105.38 cycles/hash +Small key speed test - 15-byte keys - 105.34 cycles/hash +Small key speed test - 16-byte keys - 100.97 cycles/hash +Small key speed test - 17-byte keys - 106.82 cycles/hash +Small key speed test - 18-byte keys - 106.74 cycles/hash +Small key speed test - 19-byte keys - 107.08 cycles/hash +Small key speed test - 20-byte keys - 106.75 cycles/hash +Small key speed test - 21-byte keys - 107.18 cycles/hash +Small key speed test - 22-byte keys - 106.96 cycles/hash +Small key speed test - 23-byte keys - 106.82 cycles/hash +Small key speed test - 24-byte keys - 106.76 cycles/hash +Small key speed test - 25-byte keys - 106.89 cycles/hash +Small key speed test - 26-byte keys - 106.85 cycles/hash +Small key speed test - 27-byte keys - 106.83 cycles/hash +Small key speed test - 28-byte keys - 107.00 cycles/hash +Small key speed test - 29-byte keys - 107.13 cycles/hash +Small key speed test - 30-byte keys - 107.11 cycles/hash +Small key speed test - 31-byte keys - 107.03 cycles/hash +Average 105.419 cycles/hash [[[ 'Hashmap' Speed Tests ]]] diff --git a/doc/crc64_hw.txt b/doc/crc64_hw.txt index 4678be86..d3b49719 100644 --- a/doc/crc64_hw.txt +++ b/doc/crc64_hw.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 2.950 bytes/cycle - 8441.44 MiB/sec @ 3 ghz -Alignment 6 - 2.950 bytes/cycle - 8440.53 MiB/sec @ 3 ghz -Alignment 5 - 2.950 bytes/cycle - 8440.19 MiB/sec @ 3 ghz -Alignment 4 - 2.950 bytes/cycle - 8439.83 MiB/sec @ 3 ghz -Alignment 3 - 2.950 bytes/cycle - 8439.48 MiB/sec @ 3 ghz -Alignment 2 - 2.950 bytes/cycle - 8439.18 MiB/sec @ 3 ghz -Alignment 1 - 2.950 bytes/cycle - 8438.82 MiB/sec @ 3 ghz -Alignment 0 - 2.950 bytes/cycle - 8440.03 MiB/sec @ 3 ghz -Average - 2.950 bytes/cycle - 8439.94 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 19.00 cycles/hash -Small key speed test - 2-byte keys - 19.00 cycles/hash -Small key speed test - 3-byte keys - 19.00 cycles/hash -Small key speed test - 4-byte keys - 19.00 cycles/hash -Small key speed test - 5-byte keys - 19.00 cycles/hash -Small key speed test - 6-byte keys - 19.00 cycles/hash -Small key speed test - 7-byte keys - 22.00 cycles/hash -Small key speed test - 8-byte keys - 23.00 cycles/hash -Small key speed test - 9-byte keys - 28.00 cycles/hash -Small key speed test - 10-byte keys - 28.00 cycles/hash -Small key speed test - 11-byte keys - 31.00 cycles/hash -Small key speed test - 12-byte keys - 28.00 cycles/hash -Small key speed test - 13-byte keys - 31.00 cycles/hash -Small key speed test - 14-byte keys - 31.00 cycles/hash -Small key speed test - 15-byte keys - 35.00 cycles/hash -Small key speed test - 16-byte keys - 26.00 cycles/hash -Small key speed test - 17-byte keys - 30.24 cycles/hash -Small key speed test - 18-byte keys - 30.25 cycles/hash -Small key speed test - 19-byte keys - 34.00 cycles/hash -Small key speed test - 20-byte keys - 30.24 cycles/hash -Small key speed test - 21-byte keys - 34.00 cycles/hash -Small key speed test - 22-byte keys - 34.00 cycles/hash -Small key speed test - 23-byte keys - 38.00 cycles/hash -Small key speed test - 24-byte keys - 29.00 cycles/hash -Small key speed test - 25-byte keys - 33.00 cycles/hash -Small key speed test - 26-byte keys - 33.00 cycles/hash -Small key speed test - 27-byte keys - 37.00 cycles/hash -Small key speed test - 28-byte keys - 33.00 cycles/hash -Small key speed test - 29-byte keys - 37.00 cycles/hash -Small key speed test - 30-byte keys - 37.00 cycles/hash -Small key speed test - 31-byte keys - 40.00 cycles/hash -Average 29.249 cycles/hash +Alignment 7 - 2.147 bytes/cycle - 6142.46 MiB/sec @ 3 ghz +Alignment 6 - 2.147 bytes/cycle - 6142.72 MiB/sec @ 3 ghz +Alignment 5 - 2.149 bytes/cycle - 6148.58 MiB/sec @ 3 ghz +Alignment 4 - 2.146 bytes/cycle - 6138.69 MiB/sec @ 3 ghz +Alignment 3 - 2.148 bytes/cycle - 6144.82 MiB/sec @ 3 ghz +Alignment 2 - 2.148 bytes/cycle - 6144.84 MiB/sec @ 3 ghz +Alignment 1 - 2.148 bytes/cycle - 6144.20 MiB/sec @ 3 ghz +Alignment 0 - 2.147 bytes/cycle - 6142.70 MiB/sec @ 3 ghz +Average - 2.147 bytes/cycle - 6143.62 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 26.82 cycles/hash +Small key speed test - 2-byte keys - 27.90 cycles/hash +Small key speed test - 3-byte keys - 31.04 cycles/hash +Small key speed test - 4-byte keys - 31.85 cycles/hash +Small key speed test - 5-byte keys - 34.25 cycles/hash +Small key speed test - 6-byte keys - 33.59 cycles/hash +Small key speed test - 7-byte keys - 41.29 cycles/hash +Small key speed test - 8-byte keys - 33.29 cycles/hash +Small key speed test - 9-byte keys - 38.81 cycles/hash +Small key speed test - 10-byte keys - 37.27 cycles/hash +Small key speed test - 11-byte keys - 43.06 cycles/hash +Small key speed test - 12-byte keys - 35.34 cycles/hash +Small key speed test - 13-byte keys - 42.43 cycles/hash +Small key speed test - 14-byte keys - 41.84 cycles/hash +Small key speed test - 15-byte keys - 44.17 cycles/hash +Small key speed test - 16-byte keys - 38.85 cycles/hash +Small key speed test - 17-byte keys - 44.42 cycles/hash +Small key speed test - 18-byte keys - 43.84 cycles/hash +Small key speed test - 19-byte keys - 43.93 cycles/hash +Small key speed test - 20-byte keys - 39.60 cycles/hash +Small key speed test - 21-byte keys - 45.36 cycles/hash +Small key speed test - 22-byte keys - 44.39 cycles/hash +Small key speed test - 23-byte keys - 45.57 cycles/hash +Small key speed test - 24-byte keys - 39.42 cycles/hash +Small key speed test - 25-byte keys - 43.95 cycles/hash +Small key speed test - 26-byte keys - 45.87 cycles/hash +Small key speed test - 27-byte keys - 48.83 cycles/hash +Small key speed test - 28-byte keys - 42.15 cycles/hash +Small key speed test - 29-byte keys - 49.36 cycles/hash +Small key speed test - 30-byte keys - 44.22 cycles/hash +Small key speed test - 31-byte keys - 52.32 cycles/hash +Average 40.485 cycles/hash [[[ 'Hashmap' Speed Tests (when inlined) ]]] diff --git a/doc/discoNONG.txt b/doc/discoNONG.txt index e4f2ddce..4f63e90b 100644 --- a/doc/discoNONG.txt +++ b/doc/discoNONG.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 1.277 bytes/cycle - 3652.45 MiB/sec @ 3 ghz -Alignment 6 - 1.277 bytes/cycle - 3652.35 MiB/sec @ 3 ghz -Alignment 5 - 1.275 bytes/cycle - 3648.45 MiB/sec @ 3 ghz -Alignment 4 - 1.277 bytes/cycle - 3653.63 MiB/sec @ 3 ghz -Alignment 3 - 1.278 bytes/cycle - 3656.20 MiB/sec @ 3 ghz -Alignment 2 - 1.276 bytes/cycle - 3651.32 MiB/sec @ 3 ghz -Alignment 1 - 1.276 bytes/cycle - 3651.35 MiB/sec @ 3 ghz -Alignment 0 - 1.310 bytes/cycle - 3747.22 MiB/sec @ 3 ghz -Average - 1.281 bytes/cycle - 3664.12 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 346.67 cycles/hash -Small key speed test - 2-byte keys - 364.31 cycles/hash -Small key speed test - 3-byte keys - 385.85 cycles/hash -Small key speed test - 4-byte keys - 407.41 cycles/hash -Small key speed test - 5-byte keys - 427.08 cycles/hash -Small key speed test - 6-byte keys - 448.95 cycles/hash -Small key speed test - 7-byte keys - 469.33 cycles/hash -Small key speed test - 8-byte keys - 302.61 cycles/hash -Small key speed test - 9-byte keys - 365.05 cycles/hash -Small key speed test - 10-byte keys - 383.57 cycles/hash -Small key speed test - 11-byte keys - 405.72 cycles/hash -Small key speed test - 12-byte keys - 426.52 cycles/hash -Small key speed test - 13-byte keys - 450.41 cycles/hash -Small key speed test - 14-byte keys - 471.20 cycles/hash -Small key speed test - 15-byte keys - 503.49 cycles/hash -Small key speed test - 16-byte keys - 318.99 cycles/hash -Small key speed test - 17-byte keys - 388.99 cycles/hash -Small key speed test - 18-byte keys - 403.72 cycles/hash -Small key speed test - 19-byte keys - 425.11 cycles/hash -Small key speed test - 20-byte keys - 445.81 cycles/hash -Small key speed test - 21-byte keys - 466.51 cycles/hash -Small key speed test - 22-byte keys - 489.22 cycles/hash -Small key speed test - 23-byte keys - 507.77 cycles/hash -Small key speed test - 24-byte keys - 323.20 cycles/hash -Small key speed test - 25-byte keys - 374.35 cycles/hash -Small key speed test - 26-byte keys - 396.03 cycles/hash -Small key speed test - 27-byte keys - 416.57 cycles/hash -Small key speed test - 28-byte keys - 437.44 cycles/hash -Small key speed test - 29-byte keys - 459.11 cycles/hash -Small key speed test - 30-byte keys - 468.79 cycles/hash -Small key speed test - 31-byte keys - 489.15 cycles/hash -Average 418.353 cycles/hash +Alignment 7 - 1.289 bytes/cycle - 3687.82 MiB/sec @ 3 ghz +Alignment 6 - 1.288 bytes/cycle - 3685.86 MiB/sec @ 3 ghz +Alignment 5 - 1.288 bytes/cycle - 3686.08 MiB/sec @ 3 ghz +Alignment 4 - 1.288 bytes/cycle - 3685.86 MiB/sec @ 3 ghz +Alignment 3 - 1.288 bytes/cycle - 3685.11 MiB/sec @ 3 ghz +Alignment 2 - 1.288 bytes/cycle - 3685.08 MiB/sec @ 3 ghz +Alignment 1 - 1.288 bytes/cycle - 3684.95 MiB/sec @ 3 ghz +Alignment 0 - 1.324 bytes/cycle - 3786.85 MiB/sec @ 3 ghz +Average - 1.293 bytes/cycle - 3698.45 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 328.48 cycles/hash +Small key speed test - 2-byte keys - 344.35 cycles/hash +Small key speed test - 3-byte keys - 365.39 cycles/hash +Small key speed test - 4-byte keys - 386.17 cycles/hash +Small key speed test - 5-byte keys - 408.27 cycles/hash +Small key speed test - 6-byte keys - 426.96 cycles/hash +Small key speed test - 7-byte keys - 447.82 cycles/hash +Small key speed test - 8-byte keys - 297.41 cycles/hash +Small key speed test - 9-byte keys - 348.01 cycles/hash +Small key speed test - 10-byte keys - 366.33 cycles/hash +Small key speed test - 11-byte keys - 387.05 cycles/hash +Small key speed test - 12-byte keys - 410.30 cycles/hash +Small key speed test - 13-byte keys - 431.02 cycles/hash +Small key speed test - 14-byte keys - 451.74 cycles/hash +Small key speed test - 15-byte keys - 484.96 cycles/hash +Small key speed test - 16-byte keys - 315.58 cycles/hash +Small key speed test - 17-byte keys - 367.47 cycles/hash +Small key speed test - 18-byte keys - 385.25 cycles/hash +Small key speed test - 19-byte keys - 407.69 cycles/hash +Small key speed test - 20-byte keys - 426.95 cycles/hash +Small key speed test - 21-byte keys - 447.20 cycles/hash +Small key speed test - 22-byte keys - 467.89 cycles/hash +Small key speed test - 23-byte keys - 488.90 cycles/hash +Small key speed test - 24-byte keys - 320.29 cycles/hash +Small key speed test - 25-byte keys - 354.18 cycles/hash +Small key speed test - 26-byte keys - 373.08 cycles/hash +Small key speed test - 27-byte keys - 393.71 cycles/hash +Small key speed test - 28-byte keys - 414.61 cycles/hash +Small key speed test - 29-byte keys - 434.64 cycles/hash +Small key speed test - 30-byte keys - 444.40 cycles/hash +Small key speed test - 31-byte keys - 463.66 cycles/hash +Average 399.670 cycles/hash [[[ 'Hashmap' Speed Tests ]]] diff --git a/doc/discohash1-128.txt b/doc/discohash1-128.txt index 01d15ccb..cddb957f 100644 --- a/doc/discohash1-128.txt +++ b/doc/discohash1-128.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 1.173 bytes/cycle - 3354.64 MiB/sec @ 3 ghz -Alignment 6 - 1.173 bytes/cycle - 3354.61 MiB/sec @ 3 ghz -Alignment 5 - 1.291 bytes/cycle - 3694.12 MiB/sec @ 3 ghz -Alignment 4 - 1.407 bytes/cycle - 4025.59 MiB/sec @ 3 ghz -Alignment 3 - 1.403 bytes/cycle - 4014.88 MiB/sec @ 3 ghz -Alignment 2 - 1.403 bytes/cycle - 4014.92 MiB/sec @ 3 ghz -Alignment 1 - 1.403 bytes/cycle - 4014.18 MiB/sec @ 3 ghz -Alignment 0 - 1.416 bytes/cycle - 4049.85 MiB/sec @ 3 ghz -Average - 1.334 bytes/cycle - 3815.35 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 177.15 cycles/hash -Small key speed test - 2-byte keys - 194.12 cycles/hash -Small key speed test - 3-byte keys - 215.26 cycles/hash -Small key speed test - 4-byte keys - 250.03 cycles/hash -Small key speed test - 5-byte keys - 266.40 cycles/hash -Small key speed test - 6-byte keys - 289.41 cycles/hash -Small key speed test - 7-byte keys - 322.00 cycles/hash -Small key speed test - 8-byte keys - 149.28 cycles/hash -Small key speed test - 9-byte keys - 160.18 cycles/hash -Small key speed test - 10-byte keys - 183.43 cycles/hash -Small key speed test - 11-byte keys - 212.90 cycles/hash -Small key speed test - 12-byte keys - 231.40 cycles/hash -Small key speed test - 13-byte keys - 266.00 cycles/hash -Small key speed test - 14-byte keys - 296.45 cycles/hash -Small key speed test - 15-byte keys - 314.65 cycles/hash -Small key speed test - 16-byte keys - 171.90 cycles/hash -Small key speed test - 17-byte keys - 195.52 cycles/hash -Small key speed test - 18-byte keys - 224.46 cycles/hash -Small key speed test - 19-byte keys - 246.49 cycles/hash -Small key speed test - 20-byte keys - 266.61 cycles/hash -Small key speed test - 21-byte keys - 292.00 cycles/hash -Small key speed test - 22-byte keys - 314.00 cycles/hash -Small key speed test - 23-byte keys - 335.31 cycles/hash -Small key speed test - 24-byte keys - 171.42 cycles/hash -Small key speed test - 25-byte keys - 190.52 cycles/hash -Small key speed test - 26-byte keys - 206.85 cycles/hash -Small key speed test - 27-byte keys - 214.90 cycles/hash -Small key speed test - 28-byte keys - 235.97 cycles/hash -Small key speed test - 29-byte keys - 234.53 cycles/hash -Small key speed test - 30-byte keys - 245.23 cycles/hash -Small key speed test - 31-byte keys - 259.48 cycles/hash -Average 236.576 cycles/hash +Alignment 7 - 1.423 bytes/cycle - 4069.85 MiB/sec @ 3 ghz +Alignment 6 - 1.423 bytes/cycle - 4070.71 MiB/sec @ 3 ghz +Alignment 5 - 1.422 bytes/cycle - 4068.47 MiB/sec @ 3 ghz +Alignment 4 - 1.422 bytes/cycle - 4069.58 MiB/sec @ 3 ghz +Alignment 3 - 1.422 bytes/cycle - 4067.43 MiB/sec @ 3 ghz +Alignment 2 - 1.422 bytes/cycle - 4069.33 MiB/sec @ 3 ghz +Alignment 1 - 1.422 bytes/cycle - 4067.63 MiB/sec @ 3 ghz +Alignment 0 - 1.433 bytes/cycle - 4100.57 MiB/sec @ 3 ghz +Average - 1.424 bytes/cycle - 4072.95 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 174.83 cycles/hash +Small key speed test - 2-byte keys - 192.61 cycles/hash +Small key speed test - 3-byte keys - 213.18 cycles/hash +Small key speed test - 4-byte keys - 247.01 cycles/hash +Small key speed test - 5-byte keys - 264.06 cycles/hash +Small key speed test - 6-byte keys - 284.95 cycles/hash +Small key speed test - 7-byte keys - 318.88 cycles/hash +Small key speed test - 8-byte keys - 147.38 cycles/hash +Small key speed test - 9-byte keys - 158.64 cycles/hash +Small key speed test - 10-byte keys - 181.66 cycles/hash +Small key speed test - 11-byte keys - 210.30 cycles/hash +Small key speed test - 12-byte keys - 228.57 cycles/hash +Small key speed test - 13-byte keys - 263.00 cycles/hash +Small key speed test - 14-byte keys - 293.18 cycles/hash +Small key speed test - 15-byte keys - 311.07 cycles/hash +Small key speed test - 16-byte keys - 170.18 cycles/hash +Small key speed test - 17-byte keys - 193.57 cycles/hash +Small key speed test - 18-byte keys - 221.98 cycles/hash +Small key speed test - 19-byte keys - 243.39 cycles/hash +Small key speed test - 20-byte keys - 264.50 cycles/hash +Small key speed test - 21-byte keys - 289.71 cycles/hash +Small key speed test - 22-byte keys - 311.05 cycles/hash +Small key speed test - 23-byte keys - 330.98 cycles/hash +Small key speed test - 24-byte keys - 170.75 cycles/hash +Small key speed test - 25-byte keys - 188.51 cycles/hash +Small key speed test - 26-byte keys - 204.57 cycles/hash +Small key speed test - 27-byte keys - 213.26 cycles/hash +Small key speed test - 28-byte keys - 234.58 cycles/hash +Small key speed test - 29-byte keys - 231.25 cycles/hash +Small key speed test - 30-byte keys - 241.83 cycles/hash +Small key speed test - 31-byte keys - 259.80 cycles/hash +Average 234.169 cycles/hash [[[ 'Hashmap' Speed Tests ]]] diff --git a/doc/discohash1.txt b/doc/discohash1.txt index 1c0dcd18..c055d87a 100644 --- a/doc/discohash1.txt +++ b/doc/discohash1.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 1.454 bytes/cycle - 4161.27 MiB/sec @ 3 ghz -Alignment 6 - 1.452 bytes/cycle - 4154.77 MiB/sec @ 3 ghz -Alignment 5 - 1.452 bytes/cycle - 4153.61 MiB/sec @ 3 ghz -Alignment 4 - 1.451 bytes/cycle - 4152.66 MiB/sec @ 3 ghz -Alignment 3 - 1.451 bytes/cycle - 4151.81 MiB/sec @ 3 ghz -Alignment 2 - 1.451 bytes/cycle - 4152.64 MiB/sec @ 3 ghz -Alignment 1 - 1.451 bytes/cycle - 4152.44 MiB/sec @ 3 ghz -Alignment 0 - 1.463 bytes/cycle - 4184.94 MiB/sec @ 3 ghz -Average - 1.453 bytes/cycle - 4158.02 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 139.31 cycles/hash -Small key speed test - 2-byte keys - 158.29 cycles/hash -Small key speed test - 3-byte keys - 180.78 cycles/hash -Small key speed test - 4-byte keys - 211.73 cycles/hash -Small key speed test - 5-byte keys - 228.43 cycles/hash -Small key speed test - 6-byte keys - 249.71 cycles/hash -Small key speed test - 7-byte keys - 282.85 cycles/hash -Small key speed test - 8-byte keys - 113.52 cycles/hash -Small key speed test - 9-byte keys - 126.12 cycles/hash -Small key speed test - 10-byte keys - 146.90 cycles/hash -Small key speed test - 11-byte keys - 176.20 cycles/hash -Small key speed test - 12-byte keys - 194.82 cycles/hash -Small key speed test - 13-byte keys - 228.12 cycles/hash -Small key speed test - 14-byte keys - 255.40 cycles/hash -Small key speed test - 15-byte keys - 276.32 cycles/hash -Small key speed test - 16-byte keys - 135.19 cycles/hash -Small key speed test - 17-byte keys - 162.00 cycles/hash -Small key speed test - 18-byte keys - 189.23 cycles/hash -Small key speed test - 19-byte keys - 204.83 cycles/hash -Small key speed test - 20-byte keys - 226.28 cycles/hash -Small key speed test - 21-byte keys - 255.59 cycles/hash -Small key speed test - 22-byte keys - 270.21 cycles/hash -Small key speed test - 23-byte keys - 343.99 cycles/hash -Small key speed test - 24-byte keys - 149.21 cycles/hash -Small key speed test - 25-byte keys - 154.00 cycles/hash -Small key speed test - 26-byte keys - 170.57 cycles/hash -Small key speed test - 27-byte keys - 172.33 cycles/hash -Small key speed test - 28-byte keys - 185.32 cycles/hash -Small key speed test - 29-byte keys - 197.55 cycles/hash -Small key speed test - 30-byte keys - 203.39 cycles/hash -Small key speed test - 31-byte keys - 214.00 cycles/hash -Average 200.071 cycles/hash +Alignment 7 - 1.443 bytes/cycle - 4128.53 MiB/sec @ 3 ghz +Alignment 6 - 1.442 bytes/cycle - 4125.79 MiB/sec @ 3 ghz +Alignment 5 - 1.442 bytes/cycle - 4126.95 MiB/sec @ 3 ghz +Alignment 4 - 1.442 bytes/cycle - 4125.61 MiB/sec @ 3 ghz +Alignment 3 - 1.442 bytes/cycle - 4126.79 MiB/sec @ 3 ghz +Alignment 2 - 1.442 bytes/cycle - 4126.08 MiB/sec @ 3 ghz +Alignment 1 - 1.443 bytes/cycle - 4127.12 MiB/sec @ 3 ghz +Alignment 0 - 1.455 bytes/cycle - 4162.07 MiB/sec @ 3 ghz +Average - 1.444 bytes/cycle - 4131.12 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 140.31 cycles/hash +Small key speed test - 2-byte keys - 159.27 cycles/hash +Small key speed test - 3-byte keys - 181.72 cycles/hash +Small key speed test - 4-byte keys - 213.00 cycles/hash +Small key speed test - 5-byte keys - 231.74 cycles/hash +Small key speed test - 6-byte keys - 250.97 cycles/hash +Small key speed test - 7-byte keys - 284.69 cycles/hash +Small key speed test - 8-byte keys - 114.00 cycles/hash +Small key speed test - 9-byte keys - 126.66 cycles/hash +Small key speed test - 10-byte keys - 147.52 cycles/hash +Small key speed test - 11-byte keys - 177.23 cycles/hash +Small key speed test - 12-byte keys - 195.90 cycles/hash +Small key speed test - 13-byte keys - 228.99 cycles/hash +Small key speed test - 14-byte keys - 257.00 cycles/hash +Small key speed test - 15-byte keys - 278.14 cycles/hash +Small key speed test - 16-byte keys - 135.62 cycles/hash +Small key speed test - 17-byte keys - 163.19 cycles/hash +Small key speed test - 18-byte keys - 190.16 cycles/hash +Small key speed test - 19-byte keys - 206.19 cycles/hash +Small key speed test - 20-byte keys - 227.00 cycles/hash +Small key speed test - 21-byte keys - 257.10 cycles/hash +Small key speed test - 22-byte keys - 271.24 cycles/hash +Small key speed test - 23-byte keys - 294.00 cycles/hash +Small key speed test - 24-byte keys - 135.69 cycles/hash +Small key speed test - 25-byte keys - 155.20 cycles/hash +Small key speed test - 26-byte keys - 169.16 cycles/hash +Small key speed test - 27-byte keys - 173.19 cycles/hash +Small key speed test - 28-byte keys - 185.07 cycles/hash +Small key speed test - 29-byte keys - 199.24 cycles/hash +Small key speed test - 30-byte keys - 204.24 cycles/hash +Small key speed test - 31-byte keys - 215.46 cycles/hash +Average 198.996 cycles/hash [[[ 'Hashmap' Speed Tests ]]] diff --git a/doc/discohash2-128.txt b/doc/discohash2-128.txt index 8194af55..3962742d 100644 --- a/doc/discohash2-128.txt +++ b/doc/discohash2-128.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 1.449 bytes/cycle - 4144.33 MiB/sec @ 3 ghz -Alignment 6 - 1.448 bytes/cycle - 4143.71 MiB/sec @ 3 ghz -Alignment 5 - 1.448 bytes/cycle - 4143.26 MiB/sec @ 3 ghz -Alignment 4 - 1.448 bytes/cycle - 4143.77 MiB/sec @ 3 ghz -Alignment 3 - 1.448 bytes/cycle - 4143.28 MiB/sec @ 3 ghz -Alignment 2 - 1.448 bytes/cycle - 4143.45 MiB/sec @ 3 ghz -Alignment 1 - 1.448 bytes/cycle - 4143.51 MiB/sec @ 3 ghz -Alignment 0 - 1.459 bytes/cycle - 4174.84 MiB/sec @ 3 ghz -Average - 1.450 bytes/cycle - 4147.52 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 173.49 cycles/hash -Small key speed test - 2-byte keys - 188.21 cycles/hash -Small key speed test - 3-byte keys - 209.69 cycles/hash -Small key speed test - 4-byte keys - 244.08 cycles/hash -Small key speed test - 5-byte keys - 303.40 cycles/hash -Small key speed test - 6-byte keys - 281.21 cycles/hash -Small key speed test - 7-byte keys - 314.83 cycles/hash -Small key speed test - 8-byte keys - 146.89 cycles/hash -Small key speed test - 9-byte keys - 156.50 cycles/hash -Small key speed test - 10-byte keys - 177.07 cycles/hash -Small key speed test - 11-byte keys - 206.39 cycles/hash -Small key speed test - 12-byte keys - 224.48 cycles/hash -Small key speed test - 13-byte keys - 258.07 cycles/hash -Small key speed test - 14-byte keys - 287.97 cycles/hash -Small key speed test - 15-byte keys - 324.44 cycles/hash -Small key speed test - 16-byte keys - 165.67 cycles/hash -Small key speed test - 17-byte keys - 190.62 cycles/hash -Small key speed test - 18-byte keys - 219.48 cycles/hash -Small key speed test - 19-byte keys - 236.14 cycles/hash -Small key speed test - 20-byte keys - 257.24 cycles/hash -Small key speed test - 21-byte keys - 292.16 cycles/hash -Small key speed test - 22-byte keys - 308.73 cycles/hash -Small key speed test - 23-byte keys - 331.73 cycles/hash -Small key speed test - 24-byte keys - 169.55 cycles/hash -Small key speed test - 25-byte keys - 187.92 cycles/hash -Small key speed test - 26-byte keys - 202.88 cycles/hash -Small key speed test - 27-byte keys - 208.86 cycles/hash -Small key speed test - 28-byte keys - 224.01 cycles/hash -Small key speed test - 29-byte keys - 233.99 cycles/hash -Small key speed test - 30-byte keys - 235.91 cycles/hash -Small key speed test - 31-byte keys - 251.91 cycles/hash -Average 232.693 cycles/hash +Alignment 7 - 1.440 bytes/cycle - 4120.37 MiB/sec @ 3 ghz +Alignment 6 - 1.440 bytes/cycle - 4118.87 MiB/sec @ 3 ghz +Alignment 5 - 1.439 bytes/cycle - 4116.52 MiB/sec @ 3 ghz +Alignment 4 - 1.439 bytes/cycle - 4118.31 MiB/sec @ 3 ghz +Alignment 3 - 1.430 bytes/cycle - 4092.07 MiB/sec @ 3 ghz +Alignment 2 - 1.415 bytes/cycle - 4048.48 MiB/sec @ 3 ghz +Alignment 1 - 1.417 bytes/cycle - 4054.98 MiB/sec @ 3 ghz +Alignment 0 - 1.429 bytes/cycle - 4088.27 MiB/sec @ 3 ghz +Average - 1.431 bytes/cycle - 4094.73 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 183.40 cycles/hash +Small key speed test - 2-byte keys - 191.56 cycles/hash +Small key speed test - 3-byte keys - 213.54 cycles/hash +Small key speed test - 4-byte keys - 256.90 cycles/hash +Small key speed test - 5-byte keys - 265.74 cycles/hash +Small key speed test - 6-byte keys - 287.08 cycles/hash +Small key speed test - 7-byte keys - 329.14 cycles/hash +Small key speed test - 8-byte keys - 148.62 cycles/hash +Small key speed test - 9-byte keys - 179.57 cycles/hash +Small key speed test - 10-byte keys - 209.00 cycles/hash +Small key speed test - 11-byte keys - 210.18 cycles/hash +Small key speed test - 12-byte keys - 228.52 cycles/hash +Small key speed test - 13-byte keys - 291.00 cycles/hash +Small key speed test - 14-byte keys - 294.05 cycles/hash +Small key speed test - 15-byte keys - 313.00 cycles/hash +Small key speed test - 16-byte keys - 169.10 cycles/hash +Small key speed test - 17-byte keys - 194.43 cycles/hash +Small key speed test - 18-byte keys - 223.91 cycles/hash +Small key speed test - 19-byte keys - 241.52 cycles/hash +Small key speed test - 20-byte keys - 262.88 cycles/hash +Small key speed test - 21-byte keys - 291.90 cycles/hash +Small key speed test - 22-byte keys - 308.37 cycles/hash +Small key speed test - 23-byte keys - 330.03 cycles/hash +Small key speed test - 24-byte keys - 169.18 cycles/hash +Small key speed test - 25-byte keys - 187.65 cycles/hash +Small key speed test - 26-byte keys - 201.56 cycles/hash +Small key speed test - 27-byte keys - 205.95 cycles/hash +Small key speed test - 28-byte keys - 220.75 cycles/hash +Small key speed test - 29-byte keys - 236.60 cycles/hash +Small key speed test - 30-byte keys - 238.14 cycles/hash +Small key speed test - 31-byte keys - 251.66 cycles/hash +Average 236.611 cycles/hash [[[ 'Hashmap' Speed Tests ]]] diff --git a/doc/discohash2.txt b/doc/discohash2.txt index 99e755ba..c2fe58eb 100644 --- a/doc/discohash2.txt +++ b/doc/discohash2.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 1.416 bytes/cycle - 4050.33 MiB/sec @ 3 ghz -Alignment 6 - 1.417 bytes/cycle - 4053.97 MiB/sec @ 3 ghz -Alignment 5 - 1.417 bytes/cycle - 4054.96 MiB/sec @ 3 ghz -Alignment 4 - 1.416 bytes/cycle - 4050.15 MiB/sec @ 3 ghz -Alignment 3 - 1.417 bytes/cycle - 4054.90 MiB/sec @ 3 ghz -Alignment 2 - 1.420 bytes/cycle - 4061.61 MiB/sec @ 3 ghz -Alignment 1 - 1.416 bytes/cycle - 4051.81 MiB/sec @ 3 ghz -Alignment 0 - 1.430 bytes/cycle - 4091.40 MiB/sec @ 3 ghz -Average - 1.419 bytes/cycle - 4058.64 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 144.96 cycles/hash -Small key speed test - 2-byte keys - 166.44 cycles/hash -Small key speed test - 3-byte keys - 189.42 cycles/hash -Small key speed test - 4-byte keys - 218.41 cycles/hash -Small key speed test - 5-byte keys - 241.44 cycles/hash -Small key speed test - 6-byte keys - 260.31 cycles/hash -Small key speed test - 7-byte keys - 291.23 cycles/hash -Small key speed test - 8-byte keys - 119.91 cycles/hash -Small key speed test - 9-byte keys - 131.86 cycles/hash -Small key speed test - 10-byte keys - 151.50 cycles/hash -Small key speed test - 11-byte keys - 179.69 cycles/hash -Small key speed test - 12-byte keys - 198.48 cycles/hash -Small key speed test - 13-byte keys - 234.76 cycles/hash -Small key speed test - 14-byte keys - 262.72 cycles/hash -Small key speed test - 15-byte keys - 281.77 cycles/hash -Small key speed test - 16-byte keys - 140.94 cycles/hash -Small key speed test - 17-byte keys - 165.92 cycles/hash -Small key speed test - 18-byte keys - 194.89 cycles/hash -Small key speed test - 19-byte keys - 213.12 cycles/hash -Small key speed test - 20-byte keys - 231.82 cycles/hash -Small key speed test - 21-byte keys - 261.78 cycles/hash -Small key speed test - 22-byte keys - 280.79 cycles/hash -Small key speed test - 23-byte keys - 299.72 cycles/hash -Small key speed test - 24-byte keys - 140.90 cycles/hash -Small key speed test - 25-byte keys - 160.03 cycles/hash -Small key speed test - 26-byte keys - 175.90 cycles/hash -Small key speed test - 27-byte keys - 182.99 cycles/hash -Small key speed test - 28-byte keys - 190.22 cycles/hash -Small key speed test - 29-byte keys - 203.91 cycles/hash -Small key speed test - 30-byte keys - 208.91 cycles/hash -Small key speed test - 31-byte keys - 222.42 cycles/hash -Average 204.746 cycles/hash +Alignment 7 - 1.391 bytes/cycle - 3980.91 MiB/sec @ 3 ghz +Alignment 6 - 1.394 bytes/cycle - 3988.74 MiB/sec @ 3 ghz +Alignment 5 - 1.394 bytes/cycle - 3988.69 MiB/sec @ 3 ghz +Alignment 4 - 1.392 bytes/cycle - 3982.67 MiB/sec @ 3 ghz +Alignment 3 - 1.392 bytes/cycle - 3982.05 MiB/sec @ 3 ghz +Alignment 2 - 1.391 bytes/cycle - 3978.37 MiB/sec @ 3 ghz +Alignment 1 - 1.391 bytes/cycle - 3980.87 MiB/sec @ 3 ghz +Alignment 0 - 1.402 bytes/cycle - 4009.91 MiB/sec @ 3 ghz +Average - 1.393 bytes/cycle - 3986.52 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 147.00 cycles/hash +Small key speed test - 2-byte keys - 168.42 cycles/hash +Small key speed test - 3-byte keys - 192.41 cycles/hash +Small key speed test - 4-byte keys - 221.37 cycles/hash +Small key speed test - 5-byte keys - 244.49 cycles/hash +Small key speed test - 6-byte keys - 263.44 cycles/hash +Small key speed test - 7-byte keys - 294.57 cycles/hash +Small key speed test - 8-byte keys - 121.11 cycles/hash +Small key speed test - 9-byte keys - 133.57 cycles/hash +Small key speed test - 10-byte keys - 153.48 cycles/hash +Small key speed test - 11-byte keys - 182.32 cycles/hash +Small key speed test - 12-byte keys - 201.21 cycles/hash +Small key speed test - 13-byte keys - 237.76 cycles/hash +Small key speed test - 14-byte keys - 266.26 cycles/hash +Small key speed test - 15-byte keys - 285.47 cycles/hash +Small key speed test - 16-byte keys - 142.95 cycles/hash +Small key speed test - 17-byte keys - 168.16 cycles/hash +Small key speed test - 18-byte keys - 197.18 cycles/hash +Small key speed test - 19-byte keys - 215.92 cycles/hash +Small key speed test - 20-byte keys - 234.91 cycles/hash +Small key speed test - 21-byte keys - 264.80 cycles/hash +Small key speed test - 22-byte keys - 284.89 cycles/hash +Small key speed test - 23-byte keys - 303.84 cycles/hash +Small key speed test - 24-byte keys - 143.04 cycles/hash +Small key speed test - 25-byte keys - 162.73 cycles/hash +Small key speed test - 26-byte keys - 178.86 cycles/hash +Small key speed test - 27-byte keys - 185.65 cycles/hash +Small key speed test - 28-byte keys - 192.96 cycles/hash +Small key speed test - 29-byte keys - 207.05 cycles/hash +Small key speed test - 30-byte keys - 212.02 cycles/hash +Small key speed test - 31-byte keys - 225.33 cycles/hash +Average 207.522 cycles/hash [[[ 'Hashmap' Speed Tests ]]] diff --git a/doc/falkhash.txt b/doc/falkhash.txt index 28b2a470..89be13dd 100644 --- a/doc/falkhash.txt +++ b/doc/falkhash.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 6.963 bytes/cycle - 19921.66 MiB/sec @ 3 ghz -Alignment 6 - 6.965 bytes/cycle - 19927.12 MiB/sec @ 3 ghz -Alignment 5 - 6.965 bytes/cycle - 19926.07 MiB/sec @ 3 ghz -Alignment 4 - 6.964 bytes/cycle - 19925.06 MiB/sec @ 3 ghz -Alignment 3 - 6.965 bytes/cycle - 19926.23 MiB/sec @ 3 ghz -Alignment 2 - 6.965 bytes/cycle - 19926.45 MiB/sec @ 3 ghz -Alignment 1 - 6.965 bytes/cycle - 19925.76 MiB/sec @ 3 ghz -Alignment 0 - 7.688 bytes/cycle - 21995.72 MiB/sec @ 3 ghz -Average - 7.055 bytes/cycle - 20184.26 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 124.96 cycles/hash -Small key speed test - 2-byte keys - 125.00 cycles/hash -Small key speed test - 3-byte keys - 126.00 cycles/hash -Small key speed test - 4-byte keys - 166.00 cycles/hash -Small key speed test - 5-byte keys - 166.00 cycles/hash -Small key speed test - 6-byte keys - 166.00 cycles/hash -Small key speed test - 7-byte keys - 166.00 cycles/hash -Small key speed test - 8-byte keys - 166.00 cycles/hash -Small key speed test - 9-byte keys - 166.00 cycles/hash -Small key speed test - 10-byte keys - 169.03 cycles/hash -Small key speed test - 11-byte keys - 169.04 cycles/hash -Small key speed test - 12-byte keys - 169.15 cycles/hash -Small key speed test - 13-byte keys - 170.03 cycles/hash -Small key speed test - 14-byte keys - 170.55 cycles/hash -Small key speed test - 15-byte keys - 173.51 cycles/hash -Small key speed test - 16-byte keys - 174.36 cycles/hash -Small key speed test - 17-byte keys - 174.00 cycles/hash -Small key speed test - 18-byte keys - 175.03 cycles/hash -Small key speed test - 19-byte keys - 175.00 cycles/hash -Small key speed test - 20-byte keys - 174.00 cycles/hash -Small key speed test - 21-byte keys - 175.00 cycles/hash -Small key speed test - 22-byte keys - 176.00 cycles/hash -Small key speed test - 23-byte keys - 178.00 cycles/hash -Small key speed test - 24-byte keys - 179.03 cycles/hash -Small key speed test - 25-byte keys - 180.00 cycles/hash -Small key speed test - 26-byte keys - 181.00 cycles/hash -Small key speed test - 27-byte keys - 182.00 cycles/hash -Small key speed test - 28-byte keys - 182.26 cycles/hash -Small key speed test - 29-byte keys - 184.00 cycles/hash -Small key speed test - 30-byte keys - 184.53 cycles/hash -Small key speed test - 31-byte keys - 185.00 cycles/hash -Average 169.435 cycles/hash +Alignment 7 - 17.497 bytes/cycle - 50058.33 MiB/sec @ 3 ghz +Alignment 6 - 17.478 bytes/cycle - 50005.47 MiB/sec @ 3 ghz +Alignment 5 - 17.577 bytes/cycle - 50287.96 MiB/sec @ 3 ghz +Alignment 4 - 17.595 bytes/cycle - 50339.77 MiB/sec @ 3 ghz +Alignment 3 - 17.586 bytes/cycle - 50313.59 MiB/sec @ 3 ghz +Alignment 2 - 17.487 bytes/cycle - 50031.65 MiB/sec @ 3 ghz +Alignment 1 - 17.568 bytes/cycle - 50262.43 MiB/sec @ 3 ghz +Alignment 0 - 18.789 bytes/cycle - 53754.34 MiB/sec @ 3 ghz +Average - 17.697 bytes/cycle - 50631.69 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 108.59 cycles/hash +Small key speed test - 2-byte keys - 108.54 cycles/hash +Small key speed test - 3-byte keys - 107.85 cycles/hash +Small key speed test - 4-byte keys - 107.87 cycles/hash +Small key speed test - 5-byte keys - 114.86 cycles/hash +Small key speed test - 6-byte keys - 114.89 cycles/hash +Small key speed test - 7-byte keys - 114.95 cycles/hash +Small key speed test - 8-byte keys - 114.96 cycles/hash +Small key speed test - 9-byte keys - 114.99 cycles/hash +Small key speed test - 10-byte keys - 115.21 cycles/hash +Small key speed test - 11-byte keys - 116.03 cycles/hash +Small key speed test - 12-byte keys - 120.40 cycles/hash +Small key speed test - 13-byte keys - 121.85 cycles/hash +Small key speed test - 14-byte keys - 120.55 cycles/hash +Small key speed test - 15-byte keys - 121.67 cycles/hash +Small key speed test - 16-byte keys - 125.17 cycles/hash +Small key speed test - 17-byte keys - 122.31 cycles/hash +Small key speed test - 18-byte keys - 128.99 cycles/hash +Small key speed test - 19-byte keys - 129.12 cycles/hash +Small key speed test - 20-byte keys - 129.12 cycles/hash +Small key speed test - 21-byte keys - 128.97 cycles/hash +Small key speed test - 22-byte keys - 129.11 cycles/hash +Small key speed test - 23-byte keys - 128.98 cycles/hash +Small key speed test - 24-byte keys - 128.99 cycles/hash +Small key speed test - 25-byte keys - 129.50 cycles/hash +Small key speed test - 26-byte keys - 129.98 cycles/hash +Small key speed test - 27-byte keys - 135.98 cycles/hash +Small key speed test - 28-byte keys - 135.98 cycles/hash +Small key speed test - 29-byte keys - 135.98 cycles/hash +Small key speed test - 30-byte keys - 136.13 cycles/hash +Small key speed test - 31-byte keys - 136.09 cycles/hash +Average 123.019 cycles/hash [[[ 'Hashmap' Speed Tests (when inlined) ]]] diff --git a/doc/farmhash128_c.txt b/doc/farmhash128_c.txt index e90a6390..cd899af4 100644 --- a/doc/farmhash128_c.txt +++ b/doc/farmhash128_c.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 3.203 bytes/cycle - 9162.51 MiB/sec @ 3 ghz -Alignment 6 - 3.202 bytes/cycle - 9162.35 MiB/sec @ 3 ghz -Alignment 5 - 3.202 bytes/cycle - 9161.74 MiB/sec @ 3 ghz -Alignment 4 - 3.203 bytes/cycle - 9163.08 MiB/sec @ 3 ghz -Alignment 3 - 3.203 bytes/cycle - 9162.50 MiB/sec @ 3 ghz -Alignment 2 - 3.202 bytes/cycle - 9162.21 MiB/sec @ 3 ghz -Alignment 1 - 3.202 bytes/cycle - 9162.40 MiB/sec @ 3 ghz -Alignment 0 - 3.460 bytes/cycle - 9898.54 MiB/sec @ 3 ghz -Average - 3.235 bytes/cycle - 9254.42 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 62.00 cycles/hash -Small key speed test - 2-byte keys - 62.00 cycles/hash -Small key speed test - 3-byte keys - 62.00 cycles/hash -Small key speed test - 4-byte keys - 63.00 cycles/hash -Small key speed test - 5-byte keys - 71.00 cycles/hash -Small key speed test - 6-byte keys - 71.00 cycles/hash -Small key speed test - 7-byte keys - 71.00 cycles/hash -Small key speed test - 8-byte keys - 75.00 cycles/hash -Small key speed test - 9-byte keys - 75.00 cycles/hash -Small key speed test - 10-byte keys - 75.00 cycles/hash -Small key speed test - 11-byte keys - 75.00 cycles/hash -Small key speed test - 12-byte keys - 74.00 cycles/hash -Small key speed test - 13-byte keys - 74.00 cycles/hash -Small key speed test - 14-byte keys - 74.00 cycles/hash -Small key speed test - 15-byte keys - 74.00 cycles/hash -Small key speed test - 16-byte keys - 74.00 cycles/hash -Small key speed test - 17-byte keys - 78.00 cycles/hash -Small key speed test - 18-byte keys - 78.22 cycles/hash -Small key speed test - 19-byte keys - 78.23 cycles/hash -Small key speed test - 20-byte keys - 78.00 cycles/hash -Small key speed test - 21-byte keys - 78.00 cycles/hash -Small key speed test - 22-byte keys - 78.00 cycles/hash -Small key speed test - 23-byte keys - 78.00 cycles/hash -Small key speed test - 24-byte keys - 78.00 cycles/hash -Small key speed test - 25-byte keys - 78.00 cycles/hash -Small key speed test - 26-byte keys - 78.00 cycles/hash -Small key speed test - 27-byte keys - 78.00 cycles/hash -Small key speed test - 28-byte keys - 78.00 cycles/hash -Small key speed test - 29-byte keys - 78.00 cycles/hash -Small key speed test - 30-byte keys - 78.00 cycles/hash -Small key speed test - 31-byte keys - 78.00 cycles/hash -Average 74.273 cycles/hash +Alignment 7 - 4.800 bytes/cycle - 13733.38 MiB/sec @ 3 ghz +Alignment 6 - 4.801 bytes/cycle - 13734.46 MiB/sec @ 3 ghz +Alignment 5 - 4.800 bytes/cycle - 13732.49 MiB/sec @ 3 ghz +Alignment 4 - 4.800 bytes/cycle - 13731.94 MiB/sec @ 3 ghz +Alignment 3 - 4.800 bytes/cycle - 13732.29 MiB/sec @ 3 ghz +Alignment 2 - 4.794 bytes/cycle - 13715.25 MiB/sec @ 3 ghz +Alignment 1 - 4.800 bytes/cycle - 13733.10 MiB/sec @ 3 ghz +Alignment 0 - 4.863 bytes/cycle - 13913.04 MiB/sec @ 3 ghz +Average - 4.807 bytes/cycle - 13753.24 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 57.14 cycles/hash +Small key speed test - 2-byte keys - 57.00 cycles/hash +Small key speed test - 3-byte keys - 57.17 cycles/hash +Small key speed test - 4-byte keys - 59.92 cycles/hash +Small key speed test - 5-byte keys - 59.95 cycles/hash +Small key speed test - 6-byte keys - 59.96 cycles/hash +Small key speed test - 7-byte keys - 59.96 cycles/hash +Small key speed test - 8-byte keys - 62.00 cycles/hash +Small key speed test - 9-byte keys - 62.00 cycles/hash +Small key speed test - 10-byte keys - 62.00 cycles/hash +Small key speed test - 11-byte keys - 62.00 cycles/hash +Small key speed test - 12-byte keys - 62.00 cycles/hash +Small key speed test - 13-byte keys - 62.16 cycles/hash +Small key speed test - 14-byte keys - 62.00 cycles/hash +Small key speed test - 15-byte keys - 62.00 cycles/hash +Small key speed test - 16-byte keys - 62.00 cycles/hash +Small key speed test - 17-byte keys - 77.93 cycles/hash +Small key speed test - 18-byte keys - 77.94 cycles/hash +Small key speed test - 19-byte keys - 77.99 cycles/hash +Small key speed test - 20-byte keys - 77.92 cycles/hash +Small key speed test - 21-byte keys - 77.98 cycles/hash +Small key speed test - 22-byte keys - 77.99 cycles/hash +Small key speed test - 23-byte keys - 77.98 cycles/hash +Small key speed test - 24-byte keys - 77.89 cycles/hash +Small key speed test - 25-byte keys - 77.89 cycles/hash +Small key speed test - 26-byte keys - 77.87 cycles/hash +Small key speed test - 27-byte keys - 77.89 cycles/hash +Small key speed test - 28-byte keys - 77.82 cycles/hash +Small key speed test - 29-byte keys - 77.79 cycles/hash +Small key speed test - 30-byte keys - 77.77 cycles/hash +Small key speed test - 31-byte keys - 77.79 cycles/hash +Average 68.958 cycles/hash [[[ 'Hashmap' Speed Tests (when inlined) ]]] diff --git a/doc/farmhash32_c.txt b/doc/farmhash32_c.txt index 62ecf83d..8ab530a1 100644 --- a/doc/farmhash32_c.txt +++ b/doc/farmhash32_c.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 5.524 bytes/cycle - 15805.36 MiB/sec @ 3 ghz -Alignment 6 - 5.524 bytes/cycle - 15803.50 MiB/sec @ 3 ghz -Alignment 5 - 5.524 bytes/cycle - 15803.55 MiB/sec @ 3 ghz -Alignment 4 - 5.550 bytes/cycle - 15878.45 MiB/sec @ 3 ghz -Alignment 3 - 5.525 bytes/cycle - 15806.61 MiB/sec @ 3 ghz -Alignment 2 - 5.524 bytes/cycle - 15803.72 MiB/sec @ 3 ghz -Alignment 1 - 5.524 bytes/cycle - 15803.12 MiB/sec @ 3 ghz -Alignment 0 - 7.057 bytes/cycle - 20191.42 MiB/sec @ 3 ghz -Average - 5.719 bytes/cycle - 16361.97 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 38.00 cycles/hash -Small key speed test - 2-byte keys - 37.99 cycles/hash -Small key speed test - 3-byte keys - 37.99 cycles/hash -Small key speed test - 4-byte keys - 41.00 cycles/hash -Small key speed test - 5-byte keys - 50.80 cycles/hash -Small key speed test - 6-byte keys - 50.79 cycles/hash -Small key speed test - 7-byte keys - 50.80 cycles/hash -Small key speed test - 8-byte keys - 58.31 cycles/hash -Small key speed test - 9-byte keys - 58.24 cycles/hash -Small key speed test - 10-byte keys - 58.25 cycles/hash -Small key speed test - 11-byte keys - 58.25 cycles/hash -Small key speed test - 12-byte keys - 57.82 cycles/hash -Small key speed test - 13-byte keys - 57.89 cycles/hash -Small key speed test - 14-byte keys - 57.89 cycles/hash -Small key speed test - 15-byte keys - 57.89 cycles/hash -Small key speed test - 16-byte keys - 57.83 cycles/hash -Small key speed test - 17-byte keys - 58.16 cycles/hash -Small key speed test - 18-byte keys - 58.16 cycles/hash -Small key speed test - 19-byte keys - 58.16 cycles/hash -Small key speed test - 20-byte keys - 58.64 cycles/hash -Small key speed test - 21-byte keys - 58.64 cycles/hash -Small key speed test - 22-byte keys - 58.64 cycles/hash -Small key speed test - 23-byte keys - 58.65 cycles/hash -Small key speed test - 24-byte keys - 58.00 cycles/hash -Small key speed test - 25-byte keys - 58.00 cycles/hash -Small key speed test - 26-byte keys - 58.00 cycles/hash -Small key speed test - 27-byte keys - 58.00 cycles/hash -Small key speed test - 28-byte keys - 58.00 cycles/hash -Small key speed test - 29-byte keys - 58.00 cycles/hash -Small key speed test - 30-byte keys - 58.00 cycles/hash -Small key speed test - 31-byte keys - 58.00 cycles/hash -Average 54.928 cycles/hash +Alignment 7 - 7.492 bytes/cycle - 21433.46 MiB/sec @ 3 ghz +Alignment 6 - 7.491 bytes/cycle - 21431.02 MiB/sec @ 3 ghz +Alignment 5 - 7.491 bytes/cycle - 21432.20 MiB/sec @ 3 ghz +Alignment 4 - 7.508 bytes/cycle - 21479.96 MiB/sec @ 3 ghz +Alignment 3 - 7.520 bytes/cycle - 21513.72 MiB/sec @ 3 ghz +Alignment 2 - 7.518 bytes/cycle - 21509.73 MiB/sec @ 3 ghz +Alignment 1 - 7.520 bytes/cycle - 21514.78 MiB/sec @ 3 ghz +Alignment 0 - 7.864 bytes/cycle - 22500.04 MiB/sec @ 3 ghz +Average - 7.550 bytes/cycle - 21601.86 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 39.11 cycles/hash +Small key speed test - 2-byte keys - 39.00 cycles/hash +Small key speed test - 3-byte keys - 39.00 cycles/hash +Small key speed test - 4-byte keys - 43.00 cycles/hash +Small key speed test - 5-byte keys - 43.00 cycles/hash +Small key speed test - 6-byte keys - 43.00 cycles/hash +Small key speed test - 7-byte keys - 43.00 cycles/hash +Small key speed test - 8-byte keys - 48.61 cycles/hash +Small key speed test - 9-byte keys - 48.32 cycles/hash +Small key speed test - 10-byte keys - 48.00 cycles/hash +Small key speed test - 11-byte keys - 48.00 cycles/hash +Small key speed test - 12-byte keys - 48.00 cycles/hash +Small key speed test - 13-byte keys - 48.00 cycles/hash +Small key speed test - 14-byte keys - 48.00 cycles/hash +Small key speed test - 15-byte keys - 48.27 cycles/hash +Small key speed test - 16-byte keys - 48.51 cycles/hash +Small key speed test - 17-byte keys - 49.26 cycles/hash +Small key speed test - 18-byte keys - 49.00 cycles/hash +Small key speed test - 19-byte keys - 49.00 cycles/hash +Small key speed test - 20-byte keys - 49.00 cycles/hash +Small key speed test - 21-byte keys - 50.00 cycles/hash +Small key speed test - 22-byte keys - 50.00 cycles/hash +Small key speed test - 23-byte keys - 50.00 cycles/hash +Small key speed test - 24-byte keys - 49.95 cycles/hash +Small key speed test - 25-byte keys - 49.98 cycles/hash +Small key speed test - 26-byte keys - 50.00 cycles/hash +Small key speed test - 27-byte keys - 50.00 cycles/hash +Small key speed test - 28-byte keys - 49.96 cycles/hash +Small key speed test - 29-byte keys - 49.95 cycles/hash +Small key speed test - 30-byte keys - 49.96 cycles/hash +Small key speed test - 31-byte keys - 49.96 cycles/hash +Average 47.382 cycles/hash [[[ 'Hashmap' Speed Tests (when inlined) ]]] diff --git a/doc/farmhash64_c.txt b/doc/farmhash64_c.txt index d4d0e585..cf43bfc7 100644 --- a/doc/farmhash64_c.txt +++ b/doc/farmhash64_c.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 3.027 bytes/cycle - 8660.03 MiB/sec @ 3 ghz -Alignment 6 - 3.027 bytes/cycle - 8660.13 MiB/sec @ 3 ghz -Alignment 5 - 3.027 bytes/cycle - 8661.01 MiB/sec @ 3 ghz -Alignment 4 - 3.027 bytes/cycle - 8660.84 MiB/sec @ 3 ghz -Alignment 3 - 3.027 bytes/cycle - 8660.19 MiB/sec @ 3 ghz -Alignment 2 - 3.027 bytes/cycle - 8660.41 MiB/sec @ 3 ghz -Alignment 1 - 3.027 bytes/cycle - 8661.01 MiB/sec @ 3 ghz -Alignment 0 - 3.150 bytes/cycle - 9012.45 MiB/sec @ 3 ghz -Average - 3.042 bytes/cycle - 8704.51 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 38.00 cycles/hash -Small key speed test - 2-byte keys - 38.00 cycles/hash -Small key speed test - 3-byte keys - 37.99 cycles/hash -Small key speed test - 4-byte keys - 41.00 cycles/hash -Small key speed test - 5-byte keys - 51.00 cycles/hash -Small key speed test - 6-byte keys - 51.00 cycles/hash -Small key speed test - 7-byte keys - 51.00 cycles/hash -Small key speed test - 8-byte keys - 58.00 cycles/hash -Small key speed test - 9-byte keys - 58.00 cycles/hash -Small key speed test - 10-byte keys - 58.00 cycles/hash -Small key speed test - 11-byte keys - 58.00 cycles/hash -Small key speed test - 12-byte keys - 57.00 cycles/hash -Small key speed test - 13-byte keys - 57.00 cycles/hash -Small key speed test - 14-byte keys - 57.00 cycles/hash -Small key speed test - 15-byte keys - 57.00 cycles/hash -Small key speed test - 16-byte keys - 57.00 cycles/hash -Small key speed test - 17-byte keys - 58.00 cycles/hash -Small key speed test - 18-byte keys - 58.00 cycles/hash -Small key speed test - 19-byte keys - 58.00 cycles/hash -Small key speed test - 20-byte keys - 57.00 cycles/hash -Small key speed test - 21-byte keys - 57.00 cycles/hash -Small key speed test - 22-byte keys - 57.00 cycles/hash -Small key speed test - 23-byte keys - 57.00 cycles/hash -Small key speed test - 24-byte keys - 57.00 cycles/hash -Small key speed test - 25-byte keys - 57.00 cycles/hash -Small key speed test - 26-byte keys - 57.00 cycles/hash -Small key speed test - 27-byte keys - 57.00 cycles/hash -Small key speed test - 28-byte keys - 57.00 cycles/hash -Small key speed test - 29-byte keys - 57.00 cycles/hash -Small key speed test - 30-byte keys - 57.00 cycles/hash -Small key speed test - 31-byte keys - 57.00 cycles/hash -Average 54.290 cycles/hash +Alignment 7 - 4.476 bytes/cycle - 12805.85 MiB/sec @ 3 ghz +Alignment 6 - 4.475 bytes/cycle - 12804.42 MiB/sec @ 3 ghz +Alignment 5 - 4.475 bytes/cycle - 12804.40 MiB/sec @ 3 ghz +Alignment 4 - 4.478 bytes/cycle - 12810.86 MiB/sec @ 3 ghz +Alignment 3 - 4.473 bytes/cycle - 12796.77 MiB/sec @ 3 ghz +Alignment 2 - 4.475 bytes/cycle - 12804.35 MiB/sec @ 3 ghz +Alignment 1 - 4.476 bytes/cycle - 12804.89 MiB/sec @ 3 ghz +Alignment 0 - 4.558 bytes/cycle - 13041.27 MiB/sec @ 3 ghz +Average - 4.486 bytes/cycle - 12834.10 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 39.16 cycles/hash +Small key speed test - 2-byte keys - 39.19 cycles/hash +Small key speed test - 3-byte keys - 39.14 cycles/hash +Small key speed test - 4-byte keys - 43.00 cycles/hash +Small key speed test - 5-byte keys - 43.00 cycles/hash +Small key speed test - 6-byte keys - 43.00 cycles/hash +Small key speed test - 7-byte keys - 43.00 cycles/hash +Small key speed test - 8-byte keys - 48.90 cycles/hash +Small key speed test - 9-byte keys - 48.90 cycles/hash +Small key speed test - 10-byte keys - 48.90 cycles/hash +Small key speed test - 11-byte keys - 48.84 cycles/hash +Small key speed test - 12-byte keys - 48.86 cycles/hash +Small key speed test - 13-byte keys - 48.85 cycles/hash +Small key speed test - 14-byte keys - 48.82 cycles/hash +Small key speed test - 15-byte keys - 48.86 cycles/hash +Small key speed test - 16-byte keys - 48.82 cycles/hash +Small key speed test - 17-byte keys - 48.95 cycles/hash +Small key speed test - 18-byte keys - 48.92 cycles/hash +Small key speed test - 19-byte keys - 48.94 cycles/hash +Small key speed test - 20-byte keys - 48.97 cycles/hash +Small key speed test - 21-byte keys - 49.00 cycles/hash +Small key speed test - 22-byte keys - 49.00 cycles/hash +Small key speed test - 23-byte keys - 49.00 cycles/hash +Small key speed test - 24-byte keys - 49.00 cycles/hash +Small key speed test - 25-byte keys - 49.00 cycles/hash +Small key speed test - 26-byte keys - 49.00 cycles/hash +Small key speed test - 27-byte keys - 49.00 cycles/hash +Small key speed test - 28-byte keys - 49.00 cycles/hash +Small key speed test - 29-byte keys - 49.00 cycles/hash +Small key speed test - 30-byte keys - 49.00 cycles/hash +Small key speed test - 31-byte keys - 49.00 cycles/hash +Average 47.226 cycles/hash [[[ 'Hashmap' Speed Tests (when inlined) ]]] diff --git a/doc/farsh128.txt b/doc/farsh128.txt index ac10bad2..ad85fef8 100644 --- a/doc/farsh128.txt +++ b/doc/farsh128.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest . FAIL !!!!! [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 2.386 bytes/cycle - 6826.64 MiB/sec @ 3 ghz -Alignment 6 - 2.386 bytes/cycle - 6825.92 MiB/sec @ 3 ghz -Alignment 5 - 2.389 bytes/cycle - 6833.75 MiB/sec @ 3 ghz -Alignment 4 - 2.389 bytes/cycle - 6834.88 MiB/sec @ 3 ghz -Alignment 3 - 2.389 bytes/cycle - 6833.90 MiB/sec @ 3 ghz -Alignment 2 - 2.392 bytes/cycle - 6842.83 MiB/sec @ 3 ghz -Alignment 1 - 2.389 bytes/cycle - 6833.89 MiB/sec @ 3 ghz -Alignment 0 - 2.450 bytes/cycle - 7009.30 MiB/sec @ 3 ghz -Average - 2.396 bytes/cycle - 6855.14 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 253.51 cycles/hash -Small key speed test - 2-byte keys - 253.74 cycles/hash -Small key speed test - 3-byte keys - 253.67 cycles/hash -Small key speed test - 4-byte keys - 158.07 cycles/hash -Small key speed test - 5-byte keys - 253.25 cycles/hash -Small key speed test - 6-byte keys - 253.36 cycles/hash -Small key speed test - 7-byte keys - 253.17 cycles/hash -Small key speed test - 8-byte keys - 184.55 cycles/hash -Small key speed test - 9-byte keys - 252.84 cycles/hash -Small key speed test - 10-byte keys - 252.64 cycles/hash -Small key speed test - 11-byte keys - 253.42 cycles/hash -Small key speed test - 12-byte keys - 176.63 cycles/hash -Small key speed test - 13-byte keys - 253.56 cycles/hash -Small key speed test - 14-byte keys - 253.67 cycles/hash -Small key speed test - 15-byte keys - 253.59 cycles/hash -Small key speed test - 16-byte keys - 188.41 cycles/hash -Small key speed test - 17-byte keys - 253.81 cycles/hash -Small key speed test - 18-byte keys - 253.20 cycles/hash -Small key speed test - 19-byte keys - 252.93 cycles/hash -Small key speed test - 20-byte keys - 182.11 cycles/hash -Small key speed test - 21-byte keys - 251.26 cycles/hash -Small key speed test - 22-byte keys - 251.41 cycles/hash -Small key speed test - 23-byte keys - 251.03 cycles/hash -Small key speed test - 24-byte keys - 184.43 cycles/hash -Small key speed test - 25-byte keys - 251.52 cycles/hash -Small key speed test - 26-byte keys - 252.35 cycles/hash -Small key speed test - 27-byte keys - 252.42 cycles/hash -Small key speed test - 28-byte keys - 183.59 cycles/hash -Small key speed test - 29-byte keys - 252.00 cycles/hash -Small key speed test - 30-byte keys - 251.00 cycles/hash -Small key speed test - 31-byte keys - 251.91 cycles/hash -Average 236.227 cycles/hash +Alignment 7 - 2.395 bytes/cycle - 6852.22 MiB/sec @ 3 ghz +Alignment 6 - 2.390 bytes/cycle - 6838.37 MiB/sec @ 3 ghz +Alignment 5 - 2.395 bytes/cycle - 6851.18 MiB/sec @ 3 ghz +Alignment 4 - 2.395 bytes/cycle - 6851.53 MiB/sec @ 3 ghz +Alignment 3 - 2.396 bytes/cycle - 6854.83 MiB/sec @ 3 ghz +Alignment 2 - 2.396 bytes/cycle - 6855.92 MiB/sec @ 3 ghz +Alignment 1 - 2.400 bytes/cycle - 6865.29 MiB/sec @ 3 ghz +Alignment 0 - 2.468 bytes/cycle - 7061.69 MiB/sec @ 3 ghz +Average - 2.404 bytes/cycle - 6878.88 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 250.02 cycles/hash +Small key speed test - 2-byte keys - 250.61 cycles/hash +Small key speed test - 3-byte keys - 250.55 cycles/hash +Small key speed test - 4-byte keys - 152.65 cycles/hash +Small key speed test - 5-byte keys - 250.58 cycles/hash +Small key speed test - 6-byte keys - 249.75 cycles/hash +Small key speed test - 7-byte keys - 250.13 cycles/hash +Small key speed test - 8-byte keys - 171.31 cycles/hash +Small key speed test - 9-byte keys - 250.75 cycles/hash +Small key speed test - 10-byte keys - 250.79 cycles/hash +Small key speed test - 11-byte keys - 250.41 cycles/hash +Small key speed test - 12-byte keys - 175.63 cycles/hash +Small key speed test - 13-byte keys - 251.13 cycles/hash +Small key speed test - 14-byte keys - 251.28 cycles/hash +Small key speed test - 15-byte keys - 251.46 cycles/hash +Small key speed test - 16-byte keys - 182.44 cycles/hash +Small key speed test - 17-byte keys - 251.04 cycles/hash +Small key speed test - 18-byte keys - 250.75 cycles/hash +Small key speed test - 19-byte keys - 250.76 cycles/hash +Small key speed test - 20-byte keys - 176.93 cycles/hash +Small key speed test - 21-byte keys - 251.83 cycles/hash +Small key speed test - 22-byte keys - 251.76 cycles/hash +Small key speed test - 23-byte keys - 251.61 cycles/hash +Small key speed test - 24-byte keys - 178.48 cycles/hash +Small key speed test - 25-byte keys - 248.90 cycles/hash +Small key speed test - 26-byte keys - 249.91 cycles/hash +Small key speed test - 27-byte keys - 250.15 cycles/hash +Small key speed test - 28-byte keys - 181.94 cycles/hash +Small key speed test - 29-byte keys - 249.90 cycles/hash +Small key speed test - 30-byte keys - 250.04 cycles/hash +Small key speed test - 31-byte keys - 250.27 cycles/hash +Average 233.347 cycles/hash [[[ 'Hashmap' Speed Tests ]]] diff --git a/doc/farsh256.txt b/doc/farsh256.txt index c3ee98c3..3eeec31f 100644 --- a/doc/farsh256.txt +++ b/doc/farsh256.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest . FAIL !!!!! [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 1.200 bytes/cycle - 3432.10 MiB/sec @ 3 ghz -Alignment 6 - 1.200 bytes/cycle - 3432.12 MiB/sec @ 3 ghz -Alignment 5 - 1.199 bytes/cycle - 3429.52 MiB/sec @ 3 ghz -Alignment 4 - 1.193 bytes/cycle - 3412.27 MiB/sec @ 3 ghz -Alignment 3 - 1.182 bytes/cycle - 3380.41 MiB/sec @ 3 ghz -Alignment 2 - 1.183 bytes/cycle - 3383.84 MiB/sec @ 3 ghz -Alignment 1 - 1.183 bytes/cycle - 3385.16 MiB/sec @ 3 ghz -Alignment 0 - 1.213 bytes/cycle - 3471.78 MiB/sec @ 3 ghz -Average - 1.194 bytes/cycle - 3415.90 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 506.07 cycles/hash -Small key speed test - 2-byte keys - 496.02 cycles/hash -Small key speed test - 3-byte keys - 498.22 cycles/hash -Small key speed test - 4-byte keys - 240.10 cycles/hash -Small key speed test - 5-byte keys - 497.06 cycles/hash -Small key speed test - 6-byte keys - 497.11 cycles/hash -Small key speed test - 7-byte keys - 490.22 cycles/hash -Small key speed test - 8-byte keys - 292.21 cycles/hash -Small key speed test - 9-byte keys - 563.72 cycles/hash -Small key speed test - 10-byte keys - 562.76 cycles/hash -Small key speed test - 11-byte keys - 498.31 cycles/hash -Small key speed test - 12-byte keys - 279.39 cycles/hash -Small key speed test - 13-byte keys - 541.67 cycles/hash -Small key speed test - 14-byte keys - 495.85 cycles/hash -Small key speed test - 15-byte keys - 497.05 cycles/hash -Small key speed test - 16-byte keys - 306.41 cycles/hash -Small key speed test - 17-byte keys - 503.79 cycles/hash -Small key speed test - 18-byte keys - 500.23 cycles/hash -Small key speed test - 19-byte keys - 526.06 cycles/hash -Small key speed test - 20-byte keys - 290.00 cycles/hash -Small key speed test - 21-byte keys - 493.28 cycles/hash -Small key speed test - 22-byte keys - 504.65 cycles/hash -Small key speed test - 23-byte keys - 502.30 cycles/hash -Small key speed test - 24-byte keys - 298.93 cycles/hash -Small key speed test - 25-byte keys - 494.12 cycles/hash -Small key speed test - 26-byte keys - 502.78 cycles/hash -Small key speed test - 27-byte keys - 502.38 cycles/hash -Small key speed test - 28-byte keys - 300.96 cycles/hash -Small key speed test - 29-byte keys - 504.46 cycles/hash -Small key speed test - 30-byte keys - 503.28 cycles/hash -Small key speed test - 31-byte keys - 505.38 cycles/hash -Average 457.895 cycles/hash +Alignment 7 - 1.207 bytes/cycle - 3453.89 MiB/sec @ 3 ghz +Alignment 6 - 1.208 bytes/cycle - 3456.01 MiB/sec @ 3 ghz +Alignment 5 - 1.206 bytes/cycle - 3451.24 MiB/sec @ 3 ghz +Alignment 4 - 1.208 bytes/cycle - 3455.63 MiB/sec @ 3 ghz +Alignment 3 - 1.208 bytes/cycle - 3457.40 MiB/sec @ 3 ghz +Alignment 2 - 1.208 bytes/cycle - 3455.19 MiB/sec @ 3 ghz +Alignment 1 - 1.210 bytes/cycle - 3460.57 MiB/sec @ 3 ghz +Alignment 0 - 1.240 bytes/cycle - 3549.03 MiB/sec @ 3 ghz +Average - 1.212 bytes/cycle - 3467.37 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 488.07 cycles/hash +Small key speed test - 2-byte keys - 484.00 cycles/hash +Small key speed test - 3-byte keys - 484.00 cycles/hash +Small key speed test - 4-byte keys - 234.68 cycles/hash +Small key speed test - 5-byte keys - 485.00 cycles/hash +Small key speed test - 6-byte keys - 485.00 cycles/hash +Small key speed test - 7-byte keys - 485.18 cycles/hash +Small key speed test - 8-byte keys - 284.76 cycles/hash +Small key speed test - 9-byte keys - 484.90 cycles/hash +Small key speed test - 10-byte keys - 482.58 cycles/hash +Small key speed test - 11-byte keys - 482.78 cycles/hash +Small key speed test - 12-byte keys - 288.02 cycles/hash +Small key speed test - 13-byte keys - 485.53 cycles/hash +Small key speed test - 14-byte keys - 485.53 cycles/hash +Small key speed test - 15-byte keys - 483.95 cycles/hash +Small key speed test - 16-byte keys - 289.23 cycles/hash +Small key speed test - 17-byte keys - 485.62 cycles/hash +Small key speed test - 18-byte keys - 485.28 cycles/hash +Small key speed test - 19-byte keys - 485.21 cycles/hash +Small key speed test - 20-byte keys - 283.09 cycles/hash +Small key speed test - 21-byte keys - 486.77 cycles/hash +Small key speed test - 22-byte keys - 486.62 cycles/hash +Small key speed test - 23-byte keys - 485.95 cycles/hash +Small key speed test - 24-byte keys - 286.20 cycles/hash +Small key speed test - 25-byte keys - 483.07 cycles/hash +Small key speed test - 26-byte keys - 486.12 cycles/hash +Small key speed test - 27-byte keys - 486.36 cycles/hash +Small key speed test - 28-byte keys - 292.59 cycles/hash +Small key speed test - 29-byte keys - 485.86 cycles/hash +Small key speed test - 30-byte keys - 485.77 cycles/hash +Small key speed test - 31-byte keys - 534.68 cycles/hash +Average 440.400 cycles/hash [[[ 'Hashmap' Speed Tests ]]] diff --git a/doc/farsh32.txt b/doc/farsh32.txt index 02bae5d2..bc34f644 100644 --- a/doc/farsh32.txt +++ b/doc/farsh32.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest . FAIL !!!!! [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 4.584 bytes/cycle - 13116.27 MiB/sec @ 3 ghz -Alignment 6 - 4.585 bytes/cycle - 13116.72 MiB/sec @ 3 ghz -Alignment 5 - 4.584 bytes/cycle - 13115.55 MiB/sec @ 3 ghz -Alignment 4 - 4.584 bytes/cycle - 13115.57 MiB/sec @ 3 ghz -Alignment 3 - 4.506 bytes/cycle - 12892.57 MiB/sec @ 3 ghz -Alignment 2 - 4.583 bytes/cycle - 13112.56 MiB/sec @ 3 ghz -Alignment 1 - 4.524 bytes/cycle - 12944.10 MiB/sec @ 3 ghz -Alignment 0 - 4.755 bytes/cycle - 13603.21 MiB/sec @ 3 ghz -Average - 4.588 bytes/cycle - 13127.07 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 76.10 cycles/hash -Small key speed test - 2-byte keys - 76.00 cycles/hash -Small key speed test - 3-byte keys - 77.98 cycles/hash -Small key speed test - 4-byte keys - 54.24 cycles/hash -Small key speed test - 5-byte keys - 75.00 cycles/hash -Small key speed test - 6-byte keys - 75.00 cycles/hash -Small key speed test - 7-byte keys - 75.00 cycles/hash -Small key speed test - 8-byte keys - 52.00 cycles/hash -Small key speed test - 9-byte keys - 75.00 cycles/hash -Small key speed test - 10-byte keys - 76.00 cycles/hash -Small key speed test - 11-byte keys - 76.00 cycles/hash -Small key speed test - 12-byte keys - 54.00 cycles/hash -Small key speed test - 13-byte keys - 75.33 cycles/hash -Small key speed test - 14-byte keys - 76.72 cycles/hash -Small key speed test - 15-byte keys - 75.00 cycles/hash -Small key speed test - 16-byte keys - 57.38 cycles/hash -Small key speed test - 17-byte keys - 75.00 cycles/hash -Small key speed test - 18-byte keys - 77.38 cycles/hash -Small key speed test - 19-byte keys - 76.00 cycles/hash -Small key speed test - 20-byte keys - 58.11 cycles/hash -Small key speed test - 21-byte keys - 75.83 cycles/hash -Small key speed test - 22-byte keys - 75.46 cycles/hash -Small key speed test - 23-byte keys - 77.11 cycles/hash -Small key speed test - 24-byte keys - 59.00 cycles/hash -Small key speed test - 25-byte keys - 75.98 cycles/hash -Small key speed test - 26-byte keys - 77.00 cycles/hash -Small key speed test - 27-byte keys - 77.00 cycles/hash -Small key speed test - 28-byte keys - 60.00 cycles/hash -Small key speed test - 29-byte keys - 76.30 cycles/hash -Small key speed test - 30-byte keys - 76.00 cycles/hash -Small key speed test - 31-byte keys - 76.00 cycles/hash -Average 71.578 cycles/hash +Alignment 7 - 9.402 bytes/cycle - 26898.92 MiB/sec @ 3 ghz +Alignment 6 - 9.391 bytes/cycle - 26867.86 MiB/sec @ 3 ghz +Alignment 5 - 9.400 bytes/cycle - 26893.31 MiB/sec @ 3 ghz +Alignment 4 - 9.394 bytes/cycle - 26877.70 MiB/sec @ 3 ghz +Alignment 3 - 9.428 bytes/cycle - 26974.40 MiB/sec @ 3 ghz +Alignment 2 - 9.427 bytes/cycle - 26970.26 MiB/sec @ 3 ghz +Alignment 1 - 9.428 bytes/cycle - 26974.15 MiB/sec @ 3 ghz +Alignment 0 - 9.734 bytes/cycle - 27849.26 MiB/sec @ 3 ghz +Average - 9.451 bytes/cycle - 27038.23 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 71.00 cycles/hash +Small key speed test - 2-byte keys - 71.00 cycles/hash +Small key speed test - 3-byte keys - 71.06 cycles/hash +Small key speed test - 4-byte keys - 53.21 cycles/hash +Small key speed test - 5-byte keys - 71.27 cycles/hash +Small key speed test - 6-byte keys - 71.29 cycles/hash +Small key speed test - 7-byte keys - 71.30 cycles/hash +Small key speed test - 8-byte keys - 47.11 cycles/hash +Small key speed test - 9-byte keys - 72.25 cycles/hash +Small key speed test - 10-byte keys - 72.00 cycles/hash +Small key speed test - 11-byte keys - 72.00 cycles/hash +Small key speed test - 12-byte keys - 53.00 cycles/hash +Small key speed test - 13-byte keys - 72.00 cycles/hash +Small key speed test - 14-byte keys - 72.00 cycles/hash +Small key speed test - 15-byte keys - 72.00 cycles/hash +Small key speed test - 16-byte keys - 48.16 cycles/hash +Small key speed test - 17-byte keys - 71.00 cycles/hash +Small key speed test - 18-byte keys - 71.46 cycles/hash +Small key speed test - 19-byte keys - 71.00 cycles/hash +Small key speed test - 20-byte keys - 54.00 cycles/hash +Small key speed test - 21-byte keys - 71.50 cycles/hash +Small key speed test - 22-byte keys - 71.00 cycles/hash +Small key speed test - 23-byte keys - 71.45 cycles/hash +Small key speed test - 24-byte keys - 50.00 cycles/hash +Small key speed test - 25-byte keys - 71.00 cycles/hash +Small key speed test - 26-byte keys - 71.23 cycles/hash +Small key speed test - 27-byte keys - 71.32 cycles/hash +Small key speed test - 28-byte keys - 54.00 cycles/hash +Small key speed test - 29-byte keys - 71.15 cycles/hash +Small key speed test - 30-byte keys - 71.29 cycles/hash +Small key speed test - 31-byte keys - 71.23 cycles/hash +Average 66.879 cycles/hash [[[ 'Hashmap' Speed Tests ]]] diff --git a/doc/farsh64.txt b/doc/farsh64.txt index 6b1b6c74..240b081c 100644 --- a/doc/farsh64.txt +++ b/doc/farsh64.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest . FAIL !!!!! [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 2.273 bytes/cycle - 6502.76 MiB/sec @ 3 ghz -Alignment 6 - 2.255 bytes/cycle - 6452.66 MiB/sec @ 3 ghz -Alignment 5 - 2.274 bytes/cycle - 6505.51 MiB/sec @ 3 ghz -Alignment 4 - 2.293 bytes/cycle - 6561.19 MiB/sec @ 3 ghz -Alignment 3 - 2.263 bytes/cycle - 6473.79 MiB/sec @ 3 ghz -Alignment 2 - 2.293 bytes/cycle - 6561.67 MiB/sec @ 3 ghz -Alignment 1 - 2.294 bytes/cycle - 6561.89 MiB/sec @ 3 ghz -Alignment 0 - 2.422 bytes/cycle - 6929.16 MiB/sec @ 3 ghz -Average - 2.296 bytes/cycle - 6568.58 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 134.85 cycles/hash -Small key speed test - 2-byte keys - 136.89 cycles/hash -Small key speed test - 3-byte keys - 135.56 cycles/hash -Small key speed test - 4-byte keys - 84.28 cycles/hash -Small key speed test - 5-byte keys - 134.87 cycles/hash -Small key speed test - 6-byte keys - 134.30 cycles/hash -Small key speed test - 7-byte keys - 133.00 cycles/hash -Small key speed test - 8-byte keys - 87.00 cycles/hash -Small key speed test - 9-byte keys - 132.00 cycles/hash -Small key speed test - 10-byte keys - 134.69 cycles/hash -Small key speed test - 11-byte keys - 134.00 cycles/hash -Small key speed test - 12-byte keys - 90.79 cycles/hash -Small key speed test - 13-byte keys - 133.22 cycles/hash -Small key speed test - 14-byte keys - 133.52 cycles/hash -Small key speed test - 15-byte keys - 134.31 cycles/hash -Small key speed test - 16-byte keys - 95.80 cycles/hash -Small key speed test - 17-byte keys - 135.25 cycles/hash -Small key speed test - 18-byte keys - 134.00 cycles/hash -Small key speed test - 19-byte keys - 134.89 cycles/hash -Small key speed test - 20-byte keys - 97.94 cycles/hash -Small key speed test - 21-byte keys - 132.77 cycles/hash -Small key speed test - 22-byte keys - 132.72 cycles/hash -Small key speed test - 23-byte keys - 132.68 cycles/hash -Small key speed test - 24-byte keys - 99.97 cycles/hash -Small key speed test - 25-byte keys - 134.17 cycles/hash -Small key speed test - 26-byte keys - 135.00 cycles/hash -Small key speed test - 27-byte keys - 135.00 cycles/hash -Small key speed test - 28-byte keys - 103.55 cycles/hash -Small key speed test - 29-byte keys - 133.00 cycles/hash -Small key speed test - 30-byte keys - 133.00 cycles/hash -Small key speed test - 31-byte keys - 133.00 cycles/hash -Average 125.033 cycles/hash +Alignment 7 - 4.799 bytes/cycle - 13730.11 MiB/sec @ 3 ghz +Alignment 6 - 4.816 bytes/cycle - 13779.55 MiB/sec @ 3 ghz +Alignment 5 - 4.819 bytes/cycle - 13787.73 MiB/sec @ 3 ghz +Alignment 4 - 4.819 bytes/cycle - 13786.81 MiB/sec @ 3 ghz +Alignment 3 - 4.820 bytes/cycle - 13791.06 MiB/sec @ 3 ghz +Alignment 2 - 4.816 bytes/cycle - 13777.29 MiB/sec @ 3 ghz +Alignment 1 - 4.819 bytes/cycle - 13785.86 MiB/sec @ 3 ghz +Alignment 0 - 4.962 bytes/cycle - 14196.19 MiB/sec @ 3 ghz +Average - 4.834 bytes/cycle - 13829.32 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 126.60 cycles/hash +Small key speed test - 2-byte keys - 126.59 cycles/hash +Small key speed test - 3-byte keys - 126.63 cycles/hash +Small key speed test - 4-byte keys - 57.31 cycles/hash +Small key speed test - 5-byte keys - 126.69 cycles/hash +Small key speed test - 6-byte keys - 126.60 cycles/hash +Small key speed test - 7-byte keys - 126.66 cycles/hash +Small key speed test - 8-byte keys - 66.96 cycles/hash +Small key speed test - 9-byte keys - 126.85 cycles/hash +Small key speed test - 10-byte keys - 126.93 cycles/hash +Small key speed test - 11-byte keys - 126.97 cycles/hash +Small key speed test - 12-byte keys - 66.98 cycles/hash +Small key speed test - 13-byte keys - 126.21 cycles/hash +Small key speed test - 14-byte keys - 125.29 cycles/hash +Small key speed test - 15-byte keys - 125.17 cycles/hash +Small key speed test - 16-byte keys - 70.30 cycles/hash +Small key speed test - 17-byte keys - 124.00 cycles/hash +Small key speed test - 18-byte keys - 124.85 cycles/hash +Small key speed test - 19-byte keys - 124.84 cycles/hash +Small key speed test - 20-byte keys - 67.71 cycles/hash +Small key speed test - 21-byte keys - 124.44 cycles/hash +Small key speed test - 22-byte keys - 124.43 cycles/hash +Small key speed test - 23-byte keys - 124.41 cycles/hash +Small key speed test - 24-byte keys - 69.66 cycles/hash +Small key speed test - 25-byte keys - 124.48 cycles/hash +Small key speed test - 26-byte keys - 125.41 cycles/hash +Small key speed test - 27-byte keys - 125.00 cycles/hash +Small key speed test - 28-byte keys - 71.03 cycles/hash +Small key speed test - 29-byte keys - 125.71 cycles/hash +Small key speed test - 30-byte keys - 125.84 cycles/hash +Small key speed test - 31-byte keys - 125.82 cycles/hash +Average 112.463 cycles/hash [[[ 'Hashmap' Speed Tests ]]] diff --git a/doc/fasthash32.txt b/doc/fasthash32.txt index b5654c29..4b28e807 100644 --- a/doc/fasthash32.txt +++ b/doc/fasthash32.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 1.652 bytes/cycle - 4727.51 MiB/sec @ 3 ghz -Alignment 6 - 1.652 bytes/cycle - 4727.49 MiB/sec @ 3 ghz -Alignment 5 - 1.652 bytes/cycle - 4727.55 MiB/sec @ 3 ghz -Alignment 4 - 1.652 bytes/cycle - 4727.54 MiB/sec @ 3 ghz -Alignment 3 - 1.652 bytes/cycle - 4727.49 MiB/sec @ 3 ghz -Alignment 2 - 1.652 bytes/cycle - 4727.51 MiB/sec @ 3 ghz -Alignment 1 - 1.652 bytes/cycle - 4727.49 MiB/sec @ 3 ghz -Alignment 0 - 1.679 bytes/cycle - 4802.65 MiB/sec @ 3 ghz -Average - 1.656 bytes/cycle - 4736.91 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 33.00 cycles/hash +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 - 37.00 cycles/hash -Small key speed test - 4-byte keys - 38.00 cycles/hash -Small key speed test - 5-byte keys - 37.00 cycles/hash -Small key speed test - 6-byte keys - 38.00 cycles/hash -Small key speed test - 7-byte keys - 37.76 cycles/hash -Small key speed test - 8-byte keys - 45.00 cycles/hash -Small key speed test - 9-byte keys - 50.64 cycles/hash -Small key speed test - 10-byte keys - 50.00 cycles/hash -Small key speed test - 11-byte keys - 50.78 cycles/hash -Small key speed test - 12-byte keys - 51.00 cycles/hash -Small key speed test - 13-byte keys - 50.86 cycles/hash -Small key speed test - 14-byte keys - 50.89 cycles/hash -Small key speed test - 15-byte keys - 50.00 cycles/hash -Small key speed test - 16-byte keys - 49.46 cycles/hash -Small key speed test - 17-byte keys - 55.00 cycles/hash -Small key speed test - 18-byte keys - 55.00 cycles/hash -Small key speed test - 19-byte keys - 55.00 cycles/hash -Small key speed test - 20-byte keys - 55.00 cycles/hash -Small key speed test - 21-byte keys - 55.00 cycles/hash -Small key speed test - 22-byte keys - 55.00 cycles/hash -Small key speed test - 23-byte keys - 55.52 cycles/hash -Small key speed test - 24-byte keys - 55.00 cycles/hash -Small key speed test - 25-byte keys - 60.00 cycles/hash -Small key speed test - 26-byte keys - 60.00 cycles/hash -Small key speed test - 27-byte keys - 60.00 cycles/hash -Small key speed test - 28-byte keys - 60.00 cycles/hash -Small key speed test - 29-byte keys - 60.00 cycles/hash -Small key speed test - 30-byte keys - 60.00 cycles/hash -Small key speed test - 31-byte keys - 60.00 cycles/hash -Average 50.481 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) ]]] diff --git a/doc/fasthash64.txt b/doc/fasthash64.txt index 6884f617..1cebbb80 100644 --- a/doc/fasthash64.txt +++ b/doc/fasthash64.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 1.653 bytes/cycle - 4727.92 MiB/sec @ 3 ghz -Alignment 6 - 1.653 bytes/cycle - 4728.05 MiB/sec @ 3 ghz -Alignment 5 - 1.653 bytes/cycle - 4728.04 MiB/sec @ 3 ghz -Alignment 4 - 1.653 bytes/cycle - 4728.07 MiB/sec @ 3 ghz -Alignment 3 - 1.653 bytes/cycle - 4728.00 MiB/sec @ 3 ghz -Alignment 2 - 1.653 bytes/cycle - 4727.97 MiB/sec @ 3 ghz -Alignment 1 - 1.653 bytes/cycle - 4727.87 MiB/sec @ 3 ghz -Alignment 0 - 1.679 bytes/cycle - 4803.98 MiB/sec @ 3 ghz -Average - 1.656 bytes/cycle - 4737.49 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 31.00 cycles/hash -Small key speed test - 2-byte keys - 32.00 cycles/hash +Alignment 7 - 2.188 bytes/cycle - 6259.21 MiB/sec @ 3 ghz +Alignment 6 - 2.190 bytes/cycle - 6264.25 MiB/sec @ 3 ghz +Alignment 5 - 2.193 bytes/cycle - 6275.10 MiB/sec @ 3 ghz +Alignment 4 - 2.188 bytes/cycle - 6259.30 MiB/sec @ 3 ghz +Alignment 3 - 1.822 bytes/cycle - 5213.06 MiB/sec @ 3 ghz +Alignment 2 - 1.777 bytes/cycle - 5083.25 MiB/sec @ 3 ghz +Alignment 1 - 1.784 bytes/cycle - 5104.81 MiB/sec @ 3 ghz +Alignment 0 - 2.129 bytes/cycle - 6092.35 MiB/sec @ 3 ghz +Average - 2.034 bytes/cycle - 5818.92 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 31.98 cycles/hash +Small key speed test - 2-byte keys - 34.00 cycles/hash Small key speed test - 3-byte keys - 34.00 cycles/hash -Small key speed test - 4-byte keys - 35.00 cycles/hash -Small key speed test - 5-byte keys - 35.00 cycles/hash -Small key speed test - 6-byte keys - 35.00 cycles/hash -Small key speed test - 7-byte keys - 35.00 cycles/hash -Small key speed test - 8-byte keys - 42.00 cycles/hash -Small key speed test - 9-byte keys - 48.00 cycles/hash -Small key speed test - 10-byte keys - 48.00 cycles/hash -Small key speed test - 11-byte keys - 48.00 cycles/hash -Small key speed test - 12-byte keys - 48.00 cycles/hash -Small key speed test - 13-byte keys - 48.00 cycles/hash -Small key speed test - 14-byte keys - 48.00 cycles/hash -Small key speed test - 15-byte keys - 48.00 cycles/hash -Small key speed test - 16-byte keys - 47.00 cycles/hash -Small key speed test - 17-byte keys - 52.18 cycles/hash -Small key speed test - 18-byte keys - 52.62 cycles/hash -Small key speed test - 19-byte keys - 52.66 cycles/hash -Small key speed test - 20-byte keys - 52.00 cycles/hash -Small key speed test - 21-byte keys - 52.34 cycles/hash -Small key speed test - 22-byte keys - 52.88 cycles/hash -Small key speed test - 23-byte keys - 52.85 cycles/hash -Small key speed test - 24-byte keys - 52.00 cycles/hash -Small key speed test - 25-byte keys - 57.00 cycles/hash -Small key speed test - 26-byte keys - 57.00 cycles/hash -Small key speed test - 27-byte keys - 57.00 cycles/hash -Small key speed test - 28-byte keys - 57.00 cycles/hash -Small key speed test - 29-byte keys - 57.69 cycles/hash -Small key speed test - 30-byte keys - 57.87 cycles/hash -Small key speed test - 31-byte keys - 57.00 cycles/hash -Average 47.809 cycles/hash +Small key speed test - 4-byte keys - 36.00 cycles/hash +Small key speed test - 5-byte keys - 36.66 cycles/hash +Small key speed test - 6-byte keys - 37.00 cycles/hash +Small key speed test - 7-byte keys - 38.00 cycles/hash +Small key speed test - 8-byte keys - 30.00 cycles/hash +Small key speed test - 9-byte keys - 35.56 cycles/hash +Small key speed test - 10-byte keys - 36.00 cycles/hash +Small key speed test - 11-byte keys - 36.12 cycles/hash +Small key speed test - 12-byte keys - 37.00 cycles/hash +Small key speed test - 13-byte keys - 38.00 cycles/hash +Small key speed test - 14-byte keys - 39.00 cycles/hash +Small key speed test - 15-byte keys - 39.00 cycles/hash +Small key speed test - 16-byte keys - 34.00 cycles/hash +Small key speed test - 17-byte keys - 39.00 cycles/hash +Small key speed test - 18-byte keys - 39.00 cycles/hash +Small key speed test - 19-byte keys - 39.00 cycles/hash +Small key speed test - 20-byte keys - 39.69 cycles/hash +Small key speed test - 21-byte keys - 40.55 cycles/hash +Small key speed test - 22-byte keys - 42.00 cycles/hash +Small key speed test - 23-byte keys - 42.88 cycles/hash +Small key speed test - 24-byte keys - 38.00 cycles/hash +Small key speed test - 25-byte keys - 42.82 cycles/hash +Small key speed test - 26-byte keys - 42.98 cycles/hash +Small key speed test - 27-byte keys - 43.00 cycles/hash +Small key speed test - 28-byte keys - 43.20 cycles/hash +Small key speed test - 29-byte keys - 44.45 cycles/hash +Small key speed test - 30-byte keys - 45.31 cycles/hash +Small key speed test - 31-byte keys - 45.52 cycles/hash +Average 38.701 cycles/hash [[[ 'Hashmap' Speed Tests (when inlined) ]]] diff --git a/doc/fibonacci.txt b/doc/fibonacci.txt index 5e28aace..7df9118a 100644 --- a/doc/fibonacci.txt +++ b/doc/fibonacci.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest . FAIL !!!!! [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 3.921 bytes/cycle - 11219.22 MiB/sec @ 3 ghz -Alignment 6 - 3.922 bytes/cycle - 11222.07 MiB/sec @ 3 ghz -Alignment 5 - 3.923 bytes/cycle - 11223.18 MiB/sec @ 3 ghz -Alignment 4 - 3.922 bytes/cycle - 11220.43 MiB/sec @ 3 ghz -Alignment 3 - 3.921 bytes/cycle - 11219.12 MiB/sec @ 3 ghz -Alignment 2 - 3.922 bytes/cycle - 11222.11 MiB/sec @ 3 ghz -Alignment 1 - 3.922 bytes/cycle - 11222.09 MiB/sec @ 3 ghz -Alignment 0 - 4.268 bytes/cycle - 12210.41 MiB/sec @ 3 ghz -Average - 3.965 bytes/cycle - 11344.83 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 14.00 cycles/hash -Small key speed test - 2-byte keys - 15.00 cycles/hash -Small key speed test - 3-byte keys - 17.00 cycles/hash -Small key speed test - 4-byte keys - 18.00 cycles/hash -Small key speed test - 5-byte keys - 19.00 cycles/hash -Small key speed test - 6-byte keys - 20.00 cycles/hash -Small key speed test - 7-byte keys - 22.13 cycles/hash -Small key speed test - 8-byte keys - 26.00 cycles/hash -Small key speed test - 9-byte keys - 25.00 cycles/hash -Small key speed test - 10-byte keys - 26.00 cycles/hash -Small key speed test - 11-byte keys - 27.00 cycles/hash -Small key speed test - 12-byte keys - 29.00 cycles/hash -Small key speed test - 13-byte keys - 30.00 cycles/hash -Small key speed test - 14-byte keys - 31.00 cycles/hash -Small key speed test - 15-byte keys - 33.74 cycles/hash -Small key speed test - 16-byte keys - 27.00 cycles/hash -Small key speed test - 17-byte keys - 26.00 cycles/hash -Small key speed test - 18-byte keys - 27.00 cycles/hash -Small key speed test - 19-byte keys - 29.00 cycles/hash -Small key speed test - 20-byte keys - 30.00 cycles/hash -Small key speed test - 21-byte keys - 31.00 cycles/hash -Small key speed test - 22-byte keys - 33.24 cycles/hash -Small key speed test - 23-byte keys - 34.14 cycles/hash -Small key speed test - 24-byte keys - 28.00 cycles/hash -Small key speed test - 25-byte keys - 27.00 cycles/hash -Small key speed test - 26-byte keys - 29.00 cycles/hash -Small key speed test - 27-byte keys - 30.00 cycles/hash -Small key speed test - 28-byte keys - 31.00 cycles/hash -Small key speed test - 29-byte keys - 33.00 cycles/hash -Small key speed test - 30-byte keys - 34.00 cycles/hash -Small key speed test - 31-byte keys - 34.96 cycles/hash -Average 27.007 cycles/hash +Alignment 7 - 5.892 bytes/cycle - 16857.51 MiB/sec @ 3 ghz +Alignment 6 - 5.908 bytes/cycle - 16902.60 MiB/sec @ 3 ghz +Alignment 5 - 5.912 bytes/cycle - 16913.41 MiB/sec @ 3 ghz +Alignment 4 - 5.903 bytes/cycle - 16889.79 MiB/sec @ 3 ghz +Alignment 3 - 5.911 bytes/cycle - 16912.23 MiB/sec @ 3 ghz +Alignment 2 - 5.912 bytes/cycle - 16914.28 MiB/sec @ 3 ghz +Alignment 1 - 5.903 bytes/cycle - 16888.23 MiB/sec @ 3 ghz +Alignment 0 - 5.854 bytes/cycle - 16748.55 MiB/sec @ 3 ghz +Average - 5.899 bytes/cycle - 16878.32 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 17.00 cycles/hash +Small key speed test - 2-byte keys - 18.97 cycles/hash +Small key speed test - 3-byte keys - 20.16 cycles/hash +Small key speed test - 4-byte keys - 21.86 cycles/hash +Small key speed test - 5-byte keys - 22.55 cycles/hash +Small key speed test - 6-byte keys - 24.00 cycles/hash +Small key speed test - 7-byte keys - 26.00 cycles/hash +Small key speed test - 8-byte keys - 17.00 cycles/hash +Small key speed test - 9-byte keys - 19.00 cycles/hash +Small key speed test - 10-byte keys - 20.00 cycles/hash +Small key speed test - 11-byte keys - 21.92 cycles/hash +Small key speed test - 12-byte keys - 23.00 cycles/hash +Small key speed test - 13-byte keys - 25.00 cycles/hash +Small key speed test - 14-byte keys - 26.00 cycles/hash +Small key speed test - 15-byte keys - 26.24 cycles/hash +Small key speed test - 16-byte keys - 18.00 cycles/hash +Small key speed test - 17-byte keys - 20.00 cycles/hash +Small key speed test - 18-byte keys - 21.00 cycles/hash +Small key speed test - 19-byte keys - 22.74 cycles/hash +Small key speed test - 20-byte keys - 24.53 cycles/hash +Small key speed test - 21-byte keys - 25.16 cycles/hash +Small key speed test - 22-byte keys - 26.00 cycles/hash +Small key speed test - 23-byte keys - 28.00 cycles/hash +Small key speed test - 24-byte keys - 20.20 cycles/hash +Small key speed test - 25-byte keys - 21.00 cycles/hash +Small key speed test - 26-byte keys - 23.00 cycles/hash +Small key speed test - 27-byte keys - 24.00 cycles/hash +Small key speed test - 28-byte keys - 25.00 cycles/hash +Small key speed test - 29-byte keys - 26.00 cycles/hash +Small key speed test - 30-byte keys - 27.83 cycles/hash +Small key speed test - 31-byte keys - 29.99 cycles/hash +Average 22.940 cycles/hash [[[ 'Hashmap' Speed Tests (when inlined) ]]] diff --git a/doc/fletcher2.txt b/doc/fletcher2.txt index 02847411..98b28b2c 100644 --- a/doc/fletcher2.txt +++ b/doc/fletcher2.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 4.144 bytes/cycle - 11856.41 MiB/sec @ 3 ghz -Alignment 6 - 4.145 bytes/cycle - 11858.68 MiB/sec @ 3 ghz -Alignment 5 - 4.145 bytes/cycle - 11858.60 MiB/sec @ 3 ghz -Alignment 4 - 4.145 bytes/cycle - 11858.96 MiB/sec @ 3 ghz -Alignment 3 - 4.144 bytes/cycle - 11855.82 MiB/sec @ 3 ghz -Alignment 2 - 4.145 bytes/cycle - 11859.18 MiB/sec @ 3 ghz -Alignment 1 - 4.145 bytes/cycle - 11859.11 MiB/sec @ 3 ghz -Alignment 0 - 4.532 bytes/cycle - 12966.96 MiB/sec @ 3 ghz -Average - 4.193 bytes/cycle - 11996.71 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 13.00 cycles/hash -Small key speed test - 2-byte keys - 14.45 cycles/hash -Small key speed test - 3-byte keys - 15.66 cycles/hash -Small key speed test - 4-byte keys - 18.00 cycles/hash -Small key speed test - 5-byte keys - 20.57 cycles/hash -Small key speed test - 6-byte keys - 23.00 cycles/hash -Small key speed test - 7-byte keys - 26.00 cycles/hash -Small key speed test - 8-byte keys - 24.00 cycles/hash -Small key speed test - 9-byte keys - 24.33 cycles/hash -Small key speed test - 10-byte keys - 25.00 cycles/hash -Small key speed test - 11-byte keys - 26.97 cycles/hash -Small key speed test - 12-byte keys - 28.00 cycles/hash -Small key speed test - 13-byte keys - 29.00 cycles/hash -Small key speed test - 14-byte keys - 30.00 cycles/hash -Small key speed test - 15-byte keys - 30.81 cycles/hash -Small key speed test - 16-byte keys - 25.83 cycles/hash -Small key speed test - 17-byte keys - 25.77 cycles/hash -Small key speed test - 18-byte keys - 26.93 cycles/hash -Small key speed test - 19-byte keys - 28.00 cycles/hash -Small key speed test - 20-byte keys - 29.20 cycles/hash -Small key speed test - 21-byte keys - 30.00 cycles/hash -Small key speed test - 22-byte keys - 31.00 cycles/hash -Small key speed test - 23-byte keys - 32.00 cycles/hash -Small key speed test - 24-byte keys - 26.00 cycles/hash -Small key speed test - 25-byte keys - 27.00 cycles/hash -Small key speed test - 26-byte keys - 27.94 cycles/hash -Small key speed test - 27-byte keys - 29.00 cycles/hash -Small key speed test - 28-byte keys - 30.00 cycles/hash -Small key speed test - 29-byte keys - 31.00 cycles/hash -Small key speed test - 30-byte keys - 32.13 cycles/hash -Small key speed test - 31-byte keys - 34.00 cycles/hash -Average 26.277 cycles/hash +Alignment 7 - 5.441 bytes/cycle - 15566.77 MiB/sec @ 3 ghz +Alignment 6 - 5.449 bytes/cycle - 15591.09 MiB/sec @ 3 ghz +Alignment 5 - 5.446 bytes/cycle - 15579.88 MiB/sec @ 3 ghz +Alignment 4 - 5.449 bytes/cycle - 15588.56 MiB/sec @ 3 ghz +Alignment 3 - 5.446 bytes/cycle - 15582.16 MiB/sec @ 3 ghz +Alignment 2 - 5.448 bytes/cycle - 15587.24 MiB/sec @ 3 ghz +Alignment 1 - 5.449 bytes/cycle - 15591.13 MiB/sec @ 3 ghz +Alignment 0 - 5.360 bytes/cycle - 15334.07 MiB/sec @ 3 ghz +Average - 5.436 bytes/cycle - 15552.61 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 15.00 cycles/hash +Small key speed test - 2-byte keys - 16.68 cycles/hash +Small key speed test - 3-byte keys - 18.00 cycles/hash +Small key speed test - 4-byte keys - 19.00 cycles/hash +Small key speed test - 5-byte keys - 21.00 cycles/hash +Small key speed test - 6-byte keys - 22.00 cycles/hash +Small key speed test - 7-byte keys - 23.28 cycles/hash +Small key speed test - 8-byte keys - 15.00 cycles/hash +Small key speed test - 9-byte keys - 16.00 cycles/hash +Small key speed test - 10-byte keys - 18.00 cycles/hash +Small key speed test - 11-byte keys - 19.00 cycles/hash +Small key speed test - 12-byte keys - 20.29 cycles/hash +Small key speed test - 13-byte keys - 22.00 cycles/hash +Small key speed test - 14-byte keys - 23.00 cycles/hash +Small key speed test - 15-byte keys - 24.27 cycles/hash +Small key speed test - 16-byte keys - 16.00 cycles/hash +Small key speed test - 17-byte keys - 17.34 cycles/hash +Small key speed test - 18-byte keys - 18.99 cycles/hash +Small key speed test - 19-byte keys - 20.51 cycles/hash +Small key speed test - 20-byte keys - 21.76 cycles/hash +Small key speed test - 21-byte keys - 23.00 cycles/hash +Small key speed test - 22-byte keys - 24.50 cycles/hash +Small key speed test - 23-byte keys - 25.95 cycles/hash +Small key speed test - 24-byte keys - 17.73 cycles/hash +Small key speed test - 25-byte keys - 18.91 cycles/hash +Small key speed test - 26-byte keys - 20.00 cycles/hash +Small key speed test - 27-byte keys - 21.99 cycles/hash +Small key speed test - 28-byte keys - 23.00 cycles/hash +Small key speed test - 29-byte keys - 24.00 cycles/hash +Small key speed test - 30-byte keys - 25.70 cycles/hash +Small key speed test - 31-byte keys - 26.99 cycles/hash +Average 20.609 cycles/hash [[[ 'Hashmap' Speed Tests (when inlined) ]]] diff --git a/doc/fletcher4.txt b/doc/fletcher4.txt index aac30794..eeac0736 100644 --- a/doc/fletcher4.txt +++ b/doc/fletcher4.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 4.140 bytes/cycle - 11845.31 MiB/sec @ 3 ghz -Alignment 6 - 4.141 bytes/cycle - 11847.56 MiB/sec @ 3 ghz -Alignment 5 - 4.141 bytes/cycle - 11847.55 MiB/sec @ 3 ghz -Alignment 4 - 4.142 bytes/cycle - 11849.08 MiB/sec @ 3 ghz -Alignment 3 - 4.140 bytes/cycle - 11845.61 MiB/sec @ 3 ghz -Alignment 2 - 4.141 bytes/cycle - 11848.01 MiB/sec @ 3 ghz -Alignment 1 - 4.141 bytes/cycle - 11848.19 MiB/sec @ 3 ghz -Alignment 0 - 4.518 bytes/cycle - 12925.99 MiB/sec @ 3 ghz -Average - 4.188 bytes/cycle - 11982.16 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 13.00 cycles/hash -Small key speed test - 2-byte keys - 14.46 cycles/hash -Small key speed test - 3-byte keys - 15.66 cycles/hash -Small key speed test - 4-byte keys - 18.00 cycles/hash -Small key speed test - 5-byte keys - 20.57 cycles/hash -Small key speed test - 6-byte keys - 23.00 cycles/hash -Small key speed test - 7-byte keys - 26.00 cycles/hash -Small key speed test - 8-byte keys - 24.00 cycles/hash -Small key speed test - 9-byte keys - 24.21 cycles/hash -Small key speed test - 10-byte keys - 25.43 cycles/hash -Small key speed test - 11-byte keys - 26.95 cycles/hash -Small key speed test - 12-byte keys - 28.00 cycles/hash -Small key speed test - 13-byte keys - 29.00 cycles/hash -Small key speed test - 14-byte keys - 30.00 cycles/hash -Small key speed test - 15-byte keys - 30.89 cycles/hash -Small key speed test - 16-byte keys - 25.86 cycles/hash -Small key speed test - 17-byte keys - 25.78 cycles/hash -Small key speed test - 18-byte keys - 26.93 cycles/hash -Small key speed test - 19-byte keys - 28.00 cycles/hash -Small key speed test - 20-byte keys - 29.22 cycles/hash -Small key speed test - 21-byte keys - 30.00 cycles/hash -Small key speed test - 22-byte keys - 31.00 cycles/hash -Small key speed test - 23-byte keys - 32.00 cycles/hash -Small key speed test - 24-byte keys - 26.00 cycles/hash -Small key speed test - 25-byte keys - 27.00 cycles/hash -Small key speed test - 26-byte keys - 27.95 cycles/hash -Small key speed test - 27-byte keys - 29.00 cycles/hash -Small key speed test - 28-byte keys - 30.00 cycles/hash -Small key speed test - 29-byte keys - 31.00 cycles/hash -Small key speed test - 30-byte keys - 32.00 cycles/hash -Small key speed test - 31-byte keys - 34.00 cycles/hash -Average 26.287 cycles/hash +Alignment 7 - 5.452 bytes/cycle - 15597.39 MiB/sec @ 3 ghz +Alignment 6 - 5.446 bytes/cycle - 15582.08 MiB/sec @ 3 ghz +Alignment 5 - 5.447 bytes/cycle - 15584.40 MiB/sec @ 3 ghz +Alignment 4 - 5.445 bytes/cycle - 15577.46 MiB/sec @ 3 ghz +Alignment 3 - 5.448 bytes/cycle - 15585.89 MiB/sec @ 3 ghz +Alignment 2 - 5.448 bytes/cycle - 15586.71 MiB/sec @ 3 ghz +Alignment 1 - 5.444 bytes/cycle - 15575.53 MiB/sec @ 3 ghz +Alignment 0 - 5.371 bytes/cycle - 15365.97 MiB/sec @ 3 ghz +Average - 5.438 bytes/cycle - 15556.93 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 15.00 cycles/hash +Small key speed test - 2-byte keys - 16.83 cycles/hash +Small key speed test - 3-byte keys - 18.00 cycles/hash +Small key speed test - 4-byte keys - 19.00 cycles/hash +Small key speed test - 5-byte keys - 21.00 cycles/hash +Small key speed test - 6-byte keys - 22.00 cycles/hash +Small key speed test - 7-byte keys - 23.00 cycles/hash +Small key speed test - 8-byte keys - 15.00 cycles/hash +Small key speed test - 9-byte keys - 16.00 cycles/hash +Small key speed test - 10-byte keys - 18.00 cycles/hash +Small key speed test - 11-byte keys - 19.00 cycles/hash +Small key speed test - 12-byte keys - 20.60 cycles/hash +Small key speed test - 13-byte keys - 22.00 cycles/hash +Small key speed test - 14-byte keys - 23.00 cycles/hash +Small key speed test - 15-byte keys - 24.30 cycles/hash +Small key speed test - 16-byte keys - 16.00 cycles/hash +Small key speed test - 17-byte keys - 17.28 cycles/hash +Small key speed test - 18-byte keys - 18.72 cycles/hash +Small key speed test - 19-byte keys - 20.33 cycles/hash +Small key speed test - 20-byte keys - 21.58 cycles/hash +Small key speed test - 21-byte keys - 23.00 cycles/hash +Small key speed test - 22-byte keys - 24.82 cycles/hash +Small key speed test - 23-byte keys - 25.97 cycles/hash +Small key speed test - 24-byte keys - 17.67 cycles/hash +Small key speed test - 25-byte keys - 18.55 cycles/hash +Small key speed test - 26-byte keys - 20.00 cycles/hash +Small key speed test - 27-byte keys - 21.88 cycles/hash +Small key speed test - 28-byte keys - 23.00 cycles/hash +Small key speed test - 29-byte keys - 24.42 cycles/hash +Small key speed test - 30-byte keys - 25.78 cycles/hash +Small key speed test - 31-byte keys - 26.84 cycles/hash +Average 20.599 cycles/hash [[[ 'Hashmap' Speed Tests (when inlined) ]]] diff --git a/doc/floppsyhash.txt b/doc/floppsyhash.txt index 90ceefbf..99e379fc 100644 --- a/doc/floppsyhash.txt +++ b/doc/floppsyhash.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 0.012 bytes/cycle - 35.71 MiB/sec @ 3 ghz -Alignment 6 - 0.012 bytes/cycle - 35.73 MiB/sec @ 3 ghz -Alignment 5 - 0.012 bytes/cycle - 35.71 MiB/sec @ 3 ghz -Alignment 4 - 0.012 bytes/cycle - 35.73 MiB/sec @ 3 ghz -Alignment 3 - 0.012 bytes/cycle - 35.73 MiB/sec @ 3 ghz -Alignment 2 - 0.012 bytes/cycle - 35.71 MiB/sec @ 3 ghz -Alignment 1 - 0.012 bytes/cycle - 35.71 MiB/sec @ 3 ghz -Alignment 0 - 0.012 bytes/cycle - 35.72 MiB/sec @ 3 ghz -Average - 0.012 bytes/cycle - 35.72 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 670.70 cycles/hash -Small key speed test - 2-byte keys - 750.00 cycles/hash -Small key speed test - 3-byte keys - 830.00 cycles/hash -Small key speed test - 4-byte keys - 910.00 cycles/hash -Small key speed test - 5-byte keys - 989.98 cycles/hash -Small key speed test - 6-byte keys - 1070.00 cycles/hash -Small key speed test - 7-byte keys - 1149.00 cycles/hash -Small key speed test - 8-byte keys - 1229.95 cycles/hash -Small key speed test - 9-byte keys - 1309.23 cycles/hash -Small key speed test - 10-byte keys - 1389.73 cycles/hash -Small key speed test - 11-byte keys - 1469.28 cycles/hash -Small key speed test - 12-byte keys - 1549.51 cycles/hash -Small key speed test - 13-byte keys - 1628.95 cycles/hash -Small key speed test - 14-byte keys - 1709.00 cycles/hash -Small key speed test - 15-byte keys - 1788.80 cycles/hash -Small key speed test - 16-byte keys - 1868.98 cycles/hash -Small key speed test - 17-byte keys - 1948.69 cycles/hash -Small key speed test - 18-byte keys - 2028.94 cycles/hash -Small key speed test - 19-byte keys - 2108.69 cycles/hash -Small key speed test - 20-byte keys - 2188.85 cycles/hash -Small key speed test - 21-byte keys - 2267.98 cycles/hash -Small key speed test - 22-byte keys - 2348.75 cycles/hash -Small key speed test - 23-byte keys - 2427.93 cycles/hash -Small key speed test - 24-byte keys - 2508.44 cycles/hash -Small key speed test - 25-byte keys - 2587.86 cycles/hash -Small key speed test - 26-byte keys - 2668.23 cycles/hash -Small key speed test - 27-byte keys - 2747.89 cycles/hash -Small key speed test - 28-byte keys - 2828.19 cycles/hash -Small key speed test - 29-byte keys - 2907.62 cycles/hash -Small key speed test - 30-byte keys - 2987.99 cycles/hash -Small key speed test - 31-byte keys - 3067.38 cycles/hash -Average 1868.920 cycles/hash +Alignment 7 - 0.054 bytes/cycle - 153.31 MiB/sec @ 3 ghz +Alignment 6 - 0.054 bytes/cycle - 153.17 MiB/sec @ 3 ghz +Alignment 5 - 0.054 bytes/cycle - 153.65 MiB/sec @ 3 ghz +Alignment 4 - 0.054 bytes/cycle - 153.39 MiB/sec @ 3 ghz +Alignment 3 - 0.054 bytes/cycle - 154.15 MiB/sec @ 3 ghz +Alignment 2 - 0.054 bytes/cycle - 154.05 MiB/sec @ 3 ghz +Alignment 1 - 0.054 bytes/cycle - 154.05 MiB/sec @ 3 ghz +Alignment 0 - 0.054 bytes/cycle - 153.65 MiB/sec @ 3 ghz +Average - 0.054 bytes/cycle - 153.68 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 302.67 cycles/hash +Small key speed test - 2-byte keys - 320.23 cycles/hash +Small key speed test - 3-byte keys - 338.86 cycles/hash +Small key speed test - 4-byte keys - 352.35 cycles/hash +Small key speed test - 5-byte keys - 372.23 cycles/hash +Small key speed test - 6-byte keys - 388.80 cycles/hash +Small key speed test - 7-byte keys - 412.54 cycles/hash +Small key speed test - 8-byte keys - 426.10 cycles/hash +Small key speed test - 9-byte keys - 443.85 cycles/hash +Small key speed test - 10-byte keys - 460.79 cycles/hash +Small key speed test - 11-byte keys - 480.68 cycles/hash +Small key speed test - 12-byte keys - 497.95 cycles/hash +Small key speed test - 13-byte keys - 518.03 cycles/hash +Small key speed test - 14-byte keys - 535.11 cycles/hash +Small key speed test - 15-byte keys - 554.71 cycles/hash +Small key speed test - 16-byte keys - 572.38 cycles/hash +Small key speed test - 17-byte keys - 591.15 cycles/hash +Small key speed test - 18-byte keys - 608.46 cycles/hash +Small key speed test - 19-byte keys - 627.95 cycles/hash +Small key speed test - 20-byte keys - 646.07 cycles/hash +Small key speed test - 21-byte keys - 664.93 cycles/hash +Small key speed test - 22-byte keys - 681.89 cycles/hash +Small key speed test - 23-byte keys - 701.51 cycles/hash +Small key speed test - 24-byte keys - 718.21 cycles/hash +Small key speed test - 25-byte keys - 738.26 cycles/hash +Small key speed test - 26-byte keys - 756.01 cycles/hash +Small key speed test - 27-byte keys - 775.15 cycles/hash +Small key speed test - 28-byte keys - 792.19 cycles/hash +Small key speed test - 29-byte keys - 812.06 cycles/hash +Small key speed test - 30-byte keys - 828.68 cycles/hash +Small key speed test - 31-byte keys - 848.39 cycles/hash +Average 573.169 cycles/hash [[[ 'Hashmap' Speed Tests ]]] diff --git a/doc/gcc.txt b/doc/gcc.txt index 6e865fff..695bc771 100644 --- a/doc/gcc.txt +++ b/doc/gcc.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 0.216 bytes/cycle - 619.40 MiB/sec @ 3 ghz -Alignment 6 - 0.216 bytes/cycle - 618.24 MiB/sec @ 3 ghz -Alignment 5 - 0.216 bytes/cycle - 617.57 MiB/sec @ 3 ghz -Alignment 4 - 0.217 bytes/cycle - 619.85 MiB/sec @ 3 ghz -Alignment 3 - 0.217 bytes/cycle - 619.48 MiB/sec @ 3 ghz -Alignment 2 - 0.217 bytes/cycle - 619.76 MiB/sec @ 3 ghz -Alignment 1 - 0.217 bytes/cycle - 619.56 MiB/sec @ 3 ghz -Alignment 0 - 0.217 bytes/cycle - 620.15 MiB/sec @ 3 ghz -Average - 0.216 bytes/cycle - 619.25 MiB/sec @ 3 ghz +Alignment 7 - 0.214 bytes/cycle - 611.92 MiB/sec @ 3 ghz +Alignment 6 - 0.214 bytes/cycle - 611.92 MiB/sec @ 3 ghz +Alignment 5 - 0.214 bytes/cycle - 611.92 MiB/sec @ 3 ghz +Alignment 4 - 0.214 bytes/cycle - 611.92 MiB/sec @ 3 ghz +Alignment 3 - 0.214 bytes/cycle - 611.92 MiB/sec @ 3 ghz +Alignment 2 - 0.214 bytes/cycle - 611.92 MiB/sec @ 3 ghz +Alignment 1 - 0.213 bytes/cycle - 610.12 MiB/sec @ 3 ghz +Alignment 0 - 0.214 bytes/cycle - 611.92 MiB/sec @ 3 ghz +Average - 0.214 bytes/cycle - 611.69 MiB/sec @ 3 ghz Small key speed test - 1-byte keys - 16.00 cycles/hash -Small key speed test - 2-byte keys - 20.58 cycles/hash -Small key speed test - 3-byte keys - 25.00 cycles/hash -Small key speed test - 4-byte keys - 29.50 cycles/hash -Small key speed test - 5-byte keys - 34.58 cycles/hash -Small key speed test - 6-byte keys - 39.00 cycles/hash -Small key speed test - 7-byte keys - 43.29 cycles/hash -Small key speed test - 8-byte keys - 48.00 cycles/hash -Small key speed test - 9-byte keys - 52.95 cycles/hash -Small key speed test - 10-byte keys - 57.24 cycles/hash -Small key speed test - 11-byte keys - 62.00 cycles/hash -Small key speed test - 12-byte keys - 66.97 cycles/hash -Small key speed test - 13-byte keys - 71.00 cycles/hash -Small key speed test - 14-byte keys - 75.99 cycles/hash -Small key speed test - 15-byte keys - 81.00 cycles/hash -Small key speed test - 16-byte keys - 85.00 cycles/hash -Small key speed test - 17-byte keys - 89.89 cycles/hash -Small key speed test - 18-byte keys - 94.31 cycles/hash -Small key speed test - 19-byte keys - 98.94 cycles/hash -Small key speed test - 20-byte keys - 103.78 cycles/hash -Small key speed test - 21-byte keys - 108.00 cycles/hash -Small key speed test - 22-byte keys - 113.22 cycles/hash -Small key speed test - 23-byte keys - 117.58 cycles/hash -Small key speed test - 24-byte keys - 121.80 cycles/hash -Small key speed test - 25-byte keys - 126.74 cycles/hash -Small key speed test - 26-byte keys - 130.94 cycles/hash -Small key speed test - 27-byte keys - 135.46 cycles/hash -Small key speed test - 28-byte keys - 140.38 cycles/hash -Small key speed test - 29-byte keys - 144.92 cycles/hash -Small key speed test - 30-byte keys - 149.94 cycles/hash -Small key speed test - 31-byte keys - 154.02 cycles/hash -Average 85.097 cycles/hash +Small key speed test - 2-byte keys - 21.00 cycles/hash +Small key speed test - 3-byte keys - 25.54 cycles/hash +Small key speed test - 4-byte keys - 30.00 cycles/hash +Small key speed test - 5-byte keys - 35.00 cycles/hash +Small key speed test - 6-byte keys - 39.29 cycles/hash +Small key speed test - 7-byte keys - 44.00 cycles/hash +Small key speed test - 8-byte keys - 49.00 cycles/hash +Small key speed test - 9-byte keys - 53.88 cycles/hash +Small key speed test - 10-byte keys - 58.61 cycles/hash +Small key speed test - 11-byte keys - 63.00 cycles/hash +Small key speed test - 12-byte keys - 68.00 cycles/hash +Small key speed test - 13-byte keys - 72.18 cycles/hash +Small key speed test - 14-byte keys - 77.00 cycles/hash +Small key speed test - 15-byte keys - 82.00 cycles/hash +Small key speed test - 16-byte keys - 86.56 cycles/hash +Small key speed test - 17-byte keys - 91.27 cycles/hash +Small key speed test - 18-byte keys - 96.00 cycles/hash +Small key speed test - 19-byte keys - 100.44 cycles/hash +Small key speed test - 20-byte keys - 105.43 cycles/hash +Small key speed test - 21-byte keys - 110.00 cycles/hash +Small key speed test - 22-byte keys - 114.46 cycles/hash +Small key speed test - 23-byte keys - 119.00 cycles/hash +Small key speed test - 24-byte keys - 124.23 cycles/hash +Small key speed test - 25-byte keys - 128.42 cycles/hash +Small key speed test - 26-byte keys - 133.33 cycles/hash +Small key speed test - 27-byte keys - 138.06 cycles/hash +Small key speed test - 28-byte keys - 143.25 cycles/hash +Small key speed test - 29-byte keys - 147.11 cycles/hash +Small key speed test - 30-byte keys - 151.95 cycles/hash +Small key speed test - 31-byte keys - 156.52 cycles/hash +Average 86.468 cycles/hash [[[ 'Hashmap' Speed Tests ]]] diff --git a/doc/halftime_hash128.txt b/doc/halftime_hash128.txt index 65ec7934..9e76db8f 100644 --- a/doc/halftime_hash128.txt +++ b/doc/halftime_hash128.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 4.615 bytes/cycle - 13202.42 MiB/sec @ 3 ghz -Alignment 6 - 4.619 bytes/cycle - 13215.31 MiB/sec @ 3 ghz -Alignment 5 - 4.618 bytes/cycle - 13211.38 MiB/sec @ 3 ghz -Alignment 4 - 4.666 bytes/cycle - 13350.64 MiB/sec @ 3 ghz -Alignment 3 - 4.619 bytes/cycle - 13214.64 MiB/sec @ 3 ghz -Alignment 2 - 4.618 bytes/cycle - 13213.57 MiB/sec @ 3 ghz -Alignment 1 - 4.619 bytes/cycle - 13215.12 MiB/sec @ 3 ghz -Alignment 0 - 5.314 bytes/cycle - 15202.79 MiB/sec @ 3 ghz -Average - 4.711 bytes/cycle - 13478.23 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 93.01 cycles/hash -Small key speed test - 2-byte keys - 93.85 cycles/hash -Small key speed test - 3-byte keys - 93.95 cycles/hash -Small key speed test - 4-byte keys - 94.22 cycles/hash -Small key speed test - 5-byte keys - 93.99 cycles/hash -Small key speed test - 6-byte keys - 94.12 cycles/hash -Small key speed test - 7-byte keys - 96.50 cycles/hash -Small key speed test - 8-byte keys - 95.43 cycles/hash -Small key speed test - 9-byte keys - 94.16 cycles/hash -Small key speed test - 10-byte keys - 94.13 cycles/hash -Small key speed test - 11-byte keys - 94.15 cycles/hash -Small key speed test - 12-byte keys - 94.14 cycles/hash -Small key speed test - 13-byte keys - 93.99 cycles/hash -Small key speed test - 14-byte keys - 94.16 cycles/hash -Small key speed test - 15-byte keys - 94.16 cycles/hash -Small key speed test - 16-byte keys - 79.77 cycles/hash -Small key speed test - 17-byte keys - 100.23 cycles/hash -Small key speed test - 18-byte keys - 102.95 cycles/hash -Small key speed test - 19-byte keys - 102.93 cycles/hash -Small key speed test - 20-byte keys - 102.72 cycles/hash -Small key speed test - 21-byte keys - 102.63 cycles/hash -Small key speed test - 22-byte keys - 102.63 cycles/hash -Small key speed test - 23-byte keys - 102.63 cycles/hash -Small key speed test - 24-byte keys - 102.76 cycles/hash -Small key speed test - 25-byte keys - 102.60 cycles/hash -Small key speed test - 26-byte keys - 102.60 cycles/hash -Small key speed test - 27-byte keys - 102.60 cycles/hash -Small key speed test - 28-byte keys - 102.65 cycles/hash -Small key speed test - 29-byte keys - 102.59 cycles/hash -Small key speed test - 30-byte keys - 102.60 cycles/hash -Small key speed test - 31-byte keys - 102.66 cycles/hash -Average 97.790 cycles/hash +Alignment 7 - 6.089 bytes/cycle - 17420.97 MiB/sec @ 3 ghz +Alignment 6 - 6.098 bytes/cycle - 17446.61 MiB/sec @ 3 ghz +Alignment 5 - 6.101 bytes/cycle - 17456.32 MiB/sec @ 3 ghz +Alignment 4 - 6.104 bytes/cycle - 17462.55 MiB/sec @ 3 ghz +Alignment 3 - 6.097 bytes/cycle - 17444.38 MiB/sec @ 3 ghz +Alignment 2 - 6.096 bytes/cycle - 17442.07 MiB/sec @ 3 ghz +Alignment 1 - 6.100 bytes/cycle - 17451.61 MiB/sec @ 3 ghz +Alignment 0 - 6.344 bytes/cycle - 18151.72 MiB/sec @ 3 ghz +Average - 6.129 bytes/cycle - 17534.53 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 96.43 cycles/hash +Small key speed test - 2-byte keys - 96.50 cycles/hash +Small key speed test - 3-byte keys - 96.56 cycles/hash +Small key speed test - 4-byte keys - 96.41 cycles/hash +Small key speed test - 5-byte keys - 95.90 cycles/hash +Small key speed test - 6-byte keys - 96.33 cycles/hash +Small key speed test - 7-byte keys - 95.91 cycles/hash +Small key speed test - 8-byte keys - 96.49 cycles/hash +Small key speed test - 9-byte keys - 96.46 cycles/hash +Small key speed test - 10-byte keys - 96.48 cycles/hash +Small key speed test - 11-byte keys - 96.48 cycles/hash +Small key speed test - 12-byte keys - 96.47 cycles/hash +Small key speed test - 13-byte keys - 96.44 cycles/hash +Small key speed test - 14-byte keys - 96.43 cycles/hash +Small key speed test - 15-byte keys - 96.46 cycles/hash +Small key speed test - 16-byte keys - 76.64 cycles/hash +Small key speed test - 17-byte keys - 100.30 cycles/hash +Small key speed test - 18-byte keys - 100.28 cycles/hash +Small key speed test - 19-byte keys - 100.46 cycles/hash +Small key speed test - 20-byte keys - 100.69 cycles/hash +Small key speed test - 21-byte keys - 101.19 cycles/hash +Small key speed test - 22-byte keys - 101.16 cycles/hash +Small key speed test - 23-byte keys - 101.14 cycles/hash +Small key speed test - 24-byte keys - 101.11 cycles/hash +Small key speed test - 25-byte keys - 101.18 cycles/hash +Small key speed test - 26-byte keys - 101.19 cycles/hash +Small key speed test - 27-byte keys - 101.18 cycles/hash +Small key speed test - 28-byte keys - 101.22 cycles/hash +Small key speed test - 29-byte keys - 101.19 cycles/hash +Small key speed test - 30-byte keys - 101.19 cycles/hash +Small key speed test - 31-byte keys - 101.23 cycles/hash +Average 97.971 cycles/hash [[[ 'Hashmap' Speed Tests ]]] diff --git a/doc/halftime_hash256.txt b/doc/halftime_hash256.txt index fe35069a..732d79bf 100644 --- a/doc/halftime_hash256.txt +++ b/doc/halftime_hash256.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 3.950 bytes/cycle - 11300.61 MiB/sec @ 3 ghz -Alignment 6 - 3.950 bytes/cycle - 11300.61 MiB/sec @ 3 ghz -Alignment 5 - 3.950 bytes/cycle - 11300.88 MiB/sec @ 3 ghz -Alignment 4 - 3.973 bytes/cycle - 11366.57 MiB/sec @ 3 ghz -Alignment 3 - 3.949 bytes/cycle - 11298.25 MiB/sec @ 3 ghz -Alignment 2 - 3.949 bytes/cycle - 11297.83 MiB/sec @ 3 ghz -Alignment 1 - 3.949 bytes/cycle - 11298.09 MiB/sec @ 3 ghz -Alignment 0 - 4.823 bytes/cycle - 13799.42 MiB/sec @ 3 ghz -Average - 4.062 bytes/cycle - 11620.28 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 95.85 cycles/hash -Small key speed test - 2-byte keys - 95.28 cycles/hash -Small key speed test - 3-byte keys - 95.19 cycles/hash -Small key speed test - 4-byte keys - 95.82 cycles/hash -Small key speed test - 5-byte keys - 95.84 cycles/hash -Small key speed test - 6-byte keys - 95.90 cycles/hash -Small key speed test - 7-byte keys - 95.86 cycles/hash -Small key speed test - 8-byte keys - 95.93 cycles/hash -Small key speed test - 9-byte keys - 95.89 cycles/hash -Small key speed test - 10-byte keys - 95.89 cycles/hash -Small key speed test - 11-byte keys - 95.89 cycles/hash -Small key speed test - 12-byte keys - 95.84 cycles/hash -Small key speed test - 13-byte keys - 95.87 cycles/hash -Small key speed test - 14-byte keys - 95.85 cycles/hash -Small key speed test - 15-byte keys - 95.87 cycles/hash -Small key speed test - 16-byte keys - 86.70 cycles/hash -Small key speed test - 17-byte keys - 101.90 cycles/hash -Small key speed test - 18-byte keys - 101.90 cycles/hash -Small key speed test - 19-byte keys - 101.90 cycles/hash -Small key speed test - 20-byte keys - 101.85 cycles/hash -Small key speed test - 21-byte keys - 101.89 cycles/hash -Small key speed test - 22-byte keys - 101.89 cycles/hash -Small key speed test - 23-byte keys - 101.90 cycles/hash -Small key speed test - 24-byte keys - 101.96 cycles/hash -Small key speed test - 25-byte keys - 101.90 cycles/hash -Small key speed test - 26-byte keys - 101.89 cycles/hash -Small key speed test - 27-byte keys - 101.90 cycles/hash -Small key speed test - 28-byte keys - 101.84 cycles/hash -Small key speed test - 29-byte keys - 101.87 cycles/hash -Small key speed test - 30-byte keys - 101.87 cycles/hash -Small key speed test - 31-byte keys - 101.88 cycles/hash -Average 98.445 cycles/hash +Alignment 7 - 6.246 bytes/cycle - 17870.05 MiB/sec @ 3 ghz +Alignment 6 - 6.274 bytes/cycle - 17951.17 MiB/sec @ 3 ghz +Alignment 5 - 6.274 bytes/cycle - 17950.76 MiB/sec @ 3 ghz +Alignment 4 - 6.274 bytes/cycle - 17950.65 MiB/sec @ 3 ghz +Alignment 3 - 6.271 bytes/cycle - 17940.07 MiB/sec @ 3 ghz +Alignment 2 - 6.273 bytes/cycle - 17947.27 MiB/sec @ 3 ghz +Alignment 1 - 6.267 bytes/cycle - 17931.41 MiB/sec @ 3 ghz +Alignment 0 - 6.461 bytes/cycle - 18485.71 MiB/sec @ 3 ghz +Average - 6.293 bytes/cycle - 18003.39 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 98.93 cycles/hash +Small key speed test - 2-byte keys - 99.08 cycles/hash +Small key speed test - 3-byte keys - 99.10 cycles/hash +Small key speed test - 4-byte keys - 99.14 cycles/hash +Small key speed test - 5-byte keys - 99.00 cycles/hash +Small key speed test - 6-byte keys - 99.06 cycles/hash +Small key speed test - 7-byte keys - 99.10 cycles/hash +Small key speed test - 8-byte keys - 99.03 cycles/hash +Small key speed test - 9-byte keys - 98.77 cycles/hash +Small key speed test - 10-byte keys - 98.66 cycles/hash +Small key speed test - 11-byte keys - 98.75 cycles/hash +Small key speed test - 12-byte keys - 99.19 cycles/hash +Small key speed test - 13-byte keys - 98.78 cycles/hash +Small key speed test - 14-byte keys - 98.78 cycles/hash +Small key speed test - 15-byte keys - 98.76 cycles/hash +Small key speed test - 16-byte keys - 77.55 cycles/hash +Small key speed test - 17-byte keys - 101.64 cycles/hash +Small key speed test - 18-byte keys - 101.56 cycles/hash +Small key speed test - 19-byte keys - 101.67 cycles/hash +Small key speed test - 20-byte keys - 101.59 cycles/hash +Small key speed test - 21-byte keys - 101.24 cycles/hash +Small key speed test - 22-byte keys - 101.24 cycles/hash +Small key speed test - 23-byte keys - 101.29 cycles/hash +Small key speed test - 24-byte keys - 101.45 cycles/hash +Small key speed test - 25-byte keys - 101.32 cycles/hash +Small key speed test - 26-byte keys - 101.36 cycles/hash +Small key speed test - 27-byte keys - 101.33 cycles/hash +Small key speed test - 28-byte keys - 101.45 cycles/hash +Small key speed test - 29-byte keys - 101.46 cycles/hash +Small key speed test - 30-byte keys - 101.36 cycles/hash +Small key speed test - 31-byte keys - 101.46 cycles/hash +Average 99.456 cycles/hash [[[ 'Hashmap' Speed Tests ]]] diff --git a/doc/halftime_hash512.txt b/doc/halftime_hash512.txt index 6910f674..3993a945 100644 --- a/doc/halftime_hash512.txt +++ b/doc/halftime_hash512.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 2.621 bytes/cycle - 7497.69 MiB/sec @ 3 ghz -Alignment 6 - 2.621 bytes/cycle - 7497.93 MiB/sec @ 3 ghz -Alignment 5 - 2.621 bytes/cycle - 7497.45 MiB/sec @ 3 ghz -Alignment 4 - 2.626 bytes/cycle - 7512.59 MiB/sec @ 3 ghz -Alignment 3 - 2.621 bytes/cycle - 7497.69 MiB/sec @ 3 ghz -Alignment 2 - 2.621 bytes/cycle - 7497.64 MiB/sec @ 3 ghz -Alignment 1 - 2.621 bytes/cycle - 7497.96 MiB/sec @ 3 ghz -Alignment 0 - 3.130 bytes/cycle - 8953.98 MiB/sec @ 3 ghz -Average - 2.685 bytes/cycle - 7681.62 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 123.20 cycles/hash -Small key speed test - 2-byte keys - 124.94 cycles/hash -Small key speed test - 3-byte keys - 124.24 cycles/hash -Small key speed test - 4-byte keys - 122.55 cycles/hash -Small key speed test - 5-byte keys - 122.90 cycles/hash -Small key speed test - 6-byte keys - 122.92 cycles/hash -Small key speed test - 7-byte keys - 122.86 cycles/hash -Small key speed test - 8-byte keys - 125.34 cycles/hash -Small key speed test - 9-byte keys - 125.28 cycles/hash -Small key speed test - 10-byte keys - 125.92 cycles/hash -Small key speed test - 11-byte keys - 125.27 cycles/hash -Small key speed test - 12-byte keys - 125.28 cycles/hash -Small key speed test - 13-byte keys - 125.28 cycles/hash -Small key speed test - 14-byte keys - 125.29 cycles/hash -Small key speed test - 15-byte keys - 125.28 cycles/hash -Small key speed test - 16-byte keys - 122.80 cycles/hash -Small key speed test - 17-byte keys - 127.36 cycles/hash -Small key speed test - 18-byte keys - 127.63 cycles/hash -Small key speed test - 19-byte keys - 127.36 cycles/hash -Small key speed test - 20-byte keys - 127.32 cycles/hash -Small key speed test - 21-byte keys - 127.36 cycles/hash -Small key speed test - 22-byte keys - 127.36 cycles/hash -Small key speed test - 23-byte keys - 127.36 cycles/hash -Small key speed test - 24-byte keys - 127.55 cycles/hash -Small key speed test - 25-byte keys - 127.37 cycles/hash -Small key speed test - 26-byte keys - 127.64 cycles/hash -Small key speed test - 27-byte keys - 127.36 cycles/hash -Small key speed test - 28-byte keys - 127.23 cycles/hash -Small key speed test - 29-byte keys - 127.26 cycles/hash -Small key speed test - 30-byte keys - 127.26 cycles/hash -Small key speed test - 31-byte keys - 127.26 cycles/hash -Average 125.808 cycles/hash +Alignment 7 - 3.802 bytes/cycle - 10878.46 MiB/sec @ 3 ghz +Alignment 6 - 3.795 bytes/cycle - 10858.60 MiB/sec @ 3 ghz +Alignment 5 - 3.798 bytes/cycle - 10865.55 MiB/sec @ 3 ghz +Alignment 4 - 3.802 bytes/cycle - 10877.34 MiB/sec @ 3 ghz +Alignment 3 - 3.804 bytes/cycle - 10883.81 MiB/sec @ 3 ghz +Alignment 2 - 3.798 bytes/cycle - 10865.26 MiB/sec @ 3 ghz +Alignment 1 - 3.800 bytes/cycle - 10872.38 MiB/sec @ 3 ghz +Alignment 0 - 3.852 bytes/cycle - 11019.77 MiB/sec @ 3 ghz +Average - 3.806 bytes/cycle - 10890.15 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 116.64 cycles/hash +Small key speed test - 2-byte keys - 118.60 cycles/hash +Small key speed test - 3-byte keys - 118.87 cycles/hash +Small key speed test - 4-byte keys - 117.32 cycles/hash +Small key speed test - 5-byte keys - 117.83 cycles/hash +Small key speed test - 6-byte keys - 117.68 cycles/hash +Small key speed test - 7-byte keys - 117.82 cycles/hash +Small key speed test - 8-byte keys - 117.95 cycles/hash +Small key speed test - 9-byte keys - 116.90 cycles/hash +Small key speed test - 10-byte keys - 116.96 cycles/hash +Small key speed test - 11-byte keys - 116.95 cycles/hash +Small key speed test - 12-byte keys - 116.99 cycles/hash +Small key speed test - 13-byte keys - 116.92 cycles/hash +Small key speed test - 14-byte keys - 116.84 cycles/hash +Small key speed test - 15-byte keys - 116.88 cycles/hash +Small key speed test - 16-byte keys - 112.79 cycles/hash +Small key speed test - 17-byte keys - 118.49 cycles/hash +Small key speed test - 18-byte keys - 118.47 cycles/hash +Small key speed test - 19-byte keys - 118.52 cycles/hash +Small key speed test - 20-byte keys - 119.13 cycles/hash +Small key speed test - 21-byte keys - 119.18 cycles/hash +Small key speed test - 22-byte keys - 119.34 cycles/hash +Small key speed test - 23-byte keys - 119.30 cycles/hash +Small key speed test - 24-byte keys - 119.18 cycles/hash +Small key speed test - 25-byte keys - 119.25 cycles/hash +Small key speed test - 26-byte keys - 119.30 cycles/hash +Small key speed test - 27-byte keys - 119.15 cycles/hash +Small key speed test - 28-byte keys - 118.96 cycles/hash +Small key speed test - 29-byte keys - 119.13 cycles/hash +Small key speed test - 30-byte keys - 119.19 cycles/hash +Small key speed test - 31-byte keys - 119.11 cycles/hash +Average 118.053 cycles/hash [[[ 'Hashmap' Speed Tests ]]] diff --git a/doc/halftime_hash64.txt b/doc/halftime_hash64.txt index ba2a2d5f..3427e487 100644 --- a/doc/halftime_hash64.txt +++ b/doc/halftime_hash64.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 1.726 bytes/cycle - 4938.78 MiB/sec @ 3 ghz -Alignment 6 - 1.726 bytes/cycle - 4938.89 MiB/sec @ 3 ghz -Alignment 5 - 1.726 bytes/cycle - 4938.52 MiB/sec @ 3 ghz -Alignment 4 - 1.735 bytes/cycle - 4963.82 MiB/sec @ 3 ghz -Alignment 3 - 1.723 bytes/cycle - 4928.39 MiB/sec @ 3 ghz -Alignment 2 - 1.723 bytes/cycle - 4928.43 MiB/sec @ 3 ghz -Alignment 1 - 1.723 bytes/cycle - 4928.18 MiB/sec @ 3 ghz -Alignment 0 - 1.874 bytes/cycle - 5360.77 MiB/sec @ 3 ghz -Average - 1.744 bytes/cycle - 4990.72 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 108.00 cycles/hash -Small key speed test - 2-byte keys - 109.24 cycles/hash -Small key speed test - 3-byte keys - 109.00 cycles/hash -Small key speed test - 4-byte keys - 93.15 cycles/hash -Small key speed test - 5-byte keys - 108.00 cycles/hash -Small key speed test - 6-byte keys - 108.00 cycles/hash -Small key speed test - 7-byte keys - 108.00 cycles/hash -Small key speed test - 8-byte keys - 98.00 cycles/hash -Small key speed test - 9-byte keys - 119.00 cycles/hash -Small key speed test - 10-byte keys - 121.00 cycles/hash -Small key speed test - 11-byte keys - 121.00 cycles/hash -Small key speed test - 12-byte keys - 100.80 cycles/hash -Small key speed test - 13-byte keys - 120.32 cycles/hash -Small key speed test - 14-byte keys - 120.00 cycles/hash -Small key speed test - 15-byte keys - 120.33 cycles/hash -Small key speed test - 16-byte keys - 108.11 cycles/hash -Small key speed test - 17-byte keys - 128.28 cycles/hash -Small key speed test - 18-byte keys - 130.24 cycles/hash -Small key speed test - 19-byte keys - 130.24 cycles/hash -Small key speed test - 20-byte keys - 112.71 cycles/hash -Small key speed test - 21-byte keys - 129.14 cycles/hash -Small key speed test - 22-byte keys - 129.14 cycles/hash -Small key speed test - 23-byte keys - 129.14 cycles/hash -Small key speed test - 24-byte keys - 118.26 cycles/hash -Small key speed test - 25-byte keys - 137.96 cycles/hash -Small key speed test - 26-byte keys - 140.00 cycles/hash -Small key speed test - 27-byte keys - 140.00 cycles/hash -Small key speed test - 28-byte keys - 123.00 cycles/hash -Small key speed test - 29-byte keys - 139.00 cycles/hash -Small key speed test - 30-byte keys - 139.00 cycles/hash -Small key speed test - 31-byte keys - 139.00 cycles/hash -Average 120.550 cycles/hash +Alignment 7 - 1.656 bytes/cycle - 4737.03 MiB/sec @ 3 ghz +Alignment 6 - 1.654 bytes/cycle - 4731.38 MiB/sec @ 3 ghz +Alignment 5 - 1.655 bytes/cycle - 4733.67 MiB/sec @ 3 ghz +Alignment 4 - 1.656 bytes/cycle - 4737.66 MiB/sec @ 3 ghz +Alignment 3 - 1.655 bytes/cycle - 4733.59 MiB/sec @ 3 ghz +Alignment 2 - 1.655 bytes/cycle - 4735.31 MiB/sec @ 3 ghz +Alignment 1 - 1.655 bytes/cycle - 4734.58 MiB/sec @ 3 ghz +Alignment 0 - 1.657 bytes/cycle - 4741.85 MiB/sec @ 3 ghz +Average - 1.655 bytes/cycle - 4735.63 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 94.44 cycles/hash +Small key speed test - 2-byte keys - 94.56 cycles/hash +Small key speed test - 3-byte keys - 94.55 cycles/hash +Small key speed test - 4-byte keys - 95.00 cycles/hash +Small key speed test - 5-byte keys - 95.02 cycles/hash +Small key speed test - 6-byte keys - 95.03 cycles/hash +Small key speed test - 7-byte keys - 94.97 cycles/hash +Small key speed test - 8-byte keys - 69.70 cycles/hash +Small key speed test - 9-byte keys - 99.98 cycles/hash +Small key speed test - 10-byte keys - 100.08 cycles/hash +Small key speed test - 11-byte keys - 100.06 cycles/hash +Small key speed test - 12-byte keys - 100.62 cycles/hash +Small key speed test - 13-byte keys - 100.58 cycles/hash +Small key speed test - 14-byte keys - 100.57 cycles/hash +Small key speed test - 15-byte keys - 100.58 cycles/hash +Small key speed test - 16-byte keys - 74.68 cycles/hash +Small key speed test - 17-byte keys - 104.86 cycles/hash +Small key speed test - 18-byte keys - 105.02 cycles/hash +Small key speed test - 19-byte keys - 105.09 cycles/hash +Small key speed test - 20-byte keys - 104.45 cycles/hash +Small key speed test - 21-byte keys - 104.48 cycles/hash +Small key speed test - 22-byte keys - 104.46 cycles/hash +Small key speed test - 23-byte keys - 103.99 cycles/hash +Small key speed test - 24-byte keys - 81.62 cycles/hash +Small key speed test - 25-byte keys - 111.20 cycles/hash +Small key speed test - 26-byte keys - 110.98 cycles/hash +Small key speed test - 27-byte keys - 111.29 cycles/hash +Small key speed test - 28-byte keys - 109.78 cycles/hash +Small key speed test - 29-byte keys - 109.79 cycles/hash +Small key speed test - 30-byte keys - 109.80 cycles/hash +Small key speed test - 31-byte keys - 109.77 cycles/hash +Average 99.902 cycles/hash [[[ 'Hashmap' Speed Tests ]]] diff --git a/doc/hasshe2.txt b/doc/hasshe2.txt index dfbc3c89..c08948d1 100644 --- a/doc/hasshe2.txt +++ b/doc/hasshe2.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest . FAIL !!!!! [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 0.830 bytes/cycle - 2375.67 MiB/sec @ 3 ghz -Alignment 6 - 0.830 bytes/cycle - 2375.63 MiB/sec @ 3 ghz -Alignment 5 - 0.830 bytes/cycle - 2375.50 MiB/sec @ 3 ghz -Alignment 4 - 0.830 bytes/cycle - 2375.55 MiB/sec @ 3 ghz -Alignment 3 - 0.830 bytes/cycle - 2375.65 MiB/sec @ 3 ghz -Alignment 2 - 0.830 bytes/cycle - 2375.58 MiB/sec @ 3 ghz -Alignment 1 - 0.830 bytes/cycle - 2375.67 MiB/sec @ 3 ghz -Alignment 0 - 0.822 bytes/cycle - 2350.93 MiB/sec @ 3 ghz -Average - 0.829 bytes/cycle - 2372.52 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 58.93 cycles/hash -Small key speed test - 2-byte keys - 58.99 cycles/hash -Small key speed test - 3-byte keys - 59.02 cycles/hash -Small key speed test - 4-byte keys - 58.94 cycles/hash -Small key speed test - 5-byte keys - 59.46 cycles/hash -Small key speed test - 6-byte keys - 59.44 cycles/hash -Small key speed test - 7-byte keys - 59.51 cycles/hash -Small key speed test - 8-byte keys - 59.44 cycles/hash -Small key speed test - 9-byte keys - 59.53 cycles/hash -Small key speed test - 10-byte keys - 59.44 cycles/hash -Small key speed test - 11-byte keys - 59.44 cycles/hash -Small key speed test - 12-byte keys - 59.48 cycles/hash -Small key speed test - 13-byte keys - 59.50 cycles/hash -Small key speed test - 14-byte keys - 59.59 cycles/hash -Small key speed test - 15-byte keys - 59.43 cycles/hash -Small key speed test - 16-byte keys - 59.88 cycles/hash -Small key speed test - 17-byte keys - 78.50 cycles/hash -Small key speed test - 18-byte keys - 78.56 cycles/hash -Small key speed test - 19-byte keys - 78.52 cycles/hash -Small key speed test - 20-byte keys - 78.49 cycles/hash -Small key speed test - 21-byte keys - 78.52 cycles/hash -Small key speed test - 22-byte keys - 78.48 cycles/hash -Small key speed test - 23-byte keys - 78.60 cycles/hash -Small key speed test - 24-byte keys - 78.56 cycles/hash -Small key speed test - 25-byte keys - 78.57 cycles/hash -Small key speed test - 26-byte keys - 78.62 cycles/hash -Small key speed test - 27-byte keys - 78.47 cycles/hash -Small key speed test - 28-byte keys - 78.60 cycles/hash -Small key speed test - 29-byte keys - 78.49 cycles/hash -Small key speed test - 30-byte keys - 78.51 cycles/hash -Small key speed test - 31-byte keys - 78.46 cycles/hash -Average 68.644 cycles/hash +Alignment 7 - 0.971 bytes/cycle - 2778.15 MiB/sec @ 3 ghz +Alignment 6 - 0.970 bytes/cycle - 2773.99 MiB/sec @ 3 ghz +Alignment 5 - 0.969 bytes/cycle - 2773.45 MiB/sec @ 3 ghz +Alignment 4 - 0.970 bytes/cycle - 2774.48 MiB/sec @ 3 ghz +Alignment 3 - 0.969 bytes/cycle - 2772.73 MiB/sec @ 3 ghz +Alignment 2 - 0.970 bytes/cycle - 2774.19 MiB/sec @ 3 ghz +Alignment 1 - 0.969 bytes/cycle - 2771.42 MiB/sec @ 3 ghz +Alignment 0 - 0.969 bytes/cycle - 2772.73 MiB/sec @ 3 ghz +Average - 0.970 bytes/cycle - 2773.89 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 56.59 cycles/hash +Small key speed test - 2-byte keys - 56.59 cycles/hash +Small key speed test - 3-byte keys - 56.62 cycles/hash +Small key speed test - 4-byte keys - 56.00 cycles/hash +Small key speed test - 5-byte keys - 56.67 cycles/hash +Small key speed test - 6-byte keys - 56.00 cycles/hash +Small key speed test - 7-byte keys - 56.55 cycles/hash +Small key speed test - 8-byte keys - 56.00 cycles/hash +Small key speed test - 9-byte keys - 56.62 cycles/hash +Small key speed test - 10-byte keys - 56.55 cycles/hash +Small key speed test - 11-byte keys - 56.60 cycles/hash +Small key speed test - 12-byte keys - 56.61 cycles/hash +Small key speed test - 13-byte keys - 56.57 cycles/hash +Small key speed test - 14-byte keys - 56.66 cycles/hash +Small key speed test - 15-byte keys - 56.85 cycles/hash +Small key speed test - 16-byte keys - 56.32 cycles/hash +Small key speed test - 17-byte keys - 72.46 cycles/hash +Small key speed test - 18-byte keys - 72.42 cycles/hash +Small key speed test - 19-byte keys - 72.42 cycles/hash +Small key speed test - 20-byte keys - 72.52 cycles/hash +Small key speed test - 21-byte keys - 72.77 cycles/hash +Small key speed test - 22-byte keys - 72.88 cycles/hash +Small key speed test - 23-byte keys - 72.87 cycles/hash +Small key speed test - 24-byte keys - 72.77 cycles/hash +Small key speed test - 25-byte keys - 72.77 cycles/hash +Small key speed test - 26-byte keys - 72.92 cycles/hash +Small key speed test - 27-byte keys - 72.89 cycles/hash +Small key speed test - 28-byte keys - 72.77 cycles/hash +Small key speed test - 29-byte keys - 72.79 cycles/hash +Small key speed test - 30-byte keys - 72.83 cycles/hash +Small key speed test - 31-byte keys - 72.87 cycles/hash +Average 64.347 cycles/hash [[[ 'Hashmap' Speed Tests (when inlined) ]]] diff --git a/doc/jodyhash32.txt b/doc/jodyhash32.txt index f9905509..96c115c4 100644 --- a/doc/jodyhash32.txt +++ b/doc/jodyhash32.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 0.608 bytes/cycle - 1739.28 MiB/sec @ 3 ghz -Alignment 6 - 0.608 bytes/cycle - 1739.32 MiB/sec @ 3 ghz -Alignment 5 - 0.608 bytes/cycle - 1738.20 MiB/sec @ 3 ghz -Alignment 4 - 0.608 bytes/cycle - 1739.10 MiB/sec @ 3 ghz -Alignment 3 - 0.608 bytes/cycle - 1738.81 MiB/sec @ 3 ghz -Alignment 2 - 0.608 bytes/cycle - 1739.40 MiB/sec @ 3 ghz -Alignment 1 - 0.608 bytes/cycle - 1739.41 MiB/sec @ 3 ghz -Alignment 0 - 0.608 bytes/cycle - 1739.07 MiB/sec @ 3 ghz -Average - 0.608 bytes/cycle - 1739.08 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 19.55 cycles/hash -Small key speed test - 2-byte keys - 19.59 cycles/hash -Small key speed test - 3-byte keys - 19.55 cycles/hash -Small key speed test - 4-byte keys - 20.00 cycles/hash -Small key speed test - 5-byte keys - 27.00 cycles/hash -Small key speed test - 6-byte keys - 27.00 cycles/hash -Small key speed test - 7-byte keys - 27.00 cycles/hash -Small key speed test - 8-byte keys - 26.27 cycles/hash -Small key speed test - 9-byte keys - 33.63 cycles/hash -Small key speed test - 10-byte keys - 33.66 cycles/hash -Small key speed test - 11-byte keys - 33.66 cycles/hash -Small key speed test - 12-byte keys - 33.49 cycles/hash -Small key speed test - 13-byte keys - 40.14 cycles/hash -Small key speed test - 14-byte keys - 40.21 cycles/hash -Small key speed test - 15-byte keys - 40.24 cycles/hash -Small key speed test - 16-byte keys - 40.26 cycles/hash -Small key speed test - 17-byte keys - 46.23 cycles/hash -Small key speed test - 18-byte keys - 46.24 cycles/hash -Small key speed test - 19-byte keys - 46.31 cycles/hash -Small key speed test - 20-byte keys - 47.00 cycles/hash -Small key speed test - 21-byte keys - 52.83 cycles/hash -Small key speed test - 22-byte keys - 52.84 cycles/hash -Small key speed test - 23-byte keys - 52.92 cycles/hash -Small key speed test - 24-byte keys - 53.51 cycles/hash -Small key speed test - 25-byte keys - 59.84 cycles/hash -Small key speed test - 26-byte keys - 59.90 cycles/hash -Small key speed test - 27-byte keys - 59.89 cycles/hash -Small key speed test - 28-byte keys - 59.91 cycles/hash -Small key speed test - 29-byte keys - 66.98 cycles/hash -Small key speed test - 30-byte keys - 66.96 cycles/hash -Small key speed test - 31-byte keys - 66.99 cycles/hash -Average 42.567 cycles/hash +Alignment 7 - 0.627 bytes/cycle - 1794.32 MiB/sec @ 3 ghz +Alignment 6 - 0.627 bytes/cycle - 1794.09 MiB/sec @ 3 ghz +Alignment 5 - 0.627 bytes/cycle - 1794.55 MiB/sec @ 3 ghz +Alignment 4 - 0.627 bytes/cycle - 1794.38 MiB/sec @ 3 ghz +Alignment 3 - 0.627 bytes/cycle - 1794.28 MiB/sec @ 3 ghz +Alignment 2 - 0.627 bytes/cycle - 1794.26 MiB/sec @ 3 ghz +Alignment 1 - 0.627 bytes/cycle - 1794.44 MiB/sec @ 3 ghz +Alignment 0 - 0.627 bytes/cycle - 1794.41 MiB/sec @ 3 ghz +Average - 0.627 bytes/cycle - 1794.34 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 19.00 cycles/hash +Small key speed test - 2-byte keys - 19.00 cycles/hash +Small key speed test - 3-byte keys - 19.00 cycles/hash +Small key speed test - 4-byte keys - 19.31 cycles/hash +Small key speed test - 5-byte keys - 26.00 cycles/hash +Small key speed test - 6-byte keys - 26.00 cycles/hash +Small key speed test - 7-byte keys - 26.00 cycles/hash +Small key speed test - 8-byte keys - 25.86 cycles/hash +Small key speed test - 9-byte keys - 32.18 cycles/hash +Small key speed test - 10-byte keys - 32.25 cycles/hash +Small key speed test - 11-byte keys - 32.44 cycles/hash +Small key speed test - 12-byte keys - 32.00 cycles/hash +Small key speed test - 13-byte keys - 39.00 cycles/hash +Small key speed test - 14-byte keys - 39.00 cycles/hash +Small key speed test - 15-byte keys - 39.00 cycles/hash +Small key speed test - 16-byte keys - 39.00 cycles/hash +Small key speed test - 17-byte keys - 45.00 cycles/hash +Small key speed test - 18-byte keys - 45.00 cycles/hash +Small key speed test - 19-byte keys - 45.00 cycles/hash +Small key speed test - 20-byte keys - 45.18 cycles/hash +Small key speed test - 21-byte keys - 51.00 cycles/hash +Small key speed test - 22-byte keys - 51.00 cycles/hash +Small key speed test - 23-byte keys - 51.00 cycles/hash +Small key speed test - 24-byte keys - 51.99 cycles/hash +Small key speed test - 25-byte keys - 57.99 cycles/hash +Small key speed test - 26-byte keys - 58.00 cycles/hash +Small key speed test - 27-byte keys - 57.98 cycles/hash +Small key speed test - 28-byte keys - 58.00 cycles/hash +Small key speed test - 29-byte keys - 64.00 cycles/hash +Small key speed test - 30-byte keys - 64.19 cycles/hash +Small key speed test - 31-byte keys - 64.19 cycles/hash +Average 41.115 cycles/hash [[[ 'Hashmap' Speed Tests ]]] diff --git a/doc/jodyhash64.txt b/doc/jodyhash64.txt index 1d92548e..cc826987 100644 --- a/doc/jodyhash64.txt +++ b/doc/jodyhash64.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest . FAIL !!!!! [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 1.634 bytes/cycle - 4676.19 MiB/sec @ 3 ghz -Alignment 6 - 1.634 bytes/cycle - 4675.98 MiB/sec @ 3 ghz -Alignment 5 - 1.636 bytes/cycle - 4681.43 MiB/sec @ 3 ghz -Alignment 4 - 1.634 bytes/cycle - 4675.63 MiB/sec @ 3 ghz -Alignment 3 - 1.634 bytes/cycle - 4674.70 MiB/sec @ 3 ghz -Alignment 2 - 1.634 bytes/cycle - 4675.17 MiB/sec @ 3 ghz -Alignment 1 - 1.635 bytes/cycle - 4676.45 MiB/sec @ 3 ghz -Alignment 0 - 1.965 bytes/cycle - 5620.54 MiB/sec @ 3 ghz -Average - 1.676 bytes/cycle - 4794.51 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 22.90 cycles/hash -Small key speed test - 2-byte keys - 22.91 cycles/hash -Small key speed test - 3-byte keys - 22.92 cycles/hash -Small key speed test - 4-byte keys - 22.89 cycles/hash -Small key speed test - 5-byte keys - 22.90 cycles/hash -Small key speed test - 6-byte keys - 22.85 cycles/hash -Small key speed test - 7-byte keys - 22.89 cycles/hash -Small key speed test - 8-byte keys - 21.00 cycles/hash -Small key speed test - 9-byte keys - 25.00 cycles/hash -Small key speed test - 10-byte keys - 25.00 cycles/hash -Small key speed test - 11-byte keys - 25.00 cycles/hash -Small key speed test - 12-byte keys - 25.00 cycles/hash -Small key speed test - 13-byte keys - 25.00 cycles/hash -Small key speed test - 14-byte keys - 25.00 cycles/hash -Small key speed test - 15-byte keys - 25.00 cycles/hash -Small key speed test - 16-byte keys - 25.69 cycles/hash -Small key speed test - 17-byte keys - 30.53 cycles/hash -Small key speed test - 18-byte keys - 30.55 cycles/hash -Small key speed test - 19-byte keys - 30.50 cycles/hash -Small key speed test - 20-byte keys - 30.50 cycles/hash -Small key speed test - 21-byte keys - 30.55 cycles/hash -Small key speed test - 22-byte keys - 30.57 cycles/hash -Small key speed test - 23-byte keys - 30.67 cycles/hash -Small key speed test - 24-byte keys - 30.00 cycles/hash -Small key speed test - 25-byte keys - 35.00 cycles/hash -Small key speed test - 26-byte keys - 35.00 cycles/hash -Small key speed test - 27-byte keys - 35.57 cycles/hash -Small key speed test - 28-byte keys - 35.61 cycles/hash -Small key speed test - 29-byte keys - 35.59 cycles/hash -Small key speed test - 30-byte keys - 35.33 cycles/hash -Small key speed test - 31-byte keys - 35.32 cycles/hash -Average 28.168 cycles/hash +Alignment 7 - 1.635 bytes/cycle - 4678.71 MiB/sec @ 3 ghz +Alignment 6 - 1.635 bytes/cycle - 4677.09 MiB/sec @ 3 ghz +Alignment 5 - 1.638 bytes/cycle - 4686.42 MiB/sec @ 3 ghz +Alignment 4 - 1.637 bytes/cycle - 4684.86 MiB/sec @ 3 ghz +Alignment 3 - 1.634 bytes/cycle - 4675.89 MiB/sec @ 3 ghz +Alignment 2 - 1.634 bytes/cycle - 4675.79 MiB/sec @ 3 ghz +Alignment 1 - 1.634 bytes/cycle - 4674.76 MiB/sec @ 3 ghz +Alignment 0 - 2.010 bytes/cycle - 5751.31 MiB/sec @ 3 ghz +Average - 1.682 bytes/cycle - 4813.10 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 34.00 cycles/hash +Small key speed test - 2-byte keys - 34.00 cycles/hash +Small key speed test - 3-byte keys - 34.00 cycles/hash +Small key speed test - 4-byte keys - 34.82 cycles/hash +Small key speed test - 5-byte keys - 34.00 cycles/hash +Small key speed test - 6-byte keys - 34.17 cycles/hash +Small key speed test - 7-byte keys - 34.00 cycles/hash +Small key speed test - 8-byte keys - 34.00 cycles/hash +Small key speed test - 9-byte keys - 38.98 cycles/hash +Small key speed test - 10-byte keys - 38.98 cycles/hash +Small key speed test - 11-byte keys - 38.98 cycles/hash +Small key speed test - 12-byte keys - 38.98 cycles/hash +Small key speed test - 13-byte keys - 38.95 cycles/hash +Small key speed test - 14-byte keys - 38.96 cycles/hash +Small key speed test - 15-byte keys - 38.99 cycles/hash +Small key speed test - 16-byte keys - 38.89 cycles/hash +Small key speed test - 17-byte keys - 43.00 cycles/hash +Small key speed test - 18-byte keys - 43.00 cycles/hash +Small key speed test - 19-byte keys - 43.17 cycles/hash +Small key speed test - 20-byte keys - 43.00 cycles/hash +Small key speed test - 21-byte keys - 43.00 cycles/hash +Small key speed test - 22-byte keys - 43.13 cycles/hash +Small key speed test - 23-byte keys - 43.16 cycles/hash +Small key speed test - 24-byte keys - 43.00 cycles/hash +Small key speed test - 25-byte keys - 47.57 cycles/hash +Small key speed test - 26-byte keys - 47.55 cycles/hash +Small key speed test - 27-byte keys - 47.62 cycles/hash +Small key speed test - 28-byte keys - 47.58 cycles/hash +Small key speed test - 29-byte keys - 47.58 cycles/hash +Small key speed test - 30-byte keys - 47.60 cycles/hash +Small key speed test - 31-byte keys - 47.60 cycles/hash +Average 40.719 cycles/hash [[[ 'Hashmap' Speed Tests ]]] diff --git a/doc/k-hash32.txt b/doc/k-hash32.txt index 39f0e135..7c665df7 100644 --- a/doc/k-hash32.txt +++ b/doc/k-hash32.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest . FAIL !!!!! [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 0.934 bytes/cycle - 2671.96 MiB/sec @ 3 ghz -Alignment 6 - 0.963 bytes/cycle - 2755.91 MiB/sec @ 3 ghz -Alignment 5 - 0.923 bytes/cycle - 2641.25 MiB/sec @ 3 ghz -Alignment 4 - 0.924 bytes/cycle - 2644.41 MiB/sec @ 3 ghz -Alignment 3 - 0.922 bytes/cycle - 2637.02 MiB/sec @ 3 ghz -Alignment 2 - 0.964 bytes/cycle - 2758.02 MiB/sec @ 3 ghz -Alignment 1 - 0.965 bytes/cycle - 2760.30 MiB/sec @ 3 ghz -Alignment 0 - 0.916 bytes/cycle - 2621.73 MiB/sec @ 3 ghz -Average - 0.939 bytes/cycle - 2686.33 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 26.00 cycles/hash -Small key speed test - 2-byte keys - 26.49 cycles/hash -Small key speed test - 3-byte keys - 26.54 cycles/hash -Small key speed test - 4-byte keys - 26.82 cycles/hash -Small key speed test - 5-byte keys - 31.33 cycles/hash -Small key speed test - 6-byte keys - 31.00 cycles/hash -Small key speed test - 7-byte keys - 31.00 cycles/hash -Small key speed test - 8-byte keys - 30.00 cycles/hash -Small key speed test - 9-byte keys - 36.00 cycles/hash -Small key speed test - 10-byte keys - 36.00 cycles/hash -Small key speed test - 11-byte keys - 36.28 cycles/hash -Small key speed test - 12-byte keys - 36.65 cycles/hash -Small key speed test - 13-byte keys - 44.00 cycles/hash -Small key speed test - 14-byte keys - 44.00 cycles/hash -Small key speed test - 15-byte keys - 44.00 cycles/hash -Small key speed test - 16-byte keys - 49.00 cycles/hash -Small key speed test - 17-byte keys - 49.00 cycles/hash -Small key speed test - 18-byte keys - 49.64 cycles/hash -Small key speed test - 19-byte keys - 49.46 cycles/hash -Small key speed test - 20-byte keys - 49.64 cycles/hash -Small key speed test - 21-byte keys - 50.95 cycles/hash -Small key speed test - 22-byte keys - 50.95 cycles/hash -Small key speed test - 23-byte keys - 50.92 cycles/hash -Small key speed test - 24-byte keys - 51.00 cycles/hash -Small key speed test - 25-byte keys - 51.99 cycles/hash -Small key speed test - 26-byte keys - 52.00 cycles/hash -Small key speed test - 27-byte keys - 53.11 cycles/hash -Small key speed test - 28-byte keys - 53.60 cycles/hash -Small key speed test - 29-byte keys - 61.31 cycles/hash -Small key speed test - 30-byte keys - 52.00 cycles/hash -Small key speed test - 31-byte keys - 52.00 cycles/hash -Average 42.990 cycles/hash +Alignment 7 - 0.779 bytes/cycle - 2229.64 MiB/sec @ 3 ghz +Alignment 6 - 0.779 bytes/cycle - 2229.36 MiB/sec @ 3 ghz +Alignment 5 - 0.780 bytes/cycle - 2231.06 MiB/sec @ 3 ghz +Alignment 4 - 0.780 bytes/cycle - 2232.98 MiB/sec @ 3 ghz +Alignment 3 - 0.780 bytes/cycle - 2231.16 MiB/sec @ 3 ghz +Alignment 2 - 0.779 bytes/cycle - 2229.05 MiB/sec @ 3 ghz +Alignment 1 - 0.780 bytes/cycle - 2230.89 MiB/sec @ 3 ghz +Alignment 0 - 0.779 bytes/cycle - 2229.21 MiB/sec @ 3 ghz +Average - 0.780 bytes/cycle - 2230.42 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 32.98 cycles/hash +Small key speed test - 2-byte keys - 32.94 cycles/hash +Small key speed test - 3-byte keys - 32.97 cycles/hash +Small key speed test - 4-byte keys - 33.00 cycles/hash +Small key speed test - 5-byte keys - 38.92 cycles/hash +Small key speed test - 6-byte keys - 39.00 cycles/hash +Small key speed test - 7-byte keys - 38.98 cycles/hash +Small key speed test - 8-byte keys - 37.00 cycles/hash +Small key speed test - 9-byte keys - 45.00 cycles/hash +Small key speed test - 10-byte keys - 45.00 cycles/hash +Small key speed test - 11-byte keys - 45.00 cycles/hash +Small key speed test - 12-byte keys - 44.82 cycles/hash +Small key speed test - 13-byte keys - 55.00 cycles/hash +Small key speed test - 14-byte keys - 55.00 cycles/hash +Small key speed test - 15-byte keys - 55.00 cycles/hash +Small key speed test - 16-byte keys - 61.00 cycles/hash +Small key speed test - 17-byte keys - 61.63 cycles/hash +Small key speed test - 18-byte keys - 61.66 cycles/hash +Small key speed test - 19-byte keys - 61.68 cycles/hash +Small key speed test - 20-byte keys - 63.00 cycles/hash +Small key speed test - 21-byte keys - 63.55 cycles/hash +Small key speed test - 22-byte keys - 63.56 cycles/hash +Small key speed test - 23-byte keys - 63.57 cycles/hash +Small key speed test - 24-byte keys - 63.00 cycles/hash +Small key speed test - 25-byte keys - 64.11 cycles/hash +Small key speed test - 26-byte keys - 64.00 cycles/hash +Small key speed test - 27-byte keys - 64.00 cycles/hash +Small key speed test - 28-byte keys - 64.00 cycles/hash +Small key speed test - 29-byte keys - 65.00 cycles/hash +Small key speed test - 30-byte keys - 65.20 cycles/hash +Small key speed test - 31-byte keys - 65.00 cycles/hash +Average 53.051 cycles/hash [[[ 'Hashmap' Speed Tests ]]] diff --git a/doc/k-hash64.txt b/doc/k-hash64.txt index 948ff619..f158ed90 100644 --- a/doc/k-hash64.txt +++ b/doc/k-hash64.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest . FAIL !!!!! [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 0.994 bytes/cycle - 2842.98 MiB/sec @ 3 ghz -Alignment 6 - 0.984 bytes/cycle - 2816.28 MiB/sec @ 3 ghz -Alignment 5 - 0.989 bytes/cycle - 2829.26 MiB/sec @ 3 ghz -Alignment 4 - 1.051 bytes/cycle - 3005.92 MiB/sec @ 3 ghz -Alignment 3 - 0.985 bytes/cycle - 2817.72 MiB/sec @ 3 ghz -Alignment 2 - 0.967 bytes/cycle - 2766.96 MiB/sec @ 3 ghz -Alignment 1 - 0.957 bytes/cycle - 2739.39 MiB/sec @ 3 ghz -Alignment 0 - 0.926 bytes/cycle - 2649.85 MiB/sec @ 3 ghz -Average - 0.982 bytes/cycle - 2808.54 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 26.46 cycles/hash -Small key speed test - 2-byte keys - 26.25 cycles/hash -Small key speed test - 3-byte keys - 26.00 cycles/hash -Small key speed test - 4-byte keys - 26.00 cycles/hash -Small key speed test - 5-byte keys - 26.00 cycles/hash -Small key speed test - 6-byte keys - 26.28 cycles/hash -Small key speed test - 7-byte keys - 26.00 cycles/hash -Small key speed test - 8-byte keys - 28.00 cycles/hash -Small key speed test - 9-byte keys - 31.99 cycles/hash -Small key speed test - 10-byte keys - 31.99 cycles/hash -Small key speed test - 11-byte keys - 31.98 cycles/hash -Small key speed test - 12-byte keys - 31.90 cycles/hash -Small key speed test - 13-byte keys - 31.97 cycles/hash -Small key speed test - 14-byte keys - 31.99 cycles/hash -Small key speed test - 15-byte keys - 31.95 cycles/hash -Small key speed test - 16-byte keys - 48.00 cycles/hash -Small key speed test - 17-byte keys - 49.00 cycles/hash -Small key speed test - 18-byte keys - 49.00 cycles/hash -Small key speed test - 19-byte keys - 49.00 cycles/hash -Small key speed test - 20-byte keys - 49.15 cycles/hash -Small key speed test - 21-byte keys - 48.00 cycles/hash -Small key speed test - 22-byte keys - 48.51 cycles/hash -Small key speed test - 23-byte keys - 48.00 cycles/hash -Small key speed test - 24-byte keys - 48.00 cycles/hash -Small key speed test - 25-byte keys - 49.00 cycles/hash -Small key speed test - 26-byte keys - 49.25 cycles/hash -Small key speed test - 27-byte keys - 49.25 cycles/hash -Small key speed test - 28-byte keys - 49.00 cycles/hash -Small key speed test - 29-byte keys - 49.00 cycles/hash -Small key speed test - 30-byte keys - 49.00 cycles/hash -Small key speed test - 31-byte keys - 49.00 cycles/hash -Average 39.191 cycles/hash +Alignment 7 - 0.856 bytes/cycle - 2449.94 MiB/sec @ 3 ghz +Alignment 6 - 0.856 bytes/cycle - 2448.92 MiB/sec @ 3 ghz +Alignment 5 - 0.857 bytes/cycle - 2452.47 MiB/sec @ 3 ghz +Alignment 4 - 0.857 bytes/cycle - 2451.42 MiB/sec @ 3 ghz +Alignment 3 - 0.858 bytes/cycle - 2454.40 MiB/sec @ 3 ghz +Alignment 2 - 0.857 bytes/cycle - 2452.69 MiB/sec @ 3 ghz +Alignment 1 - 0.857 bytes/cycle - 2451.21 MiB/sec @ 3 ghz +Alignment 0 - 0.858 bytes/cycle - 2453.95 MiB/sec @ 3 ghz +Average - 0.857 bytes/cycle - 2451.88 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 32.79 cycles/hash +Small key speed test - 2-byte keys - 32.73 cycles/hash +Small key speed test - 3-byte keys - 32.84 cycles/hash +Small key speed test - 4-byte keys - 32.84 cycles/hash +Small key speed test - 5-byte keys - 32.75 cycles/hash +Small key speed test - 6-byte keys - 32.79 cycles/hash +Small key speed test - 7-byte keys - 32.78 cycles/hash +Small key speed test - 8-byte keys - 34.12 cycles/hash +Small key speed test - 9-byte keys - 39.14 cycles/hash +Small key speed test - 10-byte keys - 39.11 cycles/hash +Small key speed test - 11-byte keys - 39.16 cycles/hash +Small key speed test - 12-byte keys - 39.12 cycles/hash +Small key speed test - 13-byte keys - 39.14 cycles/hash +Small key speed test - 14-byte keys - 39.13 cycles/hash +Small key speed test - 15-byte keys - 39.13 cycles/hash +Small key speed test - 16-byte keys - 59.18 cycles/hash +Small key speed test - 17-byte keys - 60.22 cycles/hash +Small key speed test - 18-byte keys - 60.24 cycles/hash +Small key speed test - 19-byte keys - 60.23 cycles/hash +Small key speed test - 20-byte keys - 60.26 cycles/hash +Small key speed test - 21-byte keys - 60.92 cycles/hash +Small key speed test - 22-byte keys - 60.91 cycles/hash +Small key speed test - 23-byte keys - 60.93 cycles/hash +Small key speed test - 24-byte keys - 61.00 cycles/hash +Small key speed test - 25-byte keys - 61.00 cycles/hash +Small key speed test - 26-byte keys - 61.00 cycles/hash +Small key speed test - 27-byte keys - 61.00 cycles/hash +Small key speed test - 28-byte keys - 61.00 cycles/hash +Small key speed test - 29-byte keys - 61.00 cycles/hash +Small key speed test - 30-byte keys - 61.00 cycles/hash +Small key speed test - 31-byte keys - 61.00 cycles/hash +Average 48.661 cycles/hash [[[ 'Hashmap' Speed Tests ]]] diff --git a/doc/k-hashv32.txt b/doc/k-hashv32.txt index 8935f962..af2b85bb 100644 --- a/doc/k-hashv32.txt +++ b/doc/k-hashv32.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 2.457 bytes/cycle - 7028.45 MiB/sec @ 3 ghz -Alignment 6 - 2.457 bytes/cycle - 7028.31 MiB/sec @ 3 ghz -Alignment 5 - 2.457 bytes/cycle - 7028.66 MiB/sec @ 3 ghz -Alignment 4 - 2.457 bytes/cycle - 7028.58 MiB/sec @ 3 ghz -Alignment 3 - 2.457 bytes/cycle - 7028.44 MiB/sec @ 3 ghz -Alignment 2 - 2.457 bytes/cycle - 7028.49 MiB/sec @ 3 ghz -Alignment 1 - 2.457 bytes/cycle - 7028.33 MiB/sec @ 3 ghz -Alignment 0 - 2.599 bytes/cycle - 7434.87 MiB/sec @ 3 ghz -Average - 2.474 bytes/cycle - 7079.27 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 52.77 cycles/hash -Small key speed test - 2-byte keys - 70.00 cycles/hash -Small key speed test - 3-byte keys - 71.00 cycles/hash -Small key speed test - 4-byte keys - 52.00 cycles/hash -Small key speed test - 5-byte keys - 52.72 cycles/hash -Small key speed test - 6-byte keys - 53.00 cycles/hash -Small key speed test - 7-byte keys - 54.00 cycles/hash -Small key speed test - 8-byte keys - 52.00 cycles/hash -Small key speed test - 9-byte keys - 53.00 cycles/hash -Small key speed test - 10-byte keys - 52.00 cycles/hash -Small key speed test - 11-byte keys - 54.00 cycles/hash -Small key speed test - 12-byte keys - 52.44 cycles/hash -Small key speed test - 13-byte keys - 54.00 cycles/hash -Small key speed test - 14-byte keys - 54.00 cycles/hash -Small key speed test - 15-byte keys - 55.00 cycles/hash -Small key speed test - 16-byte keys - 54.74 cycles/hash -Small key speed test - 17-byte keys - 66.73 cycles/hash -Small key speed test - 18-byte keys - 91.86 cycles/hash -Small key speed test - 19-byte keys - 93.11 cycles/hash -Small key speed test - 20-byte keys - 65.53 cycles/hash -Small key speed test - 21-byte keys - 66.00 cycles/hash -Small key speed test - 22-byte keys - 66.00 cycles/hash -Small key speed test - 23-byte keys - 67.00 cycles/hash -Small key speed test - 24-byte keys - 65.00 cycles/hash -Small key speed test - 25-byte keys - 66.00 cycles/hash -Small key speed test - 26-byte keys - 66.48 cycles/hash -Small key speed test - 27-byte keys - 67.00 cycles/hash -Small key speed test - 28-byte keys - 66.17 cycles/hash -Small key speed test - 29-byte keys - 67.00 cycles/hash -Small key speed test - 30-byte keys - 67.00 cycles/hash -Small key speed test - 31-byte keys - 68.00 cycles/hash -Average 62.437 cycles/hash +Alignment 7 - 3.205 bytes/cycle - 9170.91 MiB/sec @ 3 ghz +Alignment 6 - 3.210 bytes/cycle - 9184.33 MiB/sec @ 3 ghz +Alignment 5 - 3.209 bytes/cycle - 9182.12 MiB/sec @ 3 ghz +Alignment 4 - 3.211 bytes/cycle - 9188.13 MiB/sec @ 3 ghz +Alignment 3 - 3.210 bytes/cycle - 9183.75 MiB/sec @ 3 ghz +Alignment 2 - 3.210 bytes/cycle - 9184.49 MiB/sec @ 3 ghz +Alignment 1 - 3.211 bytes/cycle - 9185.35 MiB/sec @ 3 ghz +Alignment 0 - 3.207 bytes/cycle - 9175.85 MiB/sec @ 3 ghz +Average - 3.209 bytes/cycle - 9181.87 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 49.95 cycles/hash +Small key speed test - 2-byte keys - 49.92 cycles/hash +Small key speed test - 3-byte keys - 49.92 cycles/hash +Small key speed test - 4-byte keys - 47.77 cycles/hash +Small key speed test - 5-byte keys - 49.93 cycles/hash +Small key speed test - 6-byte keys - 49.95 cycles/hash +Small key speed test - 7-byte keys - 49.92 cycles/hash +Small key speed test - 8-byte keys - 47.99 cycles/hash +Small key speed test - 9-byte keys - 49.99 cycles/hash +Small key speed test - 10-byte keys - 49.98 cycles/hash +Small key speed test - 11-byte keys - 49.97 cycles/hash +Small key speed test - 12-byte keys - 49.97 cycles/hash +Small key speed test - 13-byte keys - 49.97 cycles/hash +Small key speed test - 14-byte keys - 49.96 cycles/hash +Small key speed test - 15-byte keys - 51.71 cycles/hash +Small key speed test - 16-byte keys - 50.55 cycles/hash +Small key speed test - 17-byte keys - 54.94 cycles/hash +Small key speed test - 18-byte keys - 54.59 cycles/hash +Small key speed test - 19-byte keys - 55.19 cycles/hash +Small key speed test - 20-byte keys - 54.87 cycles/hash +Small key speed test - 21-byte keys - 56.04 cycles/hash +Small key speed test - 22-byte keys - 55.60 cycles/hash +Small key speed test - 23-byte keys - 57.69 cycles/hash +Small key speed test - 24-byte keys - 55.46 cycles/hash +Small key speed test - 25-byte keys - 55.93 cycles/hash +Small key speed test - 26-byte keys - 55.94 cycles/hash +Small key speed test - 27-byte keys - 56.05 cycles/hash +Small key speed test - 28-byte keys - 55.60 cycles/hash +Small key speed test - 29-byte keys - 56.05 cycles/hash +Small key speed test - 30-byte keys - 56.07 cycles/hash +Small key speed test - 31-byte keys - 58.20 cycles/hash +Average 52.764 cycles/hash [[[ 'Hashmap' Speed Tests ]]] diff --git a/doc/k-hashv64.txt b/doc/k-hashv64.txt index 096aaf20..5fc322f9 100644 --- a/doc/k-hashv64.txt +++ b/doc/k-hashv64.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 2.458 bytes/cycle - 7033.34 MiB/sec @ 3 ghz -Alignment 6 - 2.458 bytes/cycle - 7033.36 MiB/sec @ 3 ghz -Alignment 5 - 2.458 bytes/cycle - 7033.40 MiB/sec @ 3 ghz -Alignment 4 - 2.458 bytes/cycle - 7033.34 MiB/sec @ 3 ghz -Alignment 3 - 2.458 bytes/cycle - 7033.48 MiB/sec @ 3 ghz -Alignment 2 - 2.458 bytes/cycle - 7033.37 MiB/sec @ 3 ghz -Alignment 1 - 2.458 bytes/cycle - 7033.35 MiB/sec @ 3 ghz -Alignment 0 - 2.606 bytes/cycle - 7455.33 MiB/sec @ 3 ghz -Average - 2.477 bytes/cycle - 7086.12 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 51.00 cycles/hash -Small key speed test - 2-byte keys - 68.00 cycles/hash -Small key speed test - 3-byte keys - 69.00 cycles/hash -Small key speed test - 4-byte keys - 50.00 cycles/hash -Small key speed test - 5-byte keys - 54.87 cycles/hash -Small key speed test - 6-byte keys - 54.96 cycles/hash -Small key speed test - 7-byte keys - 56.49 cycles/hash -Small key speed test - 8-byte keys - 54.48 cycles/hash -Small key speed test - 9-byte keys - 62.00 cycles/hash -Small key speed test - 10-byte keys - 62.00 cycles/hash -Small key speed test - 11-byte keys - 64.00 cycles/hash -Small key speed test - 12-byte keys - 62.00 cycles/hash -Small key speed test - 13-byte keys - 63.78 cycles/hash -Small key speed test - 14-byte keys - 63.95 cycles/hash -Small key speed test - 15-byte keys - 64.00 cycles/hash -Small key speed test - 16-byte keys - 65.25 cycles/hash -Small key speed test - 17-byte keys - 70.39 cycles/hash -Small key speed test - 18-byte keys - 100.01 cycles/hash -Small key speed test - 19-byte keys - 100.99 cycles/hash -Small key speed test - 20-byte keys - 69.76 cycles/hash -Small key speed test - 21-byte keys - 64.00 cycles/hash -Small key speed test - 22-byte keys - 64.00 cycles/hash -Small key speed test - 23-byte keys - 65.00 cycles/hash -Small key speed test - 24-byte keys - 63.00 cycles/hash -Small key speed test - 25-byte keys - 64.00 cycles/hash -Small key speed test - 26-byte keys - 64.00 cycles/hash -Small key speed test - 27-byte keys - 65.00 cycles/hash -Small key speed test - 28-byte keys - 64.00 cycles/hash -Small key speed test - 29-byte keys - 65.00 cycles/hash -Small key speed test - 30-byte keys - 65.00 cycles/hash -Small key speed test - 31-byte keys - 65.88 cycles/hash -Average 65.026 cycles/hash +Alignment 7 - 3.157 bytes/cycle - 9033.24 MiB/sec @ 3 ghz +Alignment 6 - 3.160 bytes/cycle - 9041.64 MiB/sec @ 3 ghz +Alignment 5 - 3.158 bytes/cycle - 9036.09 MiB/sec @ 3 ghz +Alignment 4 - 3.159 bytes/cycle - 9038.49 MiB/sec @ 3 ghz +Alignment 3 - 3.155 bytes/cycle - 9027.19 MiB/sec @ 3 ghz +Alignment 2 - 3.155 bytes/cycle - 9027.42 MiB/sec @ 3 ghz +Alignment 1 - 3.160 bytes/cycle - 9040.31 MiB/sec @ 3 ghz +Alignment 0 - 3.158 bytes/cycle - 9036.02 MiB/sec @ 3 ghz +Average - 3.158 bytes/cycle - 9035.05 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 49.00 cycles/hash +Small key speed test - 2-byte keys - 48.82 cycles/hash +Small key speed test - 3-byte keys - 49.63 cycles/hash +Small key speed test - 4-byte keys - 47.70 cycles/hash +Small key speed test - 5-byte keys - 49.00 cycles/hash +Small key speed test - 6-byte keys - 48.89 cycles/hash +Small key speed test - 7-byte keys - 49.72 cycles/hash +Small key speed test - 8-byte keys - 47.51 cycles/hash +Small key speed test - 9-byte keys - 49.83 cycles/hash +Small key speed test - 10-byte keys - 49.64 cycles/hash +Small key speed test - 11-byte keys - 50.89 cycles/hash +Small key speed test - 12-byte keys - 50.00 cycles/hash +Small key speed test - 13-byte keys - 50.86 cycles/hash +Small key speed test - 14-byte keys - 50.95 cycles/hash +Small key speed test - 15-byte keys - 50.81 cycles/hash +Small key speed test - 16-byte keys - 50.00 cycles/hash +Small key speed test - 17-byte keys - 56.00 cycles/hash +Small key speed test - 18-byte keys - 56.19 cycles/hash +Small key speed test - 19-byte keys - 56.24 cycles/hash +Small key speed test - 20-byte keys - 54.52 cycles/hash +Small key speed test - 21-byte keys - 56.83 cycles/hash +Small key speed test - 22-byte keys - 56.91 cycles/hash +Small key speed test - 23-byte keys - 57.90 cycles/hash +Small key speed test - 24-byte keys - 54.62 cycles/hash +Small key speed test - 25-byte keys - 56.36 cycles/hash +Small key speed test - 26-byte keys - 56.38 cycles/hash +Small key speed test - 27-byte keys - 57.65 cycles/hash +Small key speed test - 28-byte keys - 56.32 cycles/hash +Small key speed test - 29-byte keys - 57.66 cycles/hash +Small key speed test - 30-byte keys - 57.55 cycles/hash +Small key speed test - 31-byte keys - 58.16 cycles/hash +Average 52.984 cycles/hash [[[ 'Hashmap' Speed Tests ]]] diff --git a/doc/komihash.txt b/doc/komihash.txt index 7d0ff59d..f9a5cecd 100644 --- a/doc/komihash.txt +++ b/doc/komihash.txt @@ -10,27 +10,27 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 4.254 bytes/cycle - 12171.51 MiB/sec @ 3 ghz -Alignment 6 - 4.236 bytes/cycle - 12120.41 MiB/sec @ 3 ghz -Alignment 5 - 4.234 bytes/cycle - 12113.87 MiB/sec @ 3 ghz -Alignment 4 - 4.234 bytes/cycle - 12114.33 MiB/sec @ 3 ghz -Alignment 3 - 4.237 bytes/cycle - 12122.07 MiB/sec @ 3 ghz -Alignment 2 - 4.237 bytes/cycle - 12121.20 MiB/sec @ 3 ghz -Alignment 1 - 4.233 bytes/cycle - 12111.02 MiB/sec @ 3 ghz -Alignment 0 - 4.252 bytes/cycle - 12165.02 MiB/sec @ 3 ghz -Average - 4.240 bytes/cycle - 12129.93 MiB/sec @ 3 ghz +Alignment 7 - 4.248 bytes/cycle - 12154.39 MiB/sec @ 3 ghz +Alignment 6 - 4.262 bytes/cycle - 12192.90 MiB/sec @ 3 ghz +Alignment 5 - 4.261 bytes/cycle - 12192.22 MiB/sec @ 3 ghz +Alignment 4 - 4.262 bytes/cycle - 12192.96 MiB/sec @ 3 ghz +Alignment 3 - 4.256 bytes/cycle - 12175.16 MiB/sec @ 3 ghz +Alignment 2 - 4.261 bytes/cycle - 12191.88 MiB/sec @ 3 ghz +Alignment 1 - 4.261 bytes/cycle - 12191.79 MiB/sec @ 3 ghz +Alignment 0 - 4.278 bytes/cycle - 12238.43 MiB/sec @ 3 ghz +Average - 4.261 bytes/cycle - 12191.22 MiB/sec @ 3 ghz Small key speed test - 1-byte keys - 29.00 cycles/hash Small key speed test - 2-byte keys - 29.00 cycles/hash -Small key speed test - 3-byte keys - 30.95 cycles/hash -Small key speed test - 4-byte keys - 30.68 cycles/hash -Small key speed test - 5-byte keys - 30.66 cycles/hash -Small key speed test - 6-byte keys - 30.68 cycles/hash -Small key speed test - 7-byte keys - 30.69 cycles/hash +Small key speed test - 3-byte keys - 30.79 cycles/hash +Small key speed test - 4-byte keys - 30.95 cycles/hash +Small key speed test - 5-byte keys - 30.31 cycles/hash +Small key speed test - 6-byte keys - 30.87 cycles/hash +Small key speed test - 7-byte keys - 30.91 cycles/hash Small key speed test - 8-byte keys - 33.00 cycles/hash -Small key speed test - 9-byte keys - 33.22 cycles/hash -Small key speed test - 10-byte keys - 33.22 cycles/hash -Small key speed test - 11-byte keys - 33.26 cycles/hash +Small key speed test - 9-byte keys - 33.00 cycles/hash +Small key speed test - 10-byte keys - 33.00 cycles/hash +Small key speed test - 11-byte keys - 33.00 cycles/hash Small key speed test - 12-byte keys - 31.00 cycles/hash Small key speed test - 13-byte keys - 31.00 cycles/hash Small key speed test - 14-byte keys - 31.00 cycles/hash @@ -43,15 +43,15 @@ Small key speed test - 20-byte keys - 35.00 cycles/hash Small key speed test - 21-byte keys - 35.00 cycles/hash Small key speed test - 22-byte keys - 35.00 cycles/hash Small key speed test - 23-byte keys - 35.00 cycles/hash -Small key speed test - 24-byte keys - 35.81 cycles/hash -Small key speed test - 25-byte keys - 35.82 cycles/hash -Small key speed test - 26-byte keys - 35.77 cycles/hash -Small key speed test - 27-byte keys - 35.77 cycles/hash -Small key speed test - 28-byte keys - 35.78 cycles/hash -Small key speed test - 29-byte keys - 35.82 cycles/hash -Small key speed test - 30-byte keys - 35.83 cycles/hash -Small key speed test - 31-byte keys - 35.84 cycles/hash -Average 33.381 cycles/hash +Small key speed test - 24-byte keys - 35.00 cycles/hash +Small key speed test - 25-byte keys - 35.29 cycles/hash +Small key speed test - 26-byte keys - 35.34 cycles/hash +Small key speed test - 27-byte keys - 35.29 cycles/hash +Small key speed test - 28-byte keys - 35.00 cycles/hash +Small key speed test - 29-byte keys - 35.27 cycles/hash +Small key speed test - 30-byte keys - 35.00 cycles/hash +Small key speed test - 31-byte keys - 35.00 cycles/hash +Average 33.194 cycles/hash [[[ 'Hashmap' Speed Tests ]]] diff --git a/doc/libiberty.txt b/doc/libiberty.txt index a2e05c8f..a9f1f681 100644 --- a/doc/libiberty.txt +++ b/doc/libiberty.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 0.221 bytes/cycle - 631.79 MiB/sec @ 3 ghz -Alignment 6 - 0.221 bytes/cycle - 631.81 MiB/sec @ 3 ghz -Alignment 5 - 0.185 bytes/cycle - 529.31 MiB/sec @ 3 ghz -Alignment 4 - 0.192 bytes/cycle - 548.20 MiB/sec @ 3 ghz -Alignment 3 - 0.189 bytes/cycle - 541.15 MiB/sec @ 3 ghz -Alignment 2 - 0.187 bytes/cycle - 533.66 MiB/sec @ 3 ghz -Alignment 1 - 0.179 bytes/cycle - 513.39 MiB/sec @ 3 ghz -Alignment 0 - 0.182 bytes/cycle - 519.96 MiB/sec @ 3 ghz -Average - 0.194 bytes/cycle - 556.16 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 18.00 cycles/hash -Small key speed test - 2-byte keys - 22.53 cycles/hash -Small key speed test - 3-byte keys - 24.11 cycles/hash -Small key speed test - 4-byte keys - 29.83 cycles/hash -Small key speed test - 5-byte keys - 41.00 cycles/hash -Small key speed test - 6-byte keys - 46.00 cycles/hash -Small key speed test - 7-byte keys - 49.26 cycles/hash +Alignment 7 - 0.220 bytes/cycle - 628.65 MiB/sec @ 3 ghz +Alignment 6 - 0.220 bytes/cycle - 628.66 MiB/sec @ 3 ghz +Alignment 5 - 0.220 bytes/cycle - 628.72 MiB/sec @ 3 ghz +Alignment 4 - 0.220 bytes/cycle - 628.64 MiB/sec @ 3 ghz +Alignment 3 - 0.220 bytes/cycle - 628.71 MiB/sec @ 3 ghz +Alignment 2 - 0.220 bytes/cycle - 628.61 MiB/sec @ 3 ghz +Alignment 1 - 0.220 bytes/cycle - 628.76 MiB/sec @ 3 ghz +Alignment 0 - 0.220 bytes/cycle - 628.55 MiB/sec @ 3 ghz +Average - 0.220 bytes/cycle - 628.66 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 14.97 cycles/hash +Small key speed test - 2-byte keys - 19.00 cycles/hash +Small key speed test - 3-byte keys - 24.00 cycles/hash +Small key speed test - 4-byte keys - 28.17 cycles/hash +Small key speed test - 5-byte keys - 33.00 cycles/hash +Small key speed test - 6-byte keys - 37.15 cycles/hash +Small key speed test - 7-byte keys - 42.00 cycles/hash Small key speed test - 8-byte keys - 46.00 cycles/hash -Small key speed test - 9-byte keys - 50.94 cycles/hash +Small key speed test - 9-byte keys - 50.99 cycles/hash Small key speed test - 10-byte keys - 55.00 cycles/hash -Small key speed test - 11-byte keys - 60.00 cycles/hash -Small key speed test - 12-byte keys - 64.98 cycles/hash -Small key speed test - 13-byte keys - 68.87 cycles/hash -Small key speed test - 14-byte keys - 73.68 cycles/hash -Small key speed test - 15-byte keys - 78.61 cycles/hash -Small key speed test - 16-byte keys - 82.72 cycles/hash -Small key speed test - 17-byte keys - 87.42 cycles/hash -Small key speed test - 18-byte keys - 91.73 cycles/hash -Small key speed test - 19-byte keys - 96.40 cycles/hash -Small key speed test - 20-byte keys - 100.90 cycles/hash -Small key speed test - 21-byte keys - 118.55 cycles/hash -Small key speed test - 22-byte keys - 136.00 cycles/hash -Small key speed test - 23-byte keys - 135.08 cycles/hash -Small key speed test - 24-byte keys - 119.11 cycles/hash -Small key speed test - 25-byte keys - 123.36 cycles/hash -Small key speed test - 26-byte keys - 159.00 cycles/hash -Small key speed test - 27-byte keys - 161.10 cycles/hash -Small key speed test - 28-byte keys - 135.99 cycles/hash -Small key speed test - 29-byte keys - 141.66 cycles/hash -Small key speed test - 30-byte keys - 145.64 cycles/hash -Small key speed test - 31-byte keys - 150.80 cycles/hash -Average 87.557 cycles/hash +Small key speed test - 11-byte keys - 60.11 cycles/hash +Small key speed test - 12-byte keys - 64.95 cycles/hash +Small key speed test - 13-byte keys - 68.96 cycles/hash +Small key speed test - 14-byte keys - 73.87 cycles/hash +Small key speed test - 15-byte keys - 78.69 cycles/hash +Small key speed test - 16-byte keys - 82.89 cycles/hash +Small key speed test - 17-byte keys - 87.84 cycles/hash +Small key speed test - 18-byte keys - 91.91 cycles/hash +Small key speed test - 19-byte keys - 96.72 cycles/hash +Small key speed test - 20-byte keys - 100.96 cycles/hash +Small key speed test - 21-byte keys - 105.75 cycles/hash +Small key speed test - 22-byte keys - 110.00 cycles/hash +Small key speed test - 23-byte keys - 114.64 cycles/hash +Small key speed test - 24-byte keys - 119.45 cycles/hash +Small key speed test - 25-byte keys - 123.65 cycles/hash +Small key speed test - 26-byte keys - 128.59 cycles/hash +Small key speed test - 27-byte keys - 132.91 cycles/hash +Small key speed test - 28-byte keys - 136.84 cycles/hash +Small key speed test - 29-byte keys - 173.29 cycles/hash +Small key speed test - 30-byte keys - 181.00 cycles/hash +Small key speed test - 31-byte keys - 150.23 cycles/hash +Average 84.952 cycles/hash [[[ 'Hashmap' Speed Tests ]]] diff --git a/doc/lookup3.txt b/doc/lookup3.txt index 2f608845..6af428d4 100644 --- a/doc/lookup3.txt +++ b/doc/lookup3.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 0.579 bytes/cycle - 1656.92 MiB/sec @ 3 ghz -Alignment 6 - 0.579 bytes/cycle - 1656.90 MiB/sec @ 3 ghz -Alignment 5 - 0.579 bytes/cycle - 1656.94 MiB/sec @ 3 ghz -Alignment 4 - 0.581 bytes/cycle - 1662.21 MiB/sec @ 3 ghz -Alignment 3 - 0.579 bytes/cycle - 1656.83 MiB/sec @ 3 ghz -Alignment 2 - 0.579 bytes/cycle - 1656.84 MiB/sec @ 3 ghz -Alignment 1 - 0.579 bytes/cycle - 1656.79 MiB/sec @ 3 ghz -Alignment 0 - 0.581 bytes/cycle - 1662.47 MiB/sec @ 3 ghz -Average - 0.580 bytes/cycle - 1658.24 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 30.00 cycles/hash -Small key speed test - 2-byte keys - 30.00 cycles/hash -Small key speed test - 3-byte keys - 31.00 cycles/hash -Small key speed test - 4-byte keys - 30.17 cycles/hash -Small key speed test - 5-byte keys - 31.50 cycles/hash -Small key speed test - 6-byte keys - 31.96 cycles/hash -Small key speed test - 7-byte keys - 31.64 cycles/hash -Small key speed test - 8-byte keys - 31.00 cycles/hash -Small key speed test - 9-byte keys - 31.00 cycles/hash -Small key speed test - 10-byte keys - 31.00 cycles/hash -Small key speed test - 11-byte keys - 31.00 cycles/hash -Small key speed test - 12-byte keys - 31.54 cycles/hash -Small key speed test - 13-byte keys - 50.00 cycles/hash -Small key speed test - 14-byte keys - 50.00 cycles/hash -Small key speed test - 15-byte keys - 49.60 cycles/hash -Small key speed test - 16-byte keys - 49.00 cycles/hash -Small key speed test - 17-byte keys - 50.00 cycles/hash -Small key speed test - 18-byte keys - 50.00 cycles/hash -Small key speed test - 19-byte keys - 50.00 cycles/hash -Small key speed test - 20-byte keys - 50.56 cycles/hash -Small key speed test - 21-byte keys - 50.73 cycles/hash -Small key speed test - 22-byte keys - 50.52 cycles/hash -Small key speed test - 23-byte keys - 50.29 cycles/hash -Small key speed test - 24-byte keys - 50.58 cycles/hash -Small key speed test - 25-byte keys - 70.23 cycles/hash -Small key speed test - 26-byte keys - 71.00 cycles/hash -Small key speed test - 27-byte keys - 70.73 cycles/hash -Small key speed test - 28-byte keys - 71.00 cycles/hash -Small key speed test - 29-byte keys - 71.50 cycles/hash -Small key speed test - 30-byte keys - 71.00 cycles/hash -Small key speed test - 31-byte keys - 71.00 cycles/hash -Average 47.405 cycles/hash +Alignment 7 - 0.865 bytes/cycle - 2475.17 MiB/sec @ 3 ghz +Alignment 6 - 0.865 bytes/cycle - 2476.18 MiB/sec @ 3 ghz +Alignment 5 - 0.865 bytes/cycle - 2475.80 MiB/sec @ 3 ghz +Alignment 4 - 0.865 bytes/cycle - 2475.15 MiB/sec @ 3 ghz +Alignment 3 - 0.865 bytes/cycle - 2475.31 MiB/sec @ 3 ghz +Alignment 2 - 0.864 bytes/cycle - 2472.67 MiB/sec @ 3 ghz +Alignment 1 - 0.866 bytes/cycle - 2477.16 MiB/sec @ 3 ghz +Alignment 0 - 0.865 bytes/cycle - 2475.37 MiB/sec @ 3 ghz +Average - 0.865 bytes/cycle - 2475.35 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 26.80 cycles/hash +Small key speed test - 2-byte keys - 26.71 cycles/hash +Small key speed test - 3-byte keys - 27.34 cycles/hash +Small key speed test - 4-byte keys - 26.80 cycles/hash +Small key speed test - 5-byte keys - 29.00 cycles/hash +Small key speed test - 6-byte keys - 28.99 cycles/hash +Small key speed test - 7-byte keys - 29.84 cycles/hash +Small key speed test - 8-byte keys - 28.19 cycles/hash +Small key speed test - 9-byte keys - 29.00 cycles/hash +Small key speed test - 10-byte keys - 29.00 cycles/hash +Small key speed test - 11-byte keys - 30.00 cycles/hash +Small key speed test - 12-byte keys - 29.00 cycles/hash +Small key speed test - 13-byte keys - 41.00 cycles/hash +Small key speed test - 14-byte keys - 41.00 cycles/hash +Small key speed test - 15-byte keys - 41.00 cycles/hash +Small key speed test - 16-byte keys - 41.57 cycles/hash +Small key speed test - 17-byte keys - 41.67 cycles/hash +Small key speed test - 18-byte keys - 41.60 cycles/hash +Small key speed test - 19-byte keys - 42.00 cycles/hash +Small key speed test - 20-byte keys - 41.58 cycles/hash +Small key speed test - 21-byte keys - 42.58 cycles/hash +Small key speed test - 22-byte keys - 42.65 cycles/hash +Small key speed test - 23-byte keys - 42.00 cycles/hash +Small key speed test - 24-byte keys - 42.00 cycles/hash +Small key speed test - 25-byte keys - 55.00 cycles/hash +Small key speed test - 26-byte keys - 55.00 cycles/hash +Small key speed test - 27-byte keys - 55.00 cycles/hash +Small key speed test - 28-byte keys - 55.12 cycles/hash +Small key speed test - 29-byte keys - 55.73 cycles/hash +Small key speed test - 30-byte keys - 55.85 cycles/hash +Small key speed test - 31-byte keys - 56.00 cycles/hash +Average 39.645 cycles/hash [[[ 'Hashmap' Speed Tests (when inlined) ]]] diff --git a/doc/metrohash128.txt b/doc/metrohash128.txt index 1f570daf..6e4e6c05 100644 --- a/doc/metrohash128.txt +++ b/doc/metrohash128.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 3.318 bytes/cycle - 9491.58 MiB/sec @ 3 ghz -Alignment 6 - 3.318 bytes/cycle - 9491.59 MiB/sec @ 3 ghz -Alignment 5 - 3.318 bytes/cycle - 9491.71 MiB/sec @ 3 ghz -Alignment 4 - 3.318 bytes/cycle - 9491.54 MiB/sec @ 3 ghz -Alignment 3 - 3.318 bytes/cycle - 9491.48 MiB/sec @ 3 ghz -Alignment 2 - 3.317 bytes/cycle - 9491.34 MiB/sec @ 3 ghz -Alignment 1 - 3.318 bytes/cycle - 9491.75 MiB/sec @ 3 ghz -Alignment 0 - 3.483 bytes/cycle - 9964.10 MiB/sec @ 3 ghz -Average - 3.338 bytes/cycle - 9550.64 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 40.00 cycles/hash -Small key speed test - 2-byte keys - 42.00 cycles/hash -Small key speed test - 3-byte keys - 46.00 cycles/hash -Small key speed test - 4-byte keys - 39.00 cycles/hash -Small key speed test - 5-byte keys - 50.00 cycles/hash -Small key speed test - 6-byte keys - 48.00 cycles/hash -Small key speed test - 7-byte keys - 52.00 cycles/hash -Small key speed test - 8-byte keys - 52.00 cycles/hash -Small key speed test - 9-byte keys - 56.00 cycles/hash -Small key speed test - 10-byte keys - 63.00 cycles/hash -Small key speed test - 11-byte keys - 66.00 cycles/hash -Small key speed test - 12-byte keys - 55.48 cycles/hash -Small key speed test - 13-byte keys - 65.48 cycles/hash -Small key speed test - 14-byte keys - 64.00 cycles/hash -Small key speed test - 15-byte keys - 67.00 cycles/hash -Small key speed test - 16-byte keys - 55.63 cycles/hash -Small key speed test - 17-byte keys - 66.00 cycles/hash -Small key speed test - 18-byte keys - 65.00 cycles/hash -Small key speed test - 19-byte keys - 67.00 cycles/hash -Small key speed test - 20-byte keys - 66.00 cycles/hash -Small key speed test - 21-byte keys - 75.98 cycles/hash -Small key speed test - 22-byte keys - 74.00 cycles/hash -Small key speed test - 23-byte keys - 78.00 cycles/hash -Small key speed test - 24-byte keys - 65.00 cycles/hash -Small key speed test - 25-byte keys - 67.00 cycles/hash -Small key speed test - 26-byte keys - 75.00 cycles/hash -Small key speed test - 27-byte keys - 78.00 cycles/hash -Small key speed test - 28-byte keys - 67.74 cycles/hash -Small key speed test - 29-byte keys - 78.13 cycles/hash -Small key speed test - 30-byte keys - 77.00 cycles/hash -Small key speed test - 31-byte keys - 79.18 cycles/hash -Average 62.600 cycles/hash +Alignment 7 - 5.456 bytes/cycle - 15610.57 MiB/sec @ 3 ghz +Alignment 6 - 5.451 bytes/cycle - 15595.62 MiB/sec @ 3 ghz +Alignment 5 - 5.457 bytes/cycle - 15611.57 MiB/sec @ 3 ghz +Alignment 4 - 5.452 bytes/cycle - 15599.30 MiB/sec @ 3 ghz +Alignment 3 - 5.450 bytes/cycle - 15593.09 MiB/sec @ 3 ghz +Alignment 2 - 5.455 bytes/cycle - 15605.68 MiB/sec @ 3 ghz +Alignment 1 - 5.452 bytes/cycle - 15597.18 MiB/sec @ 3 ghz +Alignment 0 - 5.545 bytes/cycle - 15864.29 MiB/sec @ 3 ghz +Average - 5.465 bytes/cycle - 15634.66 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 58.52 cycles/hash +Small key speed test - 2-byte keys - 60.00 cycles/hash +Small key speed test - 3-byte keys - 62.66 cycles/hash +Small key speed test - 4-byte keys - 57.00 cycles/hash +Small key speed test - 5-byte keys - 68.00 cycles/hash +Small key speed test - 6-byte keys - 65.98 cycles/hash +Small key speed test - 7-byte keys - 70.00 cycles/hash +Small key speed test - 8-byte keys - 59.86 cycles/hash +Small key speed test - 9-byte keys - 63.00 cycles/hash +Small key speed test - 10-byte keys - 70.23 cycles/hash +Small key speed test - 11-byte keys - 74.18 cycles/hash +Small key speed test - 12-byte keys - 63.00 cycles/hash +Small key speed test - 13-byte keys - 73.96 cycles/hash +Small key speed test - 14-byte keys - 72.00 cycles/hash +Small key speed test - 15-byte keys - 75.46 cycles/hash +Small key speed test - 16-byte keys - 65.00 cycles/hash +Small key speed test - 17-byte keys - 75.29 cycles/hash +Small key speed test - 18-byte keys - 73.93 cycles/hash +Small key speed test - 19-byte keys - 77.00 cycles/hash +Small key speed test - 20-byte keys - 74.97 cycles/hash +Small key speed test - 21-byte keys - 85.00 cycles/hash +Small key speed test - 22-byte keys - 83.99 cycles/hash +Small key speed test - 23-byte keys - 86.41 cycles/hash +Small key speed test - 24-byte keys - 73.00 cycles/hash +Small key speed test - 25-byte keys - 76.00 cycles/hash +Small key speed test - 26-byte keys - 83.88 cycles/hash +Small key speed test - 27-byte keys - 86.58 cycles/hash +Small key speed test - 28-byte keys - 77.00 cycles/hash +Small key speed test - 29-byte keys - 86.96 cycles/hash +Small key speed test - 30-byte keys - 85.00 cycles/hash +Small key speed test - 31-byte keys - 87.99 cycles/hash +Average 73.285 cycles/hash [[[ 'Hashmap' Speed Tests (when inlined) ]]] diff --git a/doc/metrohash128_1.txt b/doc/metrohash128_1.txt index 7e387fd5..503ae7f0 100644 --- a/doc/metrohash128_1.txt +++ b/doc/metrohash128_1.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 3.324 bytes/cycle - 9508.95 MiB/sec @ 3 ghz -Alignment 6 - 3.324 bytes/cycle - 9509.31 MiB/sec @ 3 ghz -Alignment 5 - 3.324 bytes/cycle - 9509.06 MiB/sec @ 3 ghz -Alignment 4 - 3.324 bytes/cycle - 9509.27 MiB/sec @ 3 ghz -Alignment 3 - 3.323 bytes/cycle - 9508.31 MiB/sec @ 3 ghz -Alignment 2 - 3.324 bytes/cycle - 9509.20 MiB/sec @ 3 ghz -Alignment 1 - 3.324 bytes/cycle - 9509.24 MiB/sec @ 3 ghz -Alignment 0 - 3.493 bytes/cycle - 9992.90 MiB/sec @ 3 ghz -Average - 3.345 bytes/cycle - 9569.53 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 41.00 cycles/hash -Small key speed test - 2-byte keys - 42.00 cycles/hash -Small key speed test - 3-byte keys - 47.00 cycles/hash -Small key speed test - 4-byte keys - 40.00 cycles/hash -Small key speed test - 5-byte keys - 51.00 cycles/hash -Small key speed test - 6-byte keys - 49.00 cycles/hash -Small key speed test - 7-byte keys - 53.00 cycles/hash -Small key speed test - 8-byte keys - 52.00 cycles/hash -Small key speed test - 9-byte keys - 56.00 cycles/hash -Small key speed test - 10-byte keys - 63.47 cycles/hash -Small key speed test - 11-byte keys - 66.00 cycles/hash -Small key speed test - 12-byte keys - 56.00 cycles/hash -Small key speed test - 13-byte keys - 65.53 cycles/hash -Small key speed test - 14-byte keys - 64.00 cycles/hash -Small key speed test - 15-byte keys - 67.00 cycles/hash -Small key speed test - 16-byte keys - 56.85 cycles/hash -Small key speed test - 17-byte keys - 66.00 cycles/hash -Small key speed test - 18-byte keys - 64.47 cycles/hash -Small key speed test - 19-byte keys - 67.22 cycles/hash -Small key speed test - 20-byte keys - 65.98 cycles/hash -Small key speed test - 21-byte keys - 75.97 cycles/hash -Small key speed test - 22-byte keys - 74.49 cycles/hash -Small key speed test - 23-byte keys - 78.00 cycles/hash -Small key speed test - 24-byte keys - 64.00 cycles/hash -Small key speed test - 25-byte keys - 67.68 cycles/hash -Small key speed test - 26-byte keys - 75.00 cycles/hash -Small key speed test - 27-byte keys - 77.49 cycles/hash -Small key speed test - 28-byte keys - 67.00 cycles/hash -Small key speed test - 29-byte keys - 78.00 cycles/hash -Small key speed test - 30-byte keys - 76.00 cycles/hash -Small key speed test - 31-byte keys - 80.00 cycles/hash -Average 62.811 cycles/hash +Alignment 7 - 5.501 bytes/cycle - 15739.83 MiB/sec @ 3 ghz +Alignment 6 - 5.510 bytes/cycle - 15764.50 MiB/sec @ 3 ghz +Alignment 5 - 5.514 bytes/cycle - 15775.42 MiB/sec @ 3 ghz +Alignment 4 - 5.511 bytes/cycle - 15768.46 MiB/sec @ 3 ghz +Alignment 3 - 5.510 bytes/cycle - 15762.99 MiB/sec @ 3 ghz +Alignment 2 - 5.512 bytes/cycle - 15770.37 MiB/sec @ 3 ghz +Alignment 1 - 5.508 bytes/cycle - 15759.24 MiB/sec @ 3 ghz +Alignment 0 - 5.633 bytes/cycle - 16114.92 MiB/sec @ 3 ghz +Average - 5.525 bytes/cycle - 15806.97 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 56.28 cycles/hash +Small key speed test - 2-byte keys - 59.19 cycles/hash +Small key speed test - 3-byte keys - 62.00 cycles/hash +Small key speed test - 4-byte keys - 56.00 cycles/hash +Small key speed test - 5-byte keys - 67.00 cycles/hash +Small key speed test - 6-byte keys - 64.71 cycles/hash +Small key speed test - 7-byte keys - 68.49 cycles/hash +Small key speed test - 8-byte keys - 59.00 cycles/hash +Small key speed test - 9-byte keys - 62.93 cycles/hash +Small key speed test - 10-byte keys - 69.75 cycles/hash +Small key speed test - 11-byte keys - 72.88 cycles/hash +Small key speed test - 12-byte keys - 62.00 cycles/hash +Small key speed test - 13-byte keys - 73.00 cycles/hash +Small key speed test - 14-byte keys - 70.89 cycles/hash +Small key speed test - 15-byte keys - 74.80 cycles/hash +Small key speed test - 16-byte keys - 64.00 cycles/hash +Small key speed test - 17-byte keys - 75.00 cycles/hash +Small key speed test - 18-byte keys - 72.24 cycles/hash +Small key speed test - 19-byte keys - 74.07 cycles/hash +Small key speed test - 20-byte keys - 75.83 cycles/hash +Small key speed test - 21-byte keys - 85.11 cycles/hash +Small key speed test - 22-byte keys - 81.71 cycles/hash +Small key speed test - 23-byte keys - 84.99 cycles/hash +Small key speed test - 24-byte keys - 73.45 cycles/hash +Small key speed test - 25-byte keys - 76.98 cycles/hash +Small key speed test - 26-byte keys - 82.74 cycles/hash +Small key speed test - 27-byte keys - 85.00 cycles/hash +Small key speed test - 28-byte keys - 75.00 cycles/hash +Small key speed test - 29-byte keys - 85.76 cycles/hash +Small key speed test - 30-byte keys - 83.75 cycles/hash +Small key speed test - 31-byte keys - 86.80 cycles/hash +Average 72.301 cycles/hash [[[ 'Hashmap' Speed Tests (when inlined) ]]] diff --git a/doc/metrohash128_2.txt b/doc/metrohash128_2.txt index f84e8ddb..438ae905 100644 --- a/doc/metrohash128_2.txt +++ b/doc/metrohash128_2.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 3.245 bytes/cycle - 9284.34 MiB/sec @ 3 ghz -Alignment 6 - 3.245 bytes/cycle - 9284.42 MiB/sec @ 3 ghz -Alignment 5 - 3.245 bytes/cycle - 9284.23 MiB/sec @ 3 ghz -Alignment 4 - 3.245 bytes/cycle - 9284.27 MiB/sec @ 3 ghz -Alignment 3 - 3.245 bytes/cycle - 9283.89 MiB/sec @ 3 ghz -Alignment 2 - 3.245 bytes/cycle - 9284.31 MiB/sec @ 3 ghz -Alignment 1 - 3.245 bytes/cycle - 9284.32 MiB/sec @ 3 ghz -Alignment 0 - 3.404 bytes/cycle - 9739.44 MiB/sec @ 3 ghz -Average - 3.265 bytes/cycle - 9341.15 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 41.00 cycles/hash -Small key speed test - 2-byte keys - 42.00 cycles/hash -Small key speed test - 3-byte keys - 47.00 cycles/hash -Small key speed test - 4-byte keys - 40.00 cycles/hash -Small key speed test - 5-byte keys - 51.00 cycles/hash -Small key speed test - 6-byte keys - 49.00 cycles/hash -Small key speed test - 7-byte keys - 53.00 cycles/hash -Small key speed test - 8-byte keys - 52.00 cycles/hash -Small key speed test - 9-byte keys - 56.00 cycles/hash -Small key speed test - 10-byte keys - 63.98 cycles/hash -Small key speed test - 11-byte keys - 66.00 cycles/hash -Small key speed test - 12-byte keys - 56.00 cycles/hash -Small key speed test - 13-byte keys - 65.65 cycles/hash -Small key speed test - 14-byte keys - 64.00 cycles/hash -Small key speed test - 15-byte keys - 67.00 cycles/hash -Small key speed test - 16-byte keys - 56.00 cycles/hash -Small key speed test - 17-byte keys - 66.00 cycles/hash -Small key speed test - 18-byte keys - 64.27 cycles/hash -Small key speed test - 19-byte keys - 67.41 cycles/hash -Small key speed test - 20-byte keys - 65.94 cycles/hash -Small key speed test - 21-byte keys - 76.00 cycles/hash -Small key speed test - 22-byte keys - 74.94 cycles/hash -Small key speed test - 23-byte keys - 78.00 cycles/hash -Small key speed test - 24-byte keys - 64.00 cycles/hash -Small key speed test - 25-byte keys - 67.99 cycles/hash -Small key speed test - 26-byte keys - 75.00 cycles/hash -Small key speed test - 27-byte keys - 78.00 cycles/hash -Small key speed test - 28-byte keys - 68.00 cycles/hash -Small key speed test - 29-byte keys - 78.00 cycles/hash -Small key speed test - 30-byte keys - 76.81 cycles/hash -Small key speed test - 31-byte keys - 80.00 cycles/hash -Average 62.903 cycles/hash +Alignment 7 - 5.502 bytes/cycle - 15741.29 MiB/sec @ 3 ghz +Alignment 6 - 5.518 bytes/cycle - 15787.56 MiB/sec @ 3 ghz +Alignment 5 - 5.515 bytes/cycle - 15777.74 MiB/sec @ 3 ghz +Alignment 4 - 5.518 bytes/cycle - 15786.60 MiB/sec @ 3 ghz +Alignment 3 - 5.515 bytes/cycle - 15779.23 MiB/sec @ 3 ghz +Alignment 2 - 5.513 bytes/cycle - 15773.38 MiB/sec @ 3 ghz +Alignment 1 - 5.518 bytes/cycle - 15786.47 MiB/sec @ 3 ghz +Alignment 0 - 5.644 bytes/cycle - 16148.52 MiB/sec @ 3 ghz +Average - 5.530 bytes/cycle - 15822.60 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 56.19 cycles/hash +Small key speed test - 2-byte keys - 59.22 cycles/hash +Small key speed test - 3-byte keys - 61.69 cycles/hash +Small key speed test - 4-byte keys - 56.47 cycles/hash +Small key speed test - 5-byte keys - 67.13 cycles/hash +Small key speed test - 6-byte keys - 64.68 cycles/hash +Small key speed test - 7-byte keys - 68.52 cycles/hash +Small key speed test - 8-byte keys - 59.16 cycles/hash +Small key speed test - 9-byte keys - 63.00 cycles/hash +Small key speed test - 10-byte keys - 69.62 cycles/hash +Small key speed test - 11-byte keys - 72.97 cycles/hash +Small key speed test - 12-byte keys - 62.00 cycles/hash +Small key speed test - 13-byte keys - 73.00 cycles/hash +Small key speed test - 14-byte keys - 70.83 cycles/hash +Small key speed test - 15-byte keys - 74.91 cycles/hash +Small key speed test - 16-byte keys - 64.00 cycles/hash +Small key speed test - 17-byte keys - 75.00 cycles/hash +Small key speed test - 18-byte keys - 72.00 cycles/hash +Small key speed test - 19-byte keys - 74.09 cycles/hash +Small key speed test - 20-byte keys - 75.66 cycles/hash +Small key speed test - 21-byte keys - 85.13 cycles/hash +Small key speed test - 22-byte keys - 81.72 cycles/hash +Small key speed test - 23-byte keys - 84.99 cycles/hash +Small key speed test - 24-byte keys - 73.33 cycles/hash +Small key speed test - 25-byte keys - 76.96 cycles/hash +Small key speed test - 26-byte keys - 82.71 cycles/hash +Small key speed test - 27-byte keys - 85.00 cycles/hash +Small key speed test - 28-byte keys - 75.00 cycles/hash +Small key speed test - 29-byte keys - 85.70 cycles/hash +Small key speed test - 30-byte keys - 83.74 cycles/hash +Small key speed test - 31-byte keys - 86.71 cycles/hash +Average 72.295 cycles/hash [[[ 'Hashmap' Speed Tests (when inlined) ]]] diff --git a/doc/metrohash128crc_1.txt b/doc/metrohash128crc_1.txt index ae553d6f..8a5f9a74 100644 --- a/doc/metrohash128crc_1.txt +++ b/doc/metrohash128crc_1.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 4.889 bytes/cycle - 13988.23 MiB/sec @ 3 ghz -Alignment 6 - 4.889 bytes/cycle - 13987.95 MiB/sec @ 3 ghz -Alignment 5 - 4.889 bytes/cycle - 13988.71 MiB/sec @ 3 ghz -Alignment 4 - 4.890 bytes/cycle - 13990.40 MiB/sec @ 3 ghz -Alignment 3 - 4.889 bytes/cycle - 13987.84 MiB/sec @ 3 ghz -Alignment 2 - 4.889 bytes/cycle - 13988.29 MiB/sec @ 3 ghz -Alignment 1 - 4.889 bytes/cycle - 13987.78 MiB/sec @ 3 ghz -Alignment 0 - 4.979 bytes/cycle - 14244.70 MiB/sec @ 3 ghz -Average - 4.901 bytes/cycle - 14020.49 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 41.00 cycles/hash -Small key speed test - 2-byte keys - 45.00 cycles/hash -Small key speed test - 3-byte keys - 54.00 cycles/hash -Small key speed test - 4-byte keys - 41.00 cycles/hash -Small key speed test - 5-byte keys - 50.16 cycles/hash -Small key speed test - 6-byte keys - 56.54 cycles/hash -Small key speed test - 7-byte keys - 67.00 cycles/hash -Small key speed test - 8-byte keys - 54.00 cycles/hash -Small key speed test - 9-byte keys - 63.00 cycles/hash -Small key speed test - 10-byte keys - 63.00 cycles/hash -Small key speed test - 11-byte keys - 72.00 cycles/hash -Small key speed test - 12-byte keys - 63.65 cycles/hash -Small key speed test - 13-byte keys - 72.00 cycles/hash -Small key speed test - 14-byte keys - 79.00 cycles/hash -Small key speed test - 15-byte keys - 88.00 cycles/hash -Small key speed test - 16-byte keys - 57.00 cycles/hash -Small key speed test - 17-byte keys - 65.00 cycles/hash -Small key speed test - 18-byte keys - 72.00 cycles/hash -Small key speed test - 19-byte keys - 80.87 cycles/hash -Small key speed test - 20-byte keys - 65.00 cycles/hash -Small key speed test - 21-byte keys - 74.00 cycles/hash -Small key speed test - 22-byte keys - 80.54 cycles/hash -Small key speed test - 23-byte keys - 90.00 cycles/hash -Small key speed test - 24-byte keys - 65.00 cycles/hash -Small key speed test - 25-byte keys - 75.00 cycles/hash -Small key speed test - 26-byte keys - 74.00 cycles/hash -Small key speed test - 27-byte keys - 84.00 cycles/hash -Small key speed test - 28-byte keys - 75.00 cycles/hash -Small key speed test - 29-byte keys - 84.00 cycles/hash -Small key speed test - 30-byte keys - 90.00 cycles/hash -Small key speed test - 31-byte keys - 100.00 cycles/hash -Average 69.056 cycles/hash +Alignment 7 - 2.817 bytes/cycle - 8060.30 MiB/sec @ 3 ghz +Alignment 6 - 2.820 bytes/cycle - 8067.75 MiB/sec @ 3 ghz +Alignment 5 - 2.822 bytes/cycle - 8074.61 MiB/sec @ 3 ghz +Alignment 4 - 2.821 bytes/cycle - 8071.14 MiB/sec @ 3 ghz +Alignment 3 - 2.822 bytes/cycle - 8074.33 MiB/sec @ 3 ghz +Alignment 2 - 2.821 bytes/cycle - 8070.30 MiB/sec @ 3 ghz +Alignment 1 - 2.821 bytes/cycle - 8071.84 MiB/sec @ 3 ghz +Alignment 0 - 2.651 bytes/cycle - 7583.54 MiB/sec @ 3 ghz +Average - 2.799 bytes/cycle - 8009.23 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 58.00 cycles/hash +Small key speed test - 2-byte keys - 60.91 cycles/hash +Small key speed test - 3-byte keys - 70.42 cycles/hash +Small key speed test - 4-byte keys - 57.00 cycles/hash +Small key speed test - 5-byte keys - 66.97 cycles/hash +Small key speed test - 6-byte keys - 72.24 cycles/hash +Small key speed test - 7-byte keys - 82.00 cycles/hash +Small key speed test - 8-byte keys - 60.00 cycles/hash +Small key speed test - 9-byte keys - 69.96 cycles/hash +Small key speed test - 10-byte keys - 70.00 cycles/hash +Small key speed test - 11-byte keys - 78.15 cycles/hash +Small key speed test - 12-byte keys - 69.18 cycles/hash +Small key speed test - 13-byte keys - 77.96 cycles/hash +Small key speed test - 14-byte keys - 84.87 cycles/hash +Small key speed test - 15-byte keys - 92.61 cycles/hash +Small key speed test - 16-byte keys - 64.99 cycles/hash +Small key speed test - 17-byte keys - 75.00 cycles/hash +Small key speed test - 18-byte keys - 80.94 cycles/hash +Small key speed test - 19-byte keys - 88.25 cycles/hash +Small key speed test - 20-byte keys - 74.16 cycles/hash +Small key speed test - 21-byte keys - 83.24 cycles/hash +Small key speed test - 22-byte keys - 90.25 cycles/hash +Small key speed test - 23-byte keys - 98.44 cycles/hash +Small key speed test - 24-byte keys - 74.62 cycles/hash +Small key speed test - 25-byte keys - 82.00 cycles/hash +Small key speed test - 26-byte keys - 85.16 cycles/hash +Small key speed test - 27-byte keys - 91.85 cycles/hash +Small key speed test - 28-byte keys - 83.99 cycles/hash +Small key speed test - 29-byte keys - 91.79 cycles/hash +Small key speed test - 30-byte keys - 97.47 cycles/hash +Small key speed test - 31-byte keys - 108.00 cycles/hash +Average 78.723 cycles/hash [[[ 'Hashmap' Speed Tests (when inlined) ]]] diff --git a/doc/metrohash128crc_2.txt b/doc/metrohash128crc_2.txt index 51e80d71..210b7a9e 100644 --- a/doc/metrohash128crc_2.txt +++ b/doc/metrohash128crc_2.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 4.828 bytes/cycle - 13814.21 MiB/sec @ 3 ghz -Alignment 6 - 4.828 bytes/cycle - 13812.98 MiB/sec @ 3 ghz -Alignment 5 - 4.828 bytes/cycle - 13812.92 MiB/sec @ 3 ghz -Alignment 4 - 4.829 bytes/cycle - 13814.68 MiB/sec @ 3 ghz -Alignment 3 - 4.828 bytes/cycle - 13811.94 MiB/sec @ 3 ghz -Alignment 2 - 4.828 bytes/cycle - 13813.76 MiB/sec @ 3 ghz -Alignment 1 - 4.828 bytes/cycle - 13813.04 MiB/sec @ 3 ghz -Alignment 0 - 4.920 bytes/cycle - 14075.27 MiB/sec @ 3 ghz -Average - 4.840 bytes/cycle - 13846.10 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 41.00 cycles/hash -Small key speed test - 2-byte keys - 45.00 cycles/hash -Small key speed test - 3-byte keys - 54.00 cycles/hash -Small key speed test - 4-byte keys - 41.00 cycles/hash -Small key speed test - 5-byte keys - 50.00 cycles/hash -Small key speed test - 6-byte keys - 56.00 cycles/hash -Small key speed test - 7-byte keys - 67.17 cycles/hash -Small key speed test - 8-byte keys - 53.97 cycles/hash -Small key speed test - 9-byte keys - 63.00 cycles/hash -Small key speed test - 10-byte keys - 63.00 cycles/hash -Small key speed test - 11-byte keys - 72.00 cycles/hash -Small key speed test - 12-byte keys - 63.00 cycles/hash -Small key speed test - 13-byte keys - 72.00 cycles/hash -Small key speed test - 14-byte keys - 79.00 cycles/hash -Small key speed test - 15-byte keys - 88.00 cycles/hash -Small key speed test - 16-byte keys - 57.00 cycles/hash -Small key speed test - 17-byte keys - 65.00 cycles/hash -Small key speed test - 18-byte keys - 72.00 cycles/hash -Small key speed test - 19-byte keys - 80.88 cycles/hash -Small key speed test - 20-byte keys - 65.00 cycles/hash -Small key speed test - 21-byte keys - 74.00 cycles/hash -Small key speed test - 22-byte keys - 80.44 cycles/hash -Small key speed test - 23-byte keys - 90.00 cycles/hash -Small key speed test - 24-byte keys - 65.00 cycles/hash -Small key speed test - 25-byte keys - 75.00 cycles/hash -Small key speed test - 26-byte keys - 74.00 cycles/hash -Small key speed test - 27-byte keys - 84.00 cycles/hash -Small key speed test - 28-byte keys - 75.00 cycles/hash -Small key speed test - 29-byte keys - 84.00 cycles/hash -Small key speed test - 30-byte keys - 90.00 cycles/hash -Small key speed test - 31-byte keys - 100.00 cycles/hash -Average 69.015 cycles/hash +Alignment 7 - 2.767 bytes/cycle - 7915.08 MiB/sec @ 3 ghz +Alignment 6 - 2.775 bytes/cycle - 7938.84 MiB/sec @ 3 ghz +Alignment 5 - 2.776 bytes/cycle - 7941.51 MiB/sec @ 3 ghz +Alignment 4 - 2.777 bytes/cycle - 7945.38 MiB/sec @ 3 ghz +Alignment 3 - 2.772 bytes/cycle - 7931.37 MiB/sec @ 3 ghz +Alignment 2 - 2.777 bytes/cycle - 7945.60 MiB/sec @ 3 ghz +Alignment 1 - 2.778 bytes/cycle - 7946.69 MiB/sec @ 3 ghz +Alignment 0 - 2.608 bytes/cycle - 7461.29 MiB/sec @ 3 ghz +Average - 2.754 bytes/cycle - 7878.22 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 59.13 cycles/hash +Small key speed test - 2-byte keys - 61.94 cycles/hash +Small key speed test - 3-byte keys - 71.85 cycles/hash +Small key speed test - 4-byte keys - 58.00 cycles/hash +Small key speed test - 5-byte keys - 68.19 cycles/hash +Small key speed test - 6-byte keys - 74.00 cycles/hash +Small key speed test - 7-byte keys - 83.90 cycles/hash +Small key speed test - 8-byte keys - 61.00 cycles/hash +Small key speed test - 9-byte keys - 71.22 cycles/hash +Small key speed test - 10-byte keys - 71.00 cycles/hash +Small key speed test - 11-byte keys - 80.00 cycles/hash +Small key speed test - 12-byte keys - 70.24 cycles/hash +Small key speed test - 13-byte keys - 79.96 cycles/hash +Small key speed test - 14-byte keys - 86.00 cycles/hash +Small key speed test - 15-byte keys - 93.99 cycles/hash +Small key speed test - 16-byte keys - 66.00 cycles/hash +Small key speed test - 17-byte keys - 75.00 cycles/hash +Small key speed test - 18-byte keys - 81.20 cycles/hash +Small key speed test - 19-byte keys - 90.17 cycles/hash +Small key speed test - 20-byte keys - 75.00 cycles/hash +Small key speed test - 21-byte keys - 84.00 cycles/hash +Small key speed test - 22-byte keys - 91.00 cycles/hash +Small key speed test - 23-byte keys - 99.99 cycles/hash +Small key speed test - 24-byte keys - 76.77 cycles/hash +Small key speed test - 25-byte keys - 84.68 cycles/hash +Small key speed test - 26-byte keys - 84.70 cycles/hash +Small key speed test - 27-byte keys - 92.99 cycles/hash +Small key speed test - 28-byte keys - 84.95 cycles/hash +Small key speed test - 29-byte keys - 93.25 cycles/hash +Small key speed test - 30-byte keys - 98.90 cycles/hash +Small key speed test - 31-byte keys - 107.87 cycles/hash +Average 79.900 cycles/hash [[[ 'Hashmap' Speed Tests (when inlined) ]]] diff --git a/doc/metrohash64.txt b/doc/metrohash64.txt index 56897d88..71a6de32 100644 --- a/doc/metrohash64.txt +++ b/doc/metrohash64.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 3.357 bytes/cycle - 9603.84 MiB/sec @ 3 ghz -Alignment 6 - 3.357 bytes/cycle - 9604.25 MiB/sec @ 3 ghz -Alignment 5 - 3.357 bytes/cycle - 9603.90 MiB/sec @ 3 ghz -Alignment 4 - 3.357 bytes/cycle - 9603.78 MiB/sec @ 3 ghz -Alignment 3 - 3.357 bytes/cycle - 9603.46 MiB/sec @ 3 ghz -Alignment 2 - 3.357 bytes/cycle - 9603.78 MiB/sec @ 3 ghz -Alignment 1 - 3.357 bytes/cycle - 9603.74 MiB/sec @ 3 ghz -Alignment 0 - 3.536 bytes/cycle - 10115.40 MiB/sec @ 3 ghz -Average - 3.379 bytes/cycle - 9667.77 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 29.13 cycles/hash -Small key speed test - 2-byte keys - 28.00 cycles/hash -Small key speed test - 3-byte keys - 35.00 cycles/hash -Small key speed test - 4-byte keys - 28.00 cycles/hash -Small key speed test - 5-byte keys - 35.00 cycles/hash -Small key speed test - 6-byte keys - 35.00 cycles/hash -Small key speed test - 7-byte keys - 41.00 cycles/hash -Small key speed test - 8-byte keys - 39.41 cycles/hash -Small key speed test - 9-byte keys - 45.69 cycles/hash -Small key speed test - 10-byte keys - 45.00 cycles/hash -Small key speed test - 11-byte keys - 52.00 cycles/hash -Small key speed test - 12-byte keys - 45.00 cycles/hash -Small key speed test - 13-byte keys - 52.00 cycles/hash -Small key speed test - 14-byte keys - 52.00 cycles/hash -Small key speed test - 15-byte keys - 59.00 cycles/hash -Small key speed test - 16-byte keys - 44.00 cycles/hash -Small key speed test - 17-byte keys - 51.00 cycles/hash -Small key speed test - 18-byte keys - 50.56 cycles/hash -Small key speed test - 19-byte keys - 57.00 cycles/hash -Small key speed test - 20-byte keys - 51.00 cycles/hash -Small key speed test - 21-byte keys - 57.00 cycles/hash -Small key speed test - 22-byte keys - 57.00 cycles/hash -Small key speed test - 23-byte keys - 64.00 cycles/hash -Small key speed test - 24-byte keys - 51.00 cycles/hash -Small key speed test - 25-byte keys - 57.00 cycles/hash -Small key speed test - 26-byte keys - 57.00 cycles/hash -Small key speed test - 27-byte keys - 64.00 cycles/hash -Small key speed test - 28-byte keys - 57.00 cycles/hash -Small key speed test - 29-byte keys - 64.00 cycles/hash -Small key speed test - 30-byte keys - 64.00 cycles/hash -Small key speed test - 31-byte keys - 70.00 cycles/hash -Average 49.574 cycles/hash +Alignment 7 - 5.135 bytes/cycle - 14690.68 MiB/sec @ 3 ghz +Alignment 6 - 5.155 bytes/cycle - 14748.64 MiB/sec @ 3 ghz +Alignment 5 - 5.146 bytes/cycle - 14721.86 MiB/sec @ 3 ghz +Alignment 4 - 5.146 bytes/cycle - 14721.83 MiB/sec @ 3 ghz +Alignment 3 - 5.140 bytes/cycle - 14706.76 MiB/sec @ 3 ghz +Alignment 2 - 5.142 bytes/cycle - 14710.12 MiB/sec @ 3 ghz +Alignment 1 - 5.146 bytes/cycle - 14723.24 MiB/sec @ 3 ghz +Alignment 0 - 5.211 bytes/cycle - 14909.36 MiB/sec @ 3 ghz +Average - 5.153 bytes/cycle - 14741.56 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 27.27 cycles/hash +Small key speed test - 2-byte keys - 27.65 cycles/hash +Small key speed test - 3-byte keys - 33.00 cycles/hash +Small key speed test - 4-byte keys - 27.00 cycles/hash +Small key speed test - 5-byte keys - 33.00 cycles/hash +Small key speed test - 6-byte keys - 33.00 cycles/hash +Small key speed test - 7-byte keys - 39.00 cycles/hash +Small key speed test - 8-byte keys - 27.00 cycles/hash +Small key speed test - 9-byte keys - 33.00 cycles/hash +Small key speed test - 10-byte keys - 33.00 cycles/hash +Small key speed test - 11-byte keys - 39.00 cycles/hash +Small key speed test - 12-byte keys - 33.00 cycles/hash +Small key speed test - 13-byte keys - 39.00 cycles/hash +Small key speed test - 14-byte keys - 39.00 cycles/hash +Small key speed test - 15-byte keys - 44.00 cycles/hash +Small key speed test - 16-byte keys - 33.78 cycles/hash +Small key speed test - 17-byte keys - 39.00 cycles/hash +Small key speed test - 18-byte keys - 39.00 cycles/hash +Small key speed test - 19-byte keys - 43.73 cycles/hash +Small key speed test - 20-byte keys - 38.59 cycles/hash +Small key speed test - 21-byte keys - 44.23 cycles/hash +Small key speed test - 22-byte keys - 44.00 cycles/hash +Small key speed test - 23-byte keys - 51.00 cycles/hash +Small key speed test - 24-byte keys - 38.98 cycles/hash +Small key speed test - 25-byte keys - 45.00 cycles/hash +Small key speed test - 26-byte keys - 44.72 cycles/hash +Small key speed test - 27-byte keys - 50.61 cycles/hash +Small key speed test - 28-byte keys - 44.00 cycles/hash +Small key speed test - 29-byte keys - 51.00 cycles/hash +Small key speed test - 30-byte keys - 51.20 cycles/hash +Small key speed test - 31-byte keys - 57.00 cycles/hash +Average 39.444 cycles/hash [[[ 'Hashmap' Speed Tests (when inlined) ]]] diff --git a/doc/metrohash64_1.txt b/doc/metrohash64_1.txt index 09cd8c46..454c72ff 100644 --- a/doc/metrohash64_1.txt +++ b/doc/metrohash64_1.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 3.360 bytes/cycle - 9611.62 MiB/sec @ 3 ghz -Alignment 6 - 3.360 bytes/cycle - 9611.96 MiB/sec @ 3 ghz -Alignment 5 - 3.360 bytes/cycle - 9611.88 MiB/sec @ 3 ghz -Alignment 4 - 3.359 bytes/cycle - 9611.50 MiB/sec @ 3 ghz -Alignment 3 - 3.359 bytes/cycle - 9611.35 MiB/sec @ 3 ghz -Alignment 2 - 3.359 bytes/cycle - 9611.39 MiB/sec @ 3 ghz -Alignment 1 - 3.360 bytes/cycle - 9611.88 MiB/sec @ 3 ghz -Alignment 0 - 3.541 bytes/cycle - 10129.61 MiB/sec @ 3 ghz -Average - 3.382 bytes/cycle - 9676.40 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 28.89 cycles/hash -Small key speed test - 2-byte keys - 28.75 cycles/hash -Small key speed test - 3-byte keys - 35.00 cycles/hash +Alignment 7 - 4.978 bytes/cycle - 14242.72 MiB/sec @ 3 ghz +Alignment 6 - 4.988 bytes/cycle - 14269.83 MiB/sec @ 3 ghz +Alignment 5 - 4.988 bytes/cycle - 14270.97 MiB/sec @ 3 ghz +Alignment 4 - 4.995 bytes/cycle - 14291.60 MiB/sec @ 3 ghz +Alignment 3 - 4.995 bytes/cycle - 14291.10 MiB/sec @ 3 ghz +Alignment 2 - 4.995 bytes/cycle - 14291.31 MiB/sec @ 3 ghz +Alignment 1 - 4.989 bytes/cycle - 14273.54 MiB/sec @ 3 ghz +Alignment 0 - 5.054 bytes/cycle - 14459.06 MiB/sec @ 3 ghz +Average - 4.998 bytes/cycle - 14298.77 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 28.20 cycles/hash +Small key speed test - 2-byte keys - 28.20 cycles/hash +Small key speed test - 3-byte keys - 34.00 cycles/hash Small key speed test - 4-byte keys - 28.00 cycles/hash -Small key speed test - 5-byte keys - 35.00 cycles/hash -Small key speed test - 6-byte keys - 35.00 cycles/hash -Small key speed test - 7-byte keys - 41.00 cycles/hash -Small key speed test - 8-byte keys - 39.00 cycles/hash -Small key speed test - 9-byte keys - 46.00 cycles/hash -Small key speed test - 10-byte keys - 46.00 cycles/hash -Small key speed test - 11-byte keys - 52.00 cycles/hash -Small key speed test - 12-byte keys - 45.75 cycles/hash -Small key speed test - 13-byte keys - 52.00 cycles/hash -Small key speed test - 14-byte keys - 52.00 cycles/hash -Small key speed test - 15-byte keys - 58.93 cycles/hash -Small key speed test - 16-byte keys - 44.00 cycles/hash -Small key speed test - 17-byte keys - 51.00 cycles/hash -Small key speed test - 18-byte keys - 51.00 cycles/hash -Small key speed test - 19-byte keys - 56.50 cycles/hash -Small key speed test - 20-byte keys - 50.49 cycles/hash -Small key speed test - 21-byte keys - 56.65 cycles/hash -Small key speed test - 22-byte keys - 56.46 cycles/hash -Small key speed test - 23-byte keys - 63.00 cycles/hash -Small key speed test - 24-byte keys - 50.00 cycles/hash -Small key speed test - 25-byte keys - 58.00 cycles/hash -Small key speed test - 26-byte keys - 57.85 cycles/hash -Small key speed test - 27-byte keys - 64.00 cycles/hash -Small key speed test - 28-byte keys - 57.33 cycles/hash -Small key speed test - 29-byte keys - 64.00 cycles/hash -Small key speed test - 30-byte keys - 64.00 cycles/hash -Small key speed test - 31-byte keys - 70.22 cycles/hash -Average 49.607 cycles/hash +Small key speed test - 5-byte keys - 34.00 cycles/hash +Small key speed test - 6-byte keys - 34.00 cycles/hash +Small key speed test - 7-byte keys - 39.99 cycles/hash +Small key speed test - 8-byte keys - 28.00 cycles/hash +Small key speed test - 9-byte keys - 33.77 cycles/hash +Small key speed test - 10-byte keys - 34.00 cycles/hash +Small key speed test - 11-byte keys - 39.90 cycles/hash +Small key speed test - 12-byte keys - 34.00 cycles/hash +Small key speed test - 13-byte keys - 39.64 cycles/hash +Small key speed test - 14-byte keys - 39.00 cycles/hash +Small key speed test - 15-byte keys - 45.00 cycles/hash +Small key speed test - 16-byte keys - 34.76 cycles/hash +Small key speed test - 17-byte keys - 39.96 cycles/hash +Small key speed test - 18-byte keys - 39.53 cycles/hash +Small key speed test - 19-byte keys - 45.00 cycles/hash +Small key speed test - 20-byte keys - 39.00 cycles/hash +Small key speed test - 21-byte keys - 46.00 cycles/hash +Small key speed test - 22-byte keys - 45.00 cycles/hash +Small key speed test - 23-byte keys - 52.00 cycles/hash +Small key speed test - 24-byte keys - 39.21 cycles/hash +Small key speed test - 25-byte keys - 46.00 cycles/hash +Small key speed test - 26-byte keys - 45.54 cycles/hash +Small key speed test - 27-byte keys - 51.76 cycles/hash +Small key speed test - 28-byte keys - 45.18 cycles/hash +Small key speed test - 29-byte keys - 51.99 cycles/hash +Small key speed test - 30-byte keys - 52.00 cycles/hash +Small key speed test - 31-byte keys - 57.00 cycles/hash +Average 40.310 cycles/hash [[[ 'Hashmap' Speed Tests (when inlined) ]]] diff --git a/doc/metrohash64_2.txt b/doc/metrohash64_2.txt index efe1a057..bcc50be8 100644 --- a/doc/metrohash64_2.txt +++ b/doc/metrohash64_2.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 3.351 bytes/cycle - 9587.38 MiB/sec @ 3 ghz -Alignment 6 - 3.351 bytes/cycle - 9587.55 MiB/sec @ 3 ghz -Alignment 5 - 3.351 bytes/cycle - 9588.17 MiB/sec @ 3 ghz -Alignment 4 - 3.351 bytes/cycle - 9587.41 MiB/sec @ 3 ghz -Alignment 3 - 3.351 bytes/cycle - 9587.59 MiB/sec @ 3 ghz -Alignment 2 - 3.351 bytes/cycle - 9587.96 MiB/sec @ 3 ghz -Alignment 1 - 3.351 bytes/cycle - 9587.99 MiB/sec @ 3 ghz -Alignment 0 - 3.527 bytes/cycle - 10090.06 MiB/sec @ 3 ghz -Average - 3.373 bytes/cycle - 9650.51 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 28.43 cycles/hash +Alignment 7 - 4.978 bytes/cycle - 14241.56 MiB/sec @ 3 ghz +Alignment 6 - 4.995 bytes/cycle - 14289.60 MiB/sec @ 3 ghz +Alignment 5 - 4.986 bytes/cycle - 14266.04 MiB/sec @ 3 ghz +Alignment 4 - 4.996 bytes/cycle - 14292.45 MiB/sec @ 3 ghz +Alignment 3 - 4.989 bytes/cycle - 14272.93 MiB/sec @ 3 ghz +Alignment 2 - 4.996 bytes/cycle - 14292.80 MiB/sec @ 3 ghz +Alignment 1 - 4.995 bytes/cycle - 14291.71 MiB/sec @ 3 ghz +Alignment 0 - 5.097 bytes/cycle - 14583.84 MiB/sec @ 3 ghz +Average - 5.004 bytes/cycle - 14316.37 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 28.00 cycles/hash Small key speed test - 2-byte keys - 28.00 cycles/hash -Small key speed test - 3-byte keys - 35.00 cycles/hash +Small key speed test - 3-byte keys - 33.55 cycles/hash Small key speed test - 4-byte keys - 28.00 cycles/hash -Small key speed test - 5-byte keys - 35.00 cycles/hash -Small key speed test - 6-byte keys - 35.00 cycles/hash -Small key speed test - 7-byte keys - 42.00 cycles/hash -Small key speed test - 8-byte keys - 39.93 cycles/hash -Small key speed test - 9-byte keys - 45.55 cycles/hash -Small key speed test - 10-byte keys - 46.00 cycles/hash -Small key speed test - 11-byte keys - 52.00 cycles/hash -Small key speed test - 12-byte keys - 45.78 cycles/hash -Small key speed test - 13-byte keys - 52.00 cycles/hash -Small key speed test - 14-byte keys - 52.00 cycles/hash -Small key speed test - 15-byte keys - 59.00 cycles/hash -Small key speed test - 16-byte keys - 44.00 cycles/hash -Small key speed test - 17-byte keys - 50.00 cycles/hash -Small key speed test - 18-byte keys - 51.00 cycles/hash -Small key speed test - 19-byte keys - 57.00 cycles/hash -Small key speed test - 20-byte keys - 51.00 cycles/hash -Small key speed test - 21-byte keys - 57.00 cycles/hash -Small key speed test - 22-byte keys - 57.00 cycles/hash -Small key speed test - 23-byte keys - 64.00 cycles/hash -Small key speed test - 24-byte keys - 51.00 cycles/hash -Small key speed test - 25-byte keys - 57.00 cycles/hash -Small key speed test - 26-byte keys - 57.00 cycles/hash -Small key speed test - 27-byte keys - 64.00 cycles/hash -Small key speed test - 28-byte keys - 57.00 cycles/hash -Small key speed test - 29-byte keys - 64.00 cycles/hash -Small key speed test - 30-byte keys - 64.00 cycles/hash -Small key speed test - 31-byte keys - 70.00 cycles/hash -Average 49.635 cycles/hash +Small key speed test - 5-byte keys - 33.73 cycles/hash +Small key speed test - 6-byte keys - 33.93 cycles/hash +Small key speed test - 7-byte keys - 39.55 cycles/hash +Small key speed test - 8-byte keys - 28.00 cycles/hash +Small key speed test - 9-byte keys - 33.30 cycles/hash +Small key speed test - 10-byte keys - 34.00 cycles/hash +Small key speed test - 11-byte keys - 40.00 cycles/hash +Small key speed test - 12-byte keys - 34.00 cycles/hash +Small key speed test - 13-byte keys - 39.61 cycles/hash +Small key speed test - 14-byte keys - 39.41 cycles/hash +Small key speed test - 15-byte keys - 45.00 cycles/hash +Small key speed test - 16-byte keys - 35.00 cycles/hash +Small key speed test - 17-byte keys - 40.00 cycles/hash +Small key speed test - 18-byte keys - 39.56 cycles/hash +Small key speed test - 19-byte keys - 45.00 cycles/hash +Small key speed test - 20-byte keys - 39.00 cycles/hash +Small key speed test - 21-byte keys - 45.00 cycles/hash +Small key speed test - 22-byte keys - 45.00 cycles/hash +Small key speed test - 23-byte keys - 51.82 cycles/hash +Small key speed test - 24-byte keys - 39.00 cycles/hash +Small key speed test - 25-byte keys - 46.00 cycles/hash +Small key speed test - 26-byte keys - 45.87 cycles/hash +Small key speed test - 27-byte keys - 51.97 cycles/hash +Small key speed test - 28-byte keys - 45.00 cycles/hash +Small key speed test - 29-byte keys - 51.99 cycles/hash +Small key speed test - 30-byte keys - 50.99 cycles/hash +Small key speed test - 31-byte keys - 57.72 cycles/hash +Average 40.225 cycles/hash [[[ 'Hashmap' Speed Tests (when inlined) ]]] diff --git a/doc/metrohash64crc_1.txt b/doc/metrohash64crc_1.txt index 149548a3..78cbf81f 100644 --- a/doc/metrohash64crc_1.txt +++ b/doc/metrohash64crc_1.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 4.854 bytes/cycle - 13887.71 MiB/sec @ 3 ghz -Alignment 6 - 4.854 bytes/cycle - 13888.58 MiB/sec @ 3 ghz -Alignment 5 - 4.854 bytes/cycle - 13888.76 MiB/sec @ 3 ghz -Alignment 4 - 4.855 bytes/cycle - 13890.27 MiB/sec @ 3 ghz -Alignment 3 - 4.854 bytes/cycle - 13888.38 MiB/sec @ 3 ghz -Alignment 2 - 4.854 bytes/cycle - 13888.55 MiB/sec @ 3 ghz -Alignment 1 - 4.854 bytes/cycle - 13888.12 MiB/sec @ 3 ghz -Alignment 0 - 4.944 bytes/cycle - 14144.98 MiB/sec @ 3 ghz -Average - 4.866 bytes/cycle - 13920.67 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 30.60 cycles/hash -Small key speed test - 2-byte keys - 30.62 cycles/hash -Small key speed test - 3-byte keys - 41.00 cycles/hash -Small key speed test - 4-byte keys - 30.29 cycles/hash -Small key speed test - 5-byte keys - 40.00 cycles/hash -Small key speed test - 6-byte keys - 41.00 cycles/hash -Small key speed test - 7-byte keys - 51.00 cycles/hash -Small key speed test - 8-byte keys - 40.00 cycles/hash -Small key speed test - 9-byte keys - 49.00 cycles/hash -Small key speed test - 10-byte keys - 49.00 cycles/hash -Small key speed test - 11-byte keys - 59.55 cycles/hash -Small key speed test - 12-byte keys - 49.00 cycles/hash -Small key speed test - 13-byte keys - 59.91 cycles/hash -Small key speed test - 14-byte keys - 59.00 cycles/hash -Small key speed test - 15-byte keys - 69.70 cycles/hash -Small key speed test - 16-byte keys - 43.00 cycles/hash -Small key speed test - 17-byte keys - 54.00 cycles/hash -Small key speed test - 18-byte keys - 54.00 cycles/hash -Small key speed test - 19-byte keys - 64.00 cycles/hash -Small key speed test - 20-byte keys - 53.66 cycles/hash -Small key speed test - 21-byte keys - 64.46 cycles/hash -Small key speed test - 22-byte keys - 64.30 cycles/hash -Small key speed test - 23-byte keys - 74.00 cycles/hash -Small key speed test - 24-byte keys - 50.57 cycles/hash -Small key speed test - 25-byte keys - 61.00 cycles/hash -Small key speed test - 26-byte keys - 60.31 cycles/hash -Small key speed test - 27-byte keys - 70.20 cycles/hash -Small key speed test - 28-byte keys - 60.68 cycles/hash -Small key speed test - 29-byte keys - 71.00 cycles/hash -Small key speed test - 30-byte keys - 70.94 cycles/hash -Small key speed test - 31-byte keys - 80.23 cycles/hash -Average 54.710 cycles/hash +Alignment 7 - 2.327 bytes/cycle - 6657.07 MiB/sec @ 3 ghz +Alignment 6 - 2.327 bytes/cycle - 6658.38 MiB/sec @ 3 ghz +Alignment 5 - 2.327 bytes/cycle - 6657.08 MiB/sec @ 3 ghz +Alignment 4 - 2.327 bytes/cycle - 6658.77 MiB/sec @ 3 ghz +Alignment 3 - 2.327 bytes/cycle - 6657.91 MiB/sec @ 3 ghz +Alignment 2 - 2.327 bytes/cycle - 6657.46 MiB/sec @ 3 ghz +Alignment 1 - 2.800 bytes/cycle - 8011.97 MiB/sec @ 3 ghz +Alignment 0 - 2.614 bytes/cycle - 7478.85 MiB/sec @ 3 ghz +Average - 2.422 bytes/cycle - 6929.69 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 29.21 cycles/hash +Small key speed test - 2-byte keys - 29.23 cycles/hash +Small key speed test - 3-byte keys - 37.93 cycles/hash +Small key speed test - 4-byte keys - 29.00 cycles/hash +Small key speed test - 5-byte keys - 37.00 cycles/hash +Small key speed test - 6-byte keys - 37.00 cycles/hash +Small key speed test - 7-byte keys - 45.00 cycles/hash +Small key speed test - 8-byte keys - 28.00 cycles/hash +Small key speed test - 9-byte keys - 37.00 cycles/hash +Small key speed test - 10-byte keys - 37.00 cycles/hash +Small key speed test - 11-byte keys - 45.00 cycles/hash +Small key speed test - 12-byte keys - 37.00 cycles/hash +Small key speed test - 13-byte keys - 45.00 cycles/hash +Small key speed test - 14-byte keys - 45.00 cycles/hash +Small key speed test - 15-byte keys - 53.88 cycles/hash +Small key speed test - 16-byte keys - 34.65 cycles/hash +Small key speed test - 17-byte keys - 43.00 cycles/hash +Small key speed test - 18-byte keys - 43.00 cycles/hash +Small key speed test - 19-byte keys - 51.97 cycles/hash +Small key speed test - 20-byte keys - 43.00 cycles/hash +Small key speed test - 21-byte keys - 51.98 cycles/hash +Small key speed test - 22-byte keys - 52.14 cycles/hash +Small key speed test - 23-byte keys - 61.00 cycles/hash +Small key speed test - 24-byte keys - 40.63 cycles/hash +Small key speed test - 25-byte keys - 49.00 cycles/hash +Small key speed test - 26-byte keys - 48.99 cycles/hash +Small key speed test - 27-byte keys - 58.13 cycles/hash +Small key speed test - 28-byte keys - 48.99 cycles/hash +Small key speed test - 29-byte keys - 58.21 cycles/hash +Small key speed test - 30-byte keys - 60.30 cycles/hash +Small key speed test - 31-byte keys - 66.98 cycles/hash +Average 44.653 cycles/hash [[[ 'Hashmap' Speed Tests (when inlined) ]]] diff --git a/doc/metrohash64crc_2.txt b/doc/metrohash64crc_2.txt index 5e8976b2..79eeafaa 100644 --- a/doc/metrohash64crc_2.txt +++ b/doc/metrohash64crc_2.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 4.875 bytes/cycle - 13946.38 MiB/sec @ 3 ghz -Alignment 6 - 4.874 bytes/cycle - 13945.96 MiB/sec @ 3 ghz -Alignment 5 - 4.874 bytes/cycle - 13945.74 MiB/sec @ 3 ghz -Alignment 4 - 4.875 bytes/cycle - 13948.10 MiB/sec @ 3 ghz -Alignment 3 - 4.875 bytes/cycle - 13946.33 MiB/sec @ 3 ghz -Alignment 2 - 4.875 bytes/cycle - 13946.46 MiB/sec @ 3 ghz -Alignment 1 - 4.875 bytes/cycle - 13946.94 MiB/sec @ 3 ghz -Alignment 0 - 4.965 bytes/cycle - 14204.53 MiB/sec @ 3 ghz -Average - 4.886 bytes/cycle - 13978.81 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 30.82 cycles/hash -Small key speed test - 2-byte keys - 30.00 cycles/hash -Small key speed test - 3-byte keys - 41.00 cycles/hash -Small key speed test - 4-byte keys - 30.26 cycles/hash -Small key speed test - 5-byte keys - 41.00 cycles/hash -Small key speed test - 6-byte keys - 41.00 cycles/hash -Small key speed test - 7-byte keys - 51.00 cycles/hash -Small key speed test - 8-byte keys - 40.00 cycles/hash -Small key speed test - 9-byte keys - 49.00 cycles/hash -Small key speed test - 10-byte keys - 49.00 cycles/hash -Small key speed test - 11-byte keys - 59.75 cycles/hash -Small key speed test - 12-byte keys - 49.00 cycles/hash -Small key speed test - 13-byte keys - 59.00 cycles/hash -Small key speed test - 14-byte keys - 59.00 cycles/hash -Small key speed test - 15-byte keys - 70.00 cycles/hash -Small key speed test - 16-byte keys - 43.00 cycles/hash -Small key speed test - 17-byte keys - 54.00 cycles/hash -Small key speed test - 18-byte keys - 54.00 cycles/hash -Small key speed test - 19-byte keys - 64.00 cycles/hash -Small key speed test - 20-byte keys - 54.00 cycles/hash -Small key speed test - 21-byte keys - 64.00 cycles/hash -Small key speed test - 22-byte keys - 64.00 cycles/hash -Small key speed test - 23-byte keys - 74.00 cycles/hash -Small key speed test - 24-byte keys - 50.68 cycles/hash -Small key speed test - 25-byte keys - 60.00 cycles/hash -Small key speed test - 26-byte keys - 60.74 cycles/hash -Small key speed test - 27-byte keys - 70.87 cycles/hash -Small key speed test - 28-byte keys - 60.00 cycles/hash -Small key speed test - 29-byte keys - 71.00 cycles/hash -Small key speed test - 30-byte keys - 71.00 cycles/hash -Small key speed test - 31-byte keys - 80.16 cycles/hash -Average 54.686 cycles/hash +Alignment 7 - 2.868 bytes/cycle - 8205.80 MiB/sec @ 3 ghz +Alignment 6 - 2.873 bytes/cycle - 8220.62 MiB/sec @ 3 ghz +Alignment 5 - 2.872 bytes/cycle - 8216.60 MiB/sec @ 3 ghz +Alignment 4 - 2.871 bytes/cycle - 8215.01 MiB/sec @ 3 ghz +Alignment 3 - 2.872 bytes/cycle - 8218.22 MiB/sec @ 3 ghz +Alignment 2 - 2.871 bytes/cycle - 8213.80 MiB/sec @ 3 ghz +Alignment 1 - 2.872 bytes/cycle - 8217.20 MiB/sec @ 3 ghz +Alignment 0 - 2.691 bytes/cycle - 7697.91 MiB/sec @ 3 ghz +Average - 2.849 bytes/cycle - 8150.65 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 28.00 cycles/hash +Small key speed test - 2-byte keys - 28.00 cycles/hash +Small key speed test - 3-byte keys - 36.31 cycles/hash +Small key speed test - 4-byte keys - 28.00 cycles/hash +Small key speed test - 5-byte keys - 36.00 cycles/hash +Small key speed test - 6-byte keys - 36.00 cycles/hash +Small key speed test - 7-byte keys - 43.88 cycles/hash +Small key speed test - 8-byte keys - 27.81 cycles/hash +Small key speed test - 9-byte keys - 36.27 cycles/hash +Small key speed test - 10-byte keys - 36.00 cycles/hash +Small key speed test - 11-byte keys - 44.29 cycles/hash +Small key speed test - 12-byte keys - 36.00 cycles/hash +Small key speed test - 13-byte keys - 44.00 cycles/hash +Small key speed test - 14-byte keys - 44.27 cycles/hash +Small key speed test - 15-byte keys - 53.00 cycles/hash +Small key speed test - 16-byte keys - 34.00 cycles/hash +Small key speed test - 17-byte keys - 42.23 cycles/hash +Small key speed test - 18-byte keys - 42.22 cycles/hash +Small key speed test - 19-byte keys - 51.00 cycles/hash +Small key speed test - 20-byte keys - 42.00 cycles/hash +Small key speed test - 21-byte keys - 51.00 cycles/hash +Small key speed test - 22-byte keys - 51.46 cycles/hash +Small key speed test - 23-byte keys - 59.97 cycles/hash +Small key speed test - 24-byte keys - 39.99 cycles/hash +Small key speed test - 25-byte keys - 48.14 cycles/hash +Small key speed test - 26-byte keys - 48.00 cycles/hash +Small key speed test - 27-byte keys - 57.00 cycles/hash +Small key speed test - 28-byte keys - 48.00 cycles/hash +Small key speed test - 29-byte keys - 57.00 cycles/hash +Small key speed test - 30-byte keys - 59.39 cycles/hash +Small key speed test - 31-byte keys - 66.00 cycles/hash +Average 43.717 cycles/hash [[[ 'Hashmap' Speed Tests (when inlined) ]]] diff --git a/doc/mirhash.txt b/doc/mirhash.txt index 1e52fb6f..6a00dc40 100644 --- a/doc/mirhash.txt +++ b/doc/mirhash.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 1.887 bytes/cycle - 5397.48 MiB/sec @ 3 ghz -Alignment 6 - 1.887 bytes/cycle - 5397.51 MiB/sec @ 3 ghz -Alignment 5 - 1.887 bytes/cycle - 5397.54 MiB/sec @ 3 ghz -Alignment 4 - 1.887 bytes/cycle - 5397.54 MiB/sec @ 3 ghz -Alignment 3 - 1.887 bytes/cycle - 5397.37 MiB/sec @ 3 ghz -Alignment 2 - 1.887 bytes/cycle - 5397.70 MiB/sec @ 3 ghz -Alignment 1 - 1.887 bytes/cycle - 5397.61 MiB/sec @ 3 ghz -Alignment 0 - 1.928 bytes/cycle - 5515.53 MiB/sec @ 3 ghz -Average - 1.892 bytes/cycle - 5412.29 MiB/sec @ 3 ghz +Alignment 7 - 2.144 bytes/cycle - 6133.92 MiB/sec @ 3 ghz +Alignment 6 - 2.144 bytes/cycle - 6134.74 MiB/sec @ 3 ghz +Alignment 5 - 2.145 bytes/cycle - 6136.55 MiB/sec @ 3 ghz +Alignment 4 - 2.146 bytes/cycle - 6138.44 MiB/sec @ 3 ghz +Alignment 3 - 2.146 bytes/cycle - 6139.85 MiB/sec @ 3 ghz +Alignment 2 - 2.146 bytes/cycle - 6140.23 MiB/sec @ 3 ghz +Alignment 1 - 2.145 bytes/cycle - 6136.21 MiB/sec @ 3 ghz +Alignment 0 - 2.151 bytes/cycle - 6152.64 MiB/sec @ 3 ghz +Average - 2.146 bytes/cycle - 6139.07 MiB/sec @ 3 ghz Small key speed test - 1-byte keys - 31.00 cycles/hash -Small key speed test - 2-byte keys - 32.98 cycles/hash -Small key speed test - 3-byte keys - 34.00 cycles/hash +Small key speed test - 2-byte keys - 33.93 cycles/hash +Small key speed test - 3-byte keys - 35.00 cycles/hash Small key speed test - 4-byte keys - 30.00 cycles/hash -Small key speed test - 5-byte keys - 33.76 cycles/hash -Small key speed test - 6-byte keys - 35.00 cycles/hash -Small key speed test - 7-byte keys - 37.00 cycles/hash -Small key speed test - 8-byte keys - 38.00 cycles/hash -Small key speed test - 9-byte keys - 39.00 cycles/hash -Small key speed test - 10-byte keys - 39.00 cycles/hash -Small key speed test - 11-byte keys - 39.00 cycles/hash -Small key speed test - 12-byte keys - 39.00 cycles/hash -Small key speed test - 13-byte keys - 39.00 cycles/hash -Small key speed test - 14-byte keys - 39.00 cycles/hash -Small key speed test - 15-byte keys - 39.00 cycles/hash -Small key speed test - 16-byte keys - 47.00 cycles/hash -Small key speed test - 17-byte keys - 48.00 cycles/hash -Small key speed test - 18-byte keys - 48.00 cycles/hash -Small key speed test - 19-byte keys - 48.63 cycles/hash -Small key speed test - 20-byte keys - 48.00 cycles/hash -Small key speed test - 21-byte keys - 48.00 cycles/hash -Small key speed test - 22-byte keys - 48.93 cycles/hash -Small key speed test - 23-byte keys - 49.96 cycles/hash -Small key speed test - 24-byte keys - 48.00 cycles/hash -Small key speed test - 25-byte keys - 49.00 cycles/hash -Small key speed test - 26-byte keys - 49.27 cycles/hash -Small key speed test - 27-byte keys - 50.00 cycles/hash -Small key speed test - 28-byte keys - 49.00 cycles/hash -Small key speed test - 29-byte keys - 49.20 cycles/hash -Small key speed test - 30-byte keys - 50.00 cycles/hash -Small key speed test - 31-byte keys - 50.00 cycles/hash -Average 42.765 cycles/hash +Small key speed test - 5-byte keys - 32.97 cycles/hash +Small key speed test - 6-byte keys - 34.90 cycles/hash +Small key speed test - 7-byte keys - 36.00 cycles/hash +Small key speed test - 8-byte keys - 29.00 cycles/hash +Small key speed test - 9-byte keys - 33.00 cycles/hash +Small key speed test - 10-byte keys - 35.00 cycles/hash +Small key speed test - 11-byte keys - 37.00 cycles/hash +Small key speed test - 12-byte keys - 32.00 cycles/hash +Small key speed test - 13-byte keys - 34.00 cycles/hash +Small key speed test - 14-byte keys - 36.23 cycles/hash +Small key speed test - 15-byte keys - 38.17 cycles/hash +Small key speed test - 16-byte keys - 37.00 cycles/hash +Small key speed test - 17-byte keys - 39.00 cycles/hash +Small key speed test - 18-byte keys - 39.00 cycles/hash +Small key speed test - 19-byte keys - 40.00 cycles/hash +Small key speed test - 20-byte keys - 39.00 cycles/hash +Small key speed test - 21-byte keys - 39.33 cycles/hash +Small key speed test - 22-byte keys - 39.87 cycles/hash +Small key speed test - 23-byte keys - 41.14 cycles/hash +Small key speed test - 24-byte keys - 38.98 cycles/hash +Small key speed test - 25-byte keys - 39.91 cycles/hash +Small key speed test - 26-byte keys - 40.58 cycles/hash +Small key speed test - 27-byte keys - 41.00 cycles/hash +Small key speed test - 28-byte keys - 40.00 cycles/hash +Small key speed test - 29-byte keys - 40.00 cycles/hash +Small key speed test - 30-byte keys - 41.00 cycles/hash +Small key speed test - 31-byte keys - 43.62 cycles/hash +Average 37.021 cycles/hash [[[ 'Hashmap' Speed Tests (when inlined) ]]] diff --git a/doc/mirhash32low.txt b/doc/mirhash32low.txt index a5c60944..b71089c1 100644 --- a/doc/mirhash32low.txt +++ b/doc/mirhash32low.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 1.887 bytes/cycle - 5399.67 MiB/sec @ 3 ghz -Alignment 6 - 1.887 bytes/cycle - 5399.82 MiB/sec @ 3 ghz -Alignment 5 - 1.887 bytes/cycle - 5399.81 MiB/sec @ 3 ghz -Alignment 4 - 1.887 bytes/cycle - 5399.69 MiB/sec @ 3 ghz -Alignment 3 - 1.887 bytes/cycle - 5399.64 MiB/sec @ 3 ghz -Alignment 2 - 1.887 bytes/cycle - 5399.73 MiB/sec @ 3 ghz -Alignment 1 - 1.887 bytes/cycle - 5399.87 MiB/sec @ 3 ghz -Alignment 0 - 1.931 bytes/cycle - 5525.62 MiB/sec @ 3 ghz -Average - 1.893 bytes/cycle - 5415.48 MiB/sec @ 3 ghz +Alignment 7 - 2.147 bytes/cycle - 6143.12 MiB/sec @ 3 ghz +Alignment 6 - 2.139 bytes/cycle - 6120.88 MiB/sec @ 3 ghz +Alignment 5 - 2.151 bytes/cycle - 6153.00 MiB/sec @ 3 ghz +Alignment 4 - 2.149 bytes/cycle - 6148.48 MiB/sec @ 3 ghz +Alignment 3 - 2.149 bytes/cycle - 6147.87 MiB/sec @ 3 ghz +Alignment 2 - 2.148 bytes/cycle - 6146.24 MiB/sec @ 3 ghz +Alignment 1 - 2.148 bytes/cycle - 6146.40 MiB/sec @ 3 ghz +Alignment 0 - 2.152 bytes/cycle - 6157.13 MiB/sec @ 3 ghz +Average - 2.148 bytes/cycle - 6145.39 MiB/sec @ 3 ghz Small key speed test - 1-byte keys - 31.00 cycles/hash Small key speed test - 2-byte keys - 33.00 cycles/hash -Small key speed test - 3-byte keys - 34.00 cycles/hash +Small key speed test - 3-byte keys - 35.00 cycles/hash Small key speed test - 4-byte keys - 30.00 cycles/hash Small key speed test - 5-byte keys - 33.00 cycles/hash -Small key speed test - 6-byte keys - 35.00 cycles/hash -Small key speed test - 7-byte keys - 37.00 cycles/hash -Small key speed test - 8-byte keys - 38.00 cycles/hash -Small key speed test - 9-byte keys - 39.00 cycles/hash -Small key speed test - 10-byte keys - 39.00 cycles/hash -Small key speed test - 11-byte keys - 39.00 cycles/hash -Small key speed test - 12-byte keys - 39.00 cycles/hash -Small key speed test - 13-byte keys - 39.00 cycles/hash -Small key speed test - 14-byte keys - 39.00 cycles/hash -Small key speed test - 15-byte keys - 39.00 cycles/hash -Small key speed test - 16-byte keys - 47.00 cycles/hash -Small key speed test - 17-byte keys - 48.00 cycles/hash -Small key speed test - 18-byte keys - 48.00 cycles/hash -Small key speed test - 19-byte keys - 48.44 cycles/hash -Small key speed test - 20-byte keys - 48.00 cycles/hash -Small key speed test - 21-byte keys - 48.00 cycles/hash -Small key speed test - 22-byte keys - 48.89 cycles/hash -Small key speed test - 23-byte keys - 49.52 cycles/hash -Small key speed test - 24-byte keys - 48.00 cycles/hash -Small key speed test - 25-byte keys - 49.00 cycles/hash -Small key speed test - 26-byte keys - 49.50 cycles/hash -Small key speed test - 27-byte keys - 50.00 cycles/hash -Small key speed test - 28-byte keys - 49.00 cycles/hash -Small key speed test - 29-byte keys - 49.13 cycles/hash -Small key speed test - 30-byte keys - 50.00 cycles/hash -Small key speed test - 31-byte keys - 50.24 cycles/hash -Average 42.733 cycles/hash +Small key speed test - 6-byte keys - 34.34 cycles/hash +Small key speed test - 7-byte keys - 36.00 cycles/hash +Small key speed test - 8-byte keys - 29.12 cycles/hash +Small key speed test - 9-byte keys - 32.94 cycles/hash +Small key speed test - 10-byte keys - 35.00 cycles/hash +Small key speed test - 11-byte keys - 37.00 cycles/hash +Small key speed test - 12-byte keys - 31.97 cycles/hash +Small key speed test - 13-byte keys - 34.00 cycles/hash +Small key speed test - 14-byte keys - 36.00 cycles/hash +Small key speed test - 15-byte keys - 38.21 cycles/hash +Small key speed test - 16-byte keys - 37.00 cycles/hash +Small key speed test - 17-byte keys - 38.88 cycles/hash +Small key speed test - 18-byte keys - 39.00 cycles/hash +Small key speed test - 19-byte keys - 40.00 cycles/hash +Small key speed test - 20-byte keys - 38.94 cycles/hash +Small key speed test - 21-byte keys - 39.00 cycles/hash +Small key speed test - 22-byte keys - 39.52 cycles/hash +Small key speed test - 23-byte keys - 41.00 cycles/hash +Small key speed test - 24-byte keys - 38.99 cycles/hash +Small key speed test - 25-byte keys - 39.70 cycles/hash +Small key speed test - 26-byte keys - 40.00 cycles/hash +Small key speed test - 27-byte keys - 42.00 cycles/hash +Small key speed test - 28-byte keys - 40.00 cycles/hash +Small key speed test - 29-byte keys - 40.00 cycles/hash +Small key speed test - 30-byte keys - 41.41 cycles/hash +Small key speed test - 31-byte keys - 43.55 cycles/hash +Average 36.953 cycles/hash [[[ 'Hashmap' Speed Tests (when inlined) ]]] diff --git a/doc/mirhashstrict.txt b/doc/mirhashstrict.txt index 604e2c13..1b215d65 100644 --- a/doc/mirhashstrict.txt +++ b/doc/mirhashstrict.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 1.208 bytes/cycle - 3455.42 MiB/sec @ 3 ghz -Alignment 6 - 1.210 bytes/cycle - 3461.10 MiB/sec @ 3 ghz -Alignment 5 - 1.206 bytes/cycle - 3450.61 MiB/sec @ 3 ghz -Alignment 4 - 1.206 bytes/cycle - 3450.79 MiB/sec @ 3 ghz -Alignment 3 - 1.210 bytes/cycle - 3461.80 MiB/sec @ 3 ghz -Alignment 2 - 1.207 bytes/cycle - 3452.13 MiB/sec @ 3 ghz -Alignment 1 - 1.210 bytes/cycle - 3461.95 MiB/sec @ 3 ghz -Alignment 0 - 1.302 bytes/cycle - 3723.72 MiB/sec @ 3 ghz -Average - 1.220 bytes/cycle - 3489.69 MiB/sec @ 3 ghz +Alignment 7 - 1.229 bytes/cycle - 3516.16 MiB/sec @ 3 ghz +Alignment 6 - 1.230 bytes/cycle - 3518.24 MiB/sec @ 3 ghz +Alignment 5 - 1.229 bytes/cycle - 3516.42 MiB/sec @ 3 ghz +Alignment 4 - 1.229 bytes/cycle - 3515.56 MiB/sec @ 3 ghz +Alignment 3 - 1.229 bytes/cycle - 3516.20 MiB/sec @ 3 ghz +Alignment 2 - 1.229 bytes/cycle - 3515.92 MiB/sec @ 3 ghz +Alignment 1 - 1.229 bytes/cycle - 3514.92 MiB/sec @ 3 ghz +Alignment 0 - 1.321 bytes/cycle - 3778.69 MiB/sec @ 3 ghz +Average - 1.240 bytes/cycle - 3549.01 MiB/sec @ 3 ghz Small key speed test - 1-byte keys - 41.00 cycles/hash -Small key speed test - 2-byte keys - 43.00 cycles/hash -Small key speed test - 3-byte keys - 45.00 cycles/hash -Small key speed test - 4-byte keys - 38.00 cycles/hash -Small key speed test - 5-byte keys - 42.00 cycles/hash -Small key speed test - 6-byte keys - 45.00 cycles/hash -Small key speed test - 7-byte keys - 46.79 cycles/hash -Small key speed test - 8-byte keys - 39.00 cycles/hash -Small key speed test - 9-byte keys - 43.73 cycles/hash -Small key speed test - 10-byte keys - 47.00 cycles/hash -Small key speed test - 11-byte keys - 49.31 cycles/hash -Small key speed test - 12-byte keys - 42.00 cycles/hash -Small key speed test - 13-byte keys - 43.00 cycles/hash -Small key speed test - 14-byte keys - 47.00 cycles/hash -Small key speed test - 15-byte keys - 50.00 cycles/hash -Small key speed test - 16-byte keys - 53.00 cycles/hash -Small key speed test - 17-byte keys - 53.96 cycles/hash -Small key speed test - 18-byte keys - 53.92 cycles/hash -Small key speed test - 19-byte keys - 53.00 cycles/hash -Small key speed test - 20-byte keys - 54.00 cycles/hash -Small key speed test - 21-byte keys - 54.00 cycles/hash -Small key speed test - 22-byte keys - 55.00 cycles/hash -Small key speed test - 23-byte keys - 56.00 cycles/hash -Small key speed test - 24-byte keys - 53.90 cycles/hash -Small key speed test - 25-byte keys - 59.51 cycles/hash -Small key speed test - 26-byte keys - 61.11 cycles/hash -Small key speed test - 27-byte keys - 65.93 cycles/hash -Small key speed test - 28-byte keys - 58.00 cycles/hash -Small key speed test - 29-byte keys - 58.55 cycles/hash -Small key speed test - 30-byte keys - 61.97 cycles/hash -Small key speed test - 31-byte keys - 62.00 cycles/hash -Average 50.828 cycles/hash +Small key speed test - 2-byte keys - 42.17 cycles/hash +Small key speed test - 3-byte keys - 44.80 cycles/hash +Small key speed test - 4-byte keys - 37.00 cycles/hash +Small key speed test - 5-byte keys - 41.69 cycles/hash +Small key speed test - 6-byte keys - 44.14 cycles/hash +Small key speed test - 7-byte keys - 46.00 cycles/hash +Small key speed test - 8-byte keys - 38.23 cycles/hash +Small key speed test - 9-byte keys - 42.86 cycles/hash +Small key speed test - 10-byte keys - 46.00 cycles/hash +Small key speed test - 11-byte keys - 48.00 cycles/hash +Small key speed test - 12-byte keys - 41.00 cycles/hash +Small key speed test - 13-byte keys - 42.43 cycles/hash +Small key speed test - 14-byte keys - 46.00 cycles/hash +Small key speed test - 15-byte keys - 49.00 cycles/hash +Small key speed test - 16-byte keys - 52.22 cycles/hash +Small key speed test - 17-byte keys - 53.00 cycles/hash +Small key speed test - 18-byte keys - 53.00 cycles/hash +Small key speed test - 19-byte keys - 52.31 cycles/hash +Small key speed test - 20-byte keys - 53.00 cycles/hash +Small key speed test - 21-byte keys - 53.50 cycles/hash +Small key speed test - 22-byte keys - 54.00 cycles/hash +Small key speed test - 23-byte keys - 55.00 cycles/hash +Small key speed test - 24-byte keys - 53.00 cycles/hash +Small key speed test - 25-byte keys - 58.51 cycles/hash +Small key speed test - 26-byte keys - 60.42 cycles/hash +Small key speed test - 27-byte keys - 64.99 cycles/hash +Small key speed test - 28-byte keys - 57.00 cycles/hash +Small key speed test - 29-byte keys - 57.56 cycles/hash +Small key speed test - 30-byte keys - 60.76 cycles/hash +Small key speed test - 31-byte keys - 61.00 cycles/hash +Average 49.987 cycles/hash [[[ 'Hashmap' Speed Tests ]]] diff --git a/doc/mirhashstrict32low.txt b/doc/mirhashstrict32low.txt index 8c7d6d37..c5b99bc9 100644 --- a/doc/mirhashstrict32low.txt +++ b/doc/mirhashstrict32low.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 0.775 bytes/cycle - 2216.01 MiB/sec @ 3 ghz -Alignment 6 - 0.775 bytes/cycle - 2216.05 MiB/sec @ 3 ghz -Alignment 5 - 0.775 bytes/cycle - 2215.86 MiB/sec @ 3 ghz -Alignment 4 - 0.775 bytes/cycle - 2216.13 MiB/sec @ 3 ghz -Alignment 3 - 0.775 bytes/cycle - 2215.88 MiB/sec @ 3 ghz -Alignment 2 - 0.775 bytes/cycle - 2216.13 MiB/sec @ 3 ghz -Alignment 1 - 0.775 bytes/cycle - 2215.99 MiB/sec @ 3 ghz -Alignment 0 - 0.783 bytes/cycle - 2240.57 MiB/sec @ 3 ghz -Average - 0.776 bytes/cycle - 2219.08 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 49.00 cycles/hash -Small key speed test - 2-byte keys - 50.00 cycles/hash -Small key speed test - 3-byte keys - 51.98 cycles/hash -Small key speed test - 4-byte keys - 46.00 cycles/hash -Small key speed test - 5-byte keys - 52.00 cycles/hash -Small key speed test - 6-byte keys - 53.00 cycles/hash -Small key speed test - 7-byte keys - 54.00 cycles/hash -Small key speed test - 8-byte keys - 58.25 cycles/hash -Small key speed test - 9-byte keys - 59.00 cycles/hash -Small key speed test - 10-byte keys - 59.00 cycles/hash -Small key speed test - 11-byte keys - 58.00 cycles/hash -Small key speed test - 12-byte keys - 59.00 cycles/hash -Small key speed test - 13-byte keys - 59.00 cycles/hash -Small key speed test - 14-byte keys - 59.00 cycles/hash -Small key speed test - 15-byte keys - 58.00 cycles/hash -Small key speed test - 16-byte keys - 71.00 cycles/hash -Small key speed test - 17-byte keys - 73.00 cycles/hash -Small key speed test - 18-byte keys - 73.00 cycles/hash -Small key speed test - 19-byte keys - 73.00 cycles/hash -Small key speed test - 20-byte keys - 72.00 cycles/hash -Small key speed test - 21-byte keys - 73.55 cycles/hash -Small key speed test - 22-byte keys - 72.84 cycles/hash -Small key speed test - 23-byte keys - 73.00 cycles/hash -Small key speed test - 24-byte keys - 71.40 cycles/hash -Small key speed test - 25-byte keys - 74.00 cycles/hash -Small key speed test - 26-byte keys - 75.94 cycles/hash -Small key speed test - 27-byte keys - 77.52 cycles/hash -Small key speed test - 28-byte keys - 72.59 cycles/hash -Small key speed test - 29-byte keys - 76.00 cycles/hash -Small key speed test - 30-byte keys - 78.00 cycles/hash -Small key speed test - 31-byte keys - 80.00 cycles/hash -Average 64.905 cycles/hash +Alignment 7 - 1.016 bytes/cycle - 2907.14 MiB/sec @ 3 ghz +Alignment 6 - 1.220 bytes/cycle - 3489.76 MiB/sec @ 3 ghz +Alignment 5 - 1.215 bytes/cycle - 3477.41 MiB/sec @ 3 ghz +Alignment 4 - 1.215 bytes/cycle - 3477.10 MiB/sec @ 3 ghz +Alignment 3 - 1.216 bytes/cycle - 3479.41 MiB/sec @ 3 ghz +Alignment 2 - 1.216 bytes/cycle - 3479.66 MiB/sec @ 3 ghz +Alignment 1 - 1.216 bytes/cycle - 3478.30 MiB/sec @ 3 ghz +Alignment 0 - 1.308 bytes/cycle - 3742.06 MiB/sec @ 3 ghz +Average - 1.203 bytes/cycle - 3441.35 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 41.00 cycles/hash +Small key speed test - 2-byte keys - 42.99 cycles/hash +Small key speed test - 3-byte keys - 45.00 cycles/hash +Small key speed test - 4-byte keys - 37.96 cycles/hash +Small key speed test - 5-byte keys - 42.00 cycles/hash +Small key speed test - 6-byte keys - 45.00 cycles/hash +Small key speed test - 7-byte keys - 46.00 cycles/hash +Small key speed test - 8-byte keys - 38.95 cycles/hash +Small key speed test - 9-byte keys - 43.00 cycles/hash +Small key speed test - 10-byte keys - 47.00 cycles/hash +Small key speed test - 11-byte keys - 49.00 cycles/hash +Small key speed test - 12-byte keys - 41.00 cycles/hash +Small key speed test - 13-byte keys - 43.00 cycles/hash +Small key speed test - 14-byte keys - 47.00 cycles/hash +Small key speed test - 15-byte keys - 50.00 cycles/hash +Small key speed test - 16-byte keys - 52.96 cycles/hash +Small key speed test - 17-byte keys - 53.29 cycles/hash +Small key speed test - 18-byte keys - 53.33 cycles/hash +Small key speed test - 19-byte keys - 53.00 cycles/hash +Small key speed test - 20-byte keys - 53.99 cycles/hash +Small key speed test - 21-byte keys - 54.00 cycles/hash +Small key speed test - 22-byte keys - 54.00 cycles/hash +Small key speed test - 23-byte keys - 55.88 cycles/hash +Small key speed test - 24-byte keys - 53.18 cycles/hash +Small key speed test - 25-byte keys - 59.00 cycles/hash +Small key speed test - 26-byte keys - 61.00 cycles/hash +Small key speed test - 27-byte keys - 65.67 cycles/hash +Small key speed test - 28-byte keys - 58.00 cycles/hash +Small key speed test - 29-byte keys - 58.16 cycles/hash +Small key speed test - 30-byte keys - 61.14 cycles/hash +Small key speed test - 31-byte keys - 63.00 cycles/hash +Average 50.597 cycles/hash [[[ 'Hashmap' Speed Tests (when inlined) ]]] diff --git a/doc/mx3.txt b/doc/mx3.txt index 5ec1a6a7..d303892f 100644 --- a/doc/mx3.txt +++ b/doc/mx3.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 3.093 bytes/cycle - 8848.40 MiB/sec @ 3 ghz -Alignment 6 - 3.089 bytes/cycle - 8836.30 MiB/sec @ 3 ghz -Alignment 5 - 3.089 bytes/cycle - 8837.10 MiB/sec @ 3 ghz -Alignment 4 - 3.091 bytes/cycle - 8842.51 MiB/sec @ 3 ghz -Alignment 3 - 3.095 bytes/cycle - 8853.92 MiB/sec @ 3 ghz -Alignment 2 - 3.097 bytes/cycle - 8861.36 MiB/sec @ 3 ghz -Alignment 1 - 3.100 bytes/cycle - 8869.67 MiB/sec @ 3 ghz -Alignment 0 - 3.151 bytes/cycle - 9015.90 MiB/sec @ 3 ghz -Average - 3.101 bytes/cycle - 8870.65 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 42.00 cycles/hash -Small key speed test - 2-byte keys - 45.00 cycles/hash -Small key speed test - 3-byte keys - 45.89 cycles/hash -Small key speed test - 4-byte keys - 47.65 cycles/hash -Small key speed test - 5-byte keys - 48.00 cycles/hash -Small key speed test - 6-byte keys - 48.98 cycles/hash -Small key speed test - 7-byte keys - 49.00 cycles/hash -Small key speed test - 8-byte keys - 40.95 cycles/hash -Small key speed test - 9-byte keys - 44.26 cycles/hash -Small key speed test - 10-byte keys - 46.00 cycles/hash -Small key speed test - 11-byte keys - 48.00 cycles/hash -Small key speed test - 12-byte keys - 48.44 cycles/hash -Small key speed test - 13-byte keys - 49.00 cycles/hash +Alignment 7 - 3.152 bytes/cycle - 9016.92 MiB/sec @ 3 ghz +Alignment 6 - 3.150 bytes/cycle - 9012.98 MiB/sec @ 3 ghz +Alignment 5 - 3.151 bytes/cycle - 9014.88 MiB/sec @ 3 ghz +Alignment 4 - 3.150 bytes/cycle - 9012.68 MiB/sec @ 3 ghz +Alignment 3 - 3.152 bytes/cycle - 9018.21 MiB/sec @ 3 ghz +Alignment 2 - 3.151 bytes/cycle - 9015.58 MiB/sec @ 3 ghz +Alignment 1 - 3.151 bytes/cycle - 9014.22 MiB/sec @ 3 ghz +Alignment 0 - 3.206 bytes/cycle - 9173.76 MiB/sec @ 3 ghz +Average - 3.158 bytes/cycle - 9034.90 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 41.00 cycles/hash +Small key speed test - 2-byte keys - 44.00 cycles/hash +Small key speed test - 3-byte keys - 45.00 cycles/hash +Small key speed test - 4-byte keys - 46.00 cycles/hash +Small key speed test - 5-byte keys - 46.89 cycles/hash +Small key speed test - 6-byte keys - 48.00 cycles/hash +Small key speed test - 7-byte keys - 48.21 cycles/hash +Small key speed test - 8-byte keys - 40.31 cycles/hash +Small key speed test - 9-byte keys - 43.46 cycles/hash +Small key speed test - 10-byte keys - 45.00 cycles/hash +Small key speed test - 11-byte keys - 47.00 cycles/hash +Small key speed test - 12-byte keys - 47.86 cycles/hash +Small key speed test - 13-byte keys - 48.50 cycles/hash Small key speed test - 14-byte keys - 50.00 cycles/hash -Small key speed test - 15-byte keys - 50.14 cycles/hash -Small key speed test - 16-byte keys - 44.89 cycles/hash -Small key speed test - 17-byte keys - 47.58 cycles/hash -Small key speed test - 18-byte keys - 49.00 cycles/hash +Small key speed test - 15-byte keys - 50.00 cycles/hash +Small key speed test - 16-byte keys - 44.21 cycles/hash +Small key speed test - 17-byte keys - 47.00 cycles/hash +Small key speed test - 18-byte keys - 48.55 cycles/hash Small key speed test - 19-byte keys - 50.00 cycles/hash Small key speed test - 20-byte keys - 50.00 cycles/hash -Small key speed test - 21-byte keys - 52.00 cycles/hash -Small key speed test - 22-byte keys - 53.79 cycles/hash -Small key speed test - 23-byte keys - 54.42 cycles/hash -Small key speed test - 24-byte keys - 47.00 cycles/hash -Small key speed test - 25-byte keys - 51.59 cycles/hash -Small key speed test - 26-byte keys - 52.45 cycles/hash -Small key speed test - 27-byte keys - 52.97 cycles/hash -Small key speed test - 28-byte keys - 53.97 cycles/hash -Small key speed test - 29-byte keys - 53.66 cycles/hash -Small key speed test - 30-byte keys - 54.95 cycles/hash +Small key speed test - 21-byte keys - 51.77 cycles/hash +Small key speed test - 22-byte keys - 52.98 cycles/hash +Small key speed test - 23-byte keys - 54.00 cycles/hash +Small key speed test - 24-byte keys - 47.43 cycles/hash +Small key speed test - 25-byte keys - 51.21 cycles/hash +Small key speed test - 26-byte keys - 52.41 cycles/hash +Small key speed test - 27-byte keys - 52.68 cycles/hash +Small key speed test - 28-byte keys - 53.64 cycles/hash +Small key speed test - 29-byte keys - 53.50 cycles/hash +Small key speed test - 30-byte keys - 54.53 cycles/hash Small key speed test - 31-byte keys - 55.00 cycles/hash -Average 49.244 cycles/hash +Average 48.714 cycles/hash [[[ 'Hashmap' Speed Tests ]]] diff --git a/doc/nmhash32.txt b/doc/nmhash32.txt index a452bf99..acfd7bd7 100644 --- a/doc/nmhash32.txt +++ b/doc/nmhash32.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 2.730 bytes/cycle - 7811.84 MiB/sec @ 3 ghz -Alignment 6 - 2.730 bytes/cycle - 7811.65 MiB/sec @ 3 ghz -Alignment 5 - 2.730 bytes/cycle - 7811.68 MiB/sec @ 3 ghz -Alignment 4 - 2.737 bytes/cycle - 7830.20 MiB/sec @ 3 ghz -Alignment 3 - 2.730 bytes/cycle - 7811.69 MiB/sec @ 3 ghz -Alignment 2 - 2.730 bytes/cycle - 7811.50 MiB/sec @ 3 ghz -Alignment 1 - 2.730 bytes/cycle - 7811.88 MiB/sec @ 3 ghz -Alignment 0 - 2.831 bytes/cycle - 8099.66 MiB/sec @ 3 ghz -Average - 2.744 bytes/cycle - 7850.01 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 44.00 cycles/hash -Small key speed test - 2-byte keys - 44.00 cycles/hash +Alignment 7 - 4.539 bytes/cycle - 12985.38 MiB/sec @ 3 ghz +Alignment 6 - 4.538 bytes/cycle - 12982.84 MiB/sec @ 3 ghz +Alignment 5 - 4.532 bytes/cycle - 12967.44 MiB/sec @ 3 ghz +Alignment 4 - 4.526 bytes/cycle - 12949.25 MiB/sec @ 3 ghz +Alignment 3 - 4.535 bytes/cycle - 12974.79 MiB/sec @ 3 ghz +Alignment 2 - 4.531 bytes/cycle - 12963.56 MiB/sec @ 3 ghz +Alignment 1 - 4.532 bytes/cycle - 12966.00 MiB/sec @ 3 ghz +Alignment 0 - 4.533 bytes/cycle - 12967.67 MiB/sec @ 3 ghz +Average - 4.533 bytes/cycle - 12969.62 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 44.84 cycles/hash +Small key speed test - 2-byte keys - 43.44 cycles/hash Small key speed test - 3-byte keys - 46.00 cycles/hash -Small key speed test - 4-byte keys - 44.00 cycles/hash -Small key speed test - 5-byte keys - 48.00 cycles/hash -Small key speed test - 6-byte keys - 48.00 cycles/hash -Small key speed test - 7-byte keys - 48.00 cycles/hash -Small key speed test - 8-byte keys - 48.00 cycles/hash -Small key speed test - 9-byte keys - 60.00 cycles/hash -Small key speed test - 10-byte keys - 60.00 cycles/hash -Small key speed test - 11-byte keys - 60.00 cycles/hash -Small key speed test - 12-byte keys - 60.00 cycles/hash -Small key speed test - 13-byte keys - 61.00 cycles/hash -Small key speed test - 14-byte keys - 61.00 cycles/hash -Small key speed test - 15-byte keys - 61.00 cycles/hash -Small key speed test - 16-byte keys - 60.00 cycles/hash -Small key speed test - 17-byte keys - 61.98 cycles/hash -Small key speed test - 18-byte keys - 61.98 cycles/hash -Small key speed test - 19-byte keys - 61.98 cycles/hash -Small key speed test - 20-byte keys - 60.00 cycles/hash -Small key speed test - 21-byte keys - 60.00 cycles/hash -Small key speed test - 22-byte keys - 60.00 cycles/hash -Small key speed test - 23-byte keys - 60.00 cycles/hash -Small key speed test - 24-byte keys - 60.00 cycles/hash -Small key speed test - 25-byte keys - 60.00 cycles/hash -Small key speed test - 26-byte keys - 60.00 cycles/hash -Small key speed test - 27-byte keys - 60.00 cycles/hash -Small key speed test - 28-byte keys - 60.00 cycles/hash -Small key speed test - 29-byte keys - 60.00 cycles/hash -Small key speed test - 30-byte keys - 60.00 cycles/hash -Small key speed test - 31-byte keys - 60.00 cycles/hash -Average 56.740 cycles/hash +Small key speed test - 4-byte keys - 43.49 cycles/hash +Small key speed test - 5-byte keys - 46.76 cycles/hash +Small key speed test - 6-byte keys - 46.78 cycles/hash +Small key speed test - 7-byte keys - 46.79 cycles/hash +Small key speed test - 8-byte keys - 46.81 cycles/hash +Small key speed test - 9-byte keys - 60.03 cycles/hash +Small key speed test - 10-byte keys - 59.10 cycles/hash +Small key speed test - 11-byte keys - 59.10 cycles/hash +Small key speed test - 12-byte keys - 59.14 cycles/hash +Small key speed test - 13-byte keys - 59.13 cycles/hash +Small key speed test - 14-byte keys - 59.14 cycles/hash +Small key speed test - 15-byte keys - 59.11 cycles/hash +Small key speed test - 16-byte keys - 59.11 cycles/hash +Small key speed test - 17-byte keys - 59.12 cycles/hash +Small key speed test - 18-byte keys - 59.08 cycles/hash +Small key speed test - 19-byte keys - 59.11 cycles/hash +Small key speed test - 20-byte keys - 59.12 cycles/hash +Small key speed test - 21-byte keys - 59.53 cycles/hash +Small key speed test - 22-byte keys - 59.57 cycles/hash +Small key speed test - 23-byte keys - 59.56 cycles/hash +Small key speed test - 24-byte keys - 59.11 cycles/hash +Small key speed test - 25-byte keys - 60.24 cycles/hash +Small key speed test - 26-byte keys - 60.25 cycles/hash +Small key speed test - 27-byte keys - 60.23 cycles/hash +Small key speed test - 28-byte keys - 59.11 cycles/hash +Small key speed test - 29-byte keys - 59.53 cycles/hash +Small key speed test - 30-byte keys - 59.47 cycles/hash +Small key speed test - 31-byte keys - 60.41 cycles/hash +Average 55.878 cycles/hash [[[ 'Hashmap' Speed Tests ]]] diff --git a/doc/nmhash32x.txt b/doc/nmhash32x.txt index d319a9c5..c354ff96 100644 --- a/doc/nmhash32x.txt +++ b/doc/nmhash32x.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 2.731 bytes/cycle - 7813.46 MiB/sec @ 3 ghz -Alignment 6 - 2.731 bytes/cycle - 7813.44 MiB/sec @ 3 ghz -Alignment 5 - 2.731 bytes/cycle - 7813.42 MiB/sec @ 3 ghz -Alignment 4 - 2.738 bytes/cycle - 7832.61 MiB/sec @ 3 ghz -Alignment 3 - 2.731 bytes/cycle - 7813.39 MiB/sec @ 3 ghz -Alignment 2 - 2.731 bytes/cycle - 7813.65 MiB/sec @ 3 ghz -Alignment 1 - 2.731 bytes/cycle - 7813.70 MiB/sec @ 3 ghz -Alignment 0 - 2.829 bytes/cycle - 8093.67 MiB/sec @ 3 ghz -Average - 2.744 bytes/cycle - 7850.92 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 30.27 cycles/hash -Small key speed test - 2-byte keys - 30.14 cycles/hash -Small key speed test - 3-byte keys - 32.88 cycles/hash -Small key speed test - 4-byte keys - 30.17 cycles/hash -Small key speed test - 5-byte keys - 34.00 cycles/hash -Small key speed test - 6-byte keys - 34.00 cycles/hash -Small key speed test - 7-byte keys - 34.00 cycles/hash -Small key speed test - 8-byte keys - 34.00 cycles/hash -Small key speed test - 9-byte keys - 38.93 cycles/hash -Small key speed test - 10-byte keys - 38.95 cycles/hash -Small key speed test - 11-byte keys - 38.96 cycles/hash -Small key speed test - 12-byte keys - 39.00 cycles/hash -Small key speed test - 13-byte keys - 41.93 cycles/hash -Small key speed test - 14-byte keys - 41.93 cycles/hash -Small key speed test - 15-byte keys - 41.93 cycles/hash -Small key speed test - 16-byte keys - 40.00 cycles/hash -Small key speed test - 17-byte keys - 53.99 cycles/hash -Small key speed test - 18-byte keys - 53.99 cycles/hash -Small key speed test - 19-byte keys - 53.99 cycles/hash -Small key speed test - 20-byte keys - 54.00 cycles/hash -Small key speed test - 21-byte keys - 57.76 cycles/hash -Small key speed test - 22-byte keys - 57.69 cycles/hash -Small key speed test - 23-byte keys - 57.73 cycles/hash -Small key speed test - 24-byte keys - 57.68 cycles/hash -Small key speed test - 25-byte keys - 60.00 cycles/hash -Small key speed test - 26-byte keys - 60.00 cycles/hash -Small key speed test - 27-byte keys - 60.00 cycles/hash -Small key speed test - 28-byte keys - 60.00 cycles/hash -Small key speed test - 29-byte keys - 62.66 cycles/hash -Small key speed test - 30-byte keys - 62.00 cycles/hash -Small key speed test - 31-byte keys - 62.67 cycles/hash -Average 46.943 cycles/hash +Alignment 7 - 4.455 bytes/cycle - 12746.31 MiB/sec @ 3 ghz +Alignment 6 - 4.464 bytes/cycle - 12770.95 MiB/sec @ 3 ghz +Alignment 5 - 4.470 bytes/cycle - 12789.89 MiB/sec @ 3 ghz +Alignment 4 - 4.463 bytes/cycle - 12769.63 MiB/sec @ 3 ghz +Alignment 3 - 4.466 bytes/cycle - 12776.77 MiB/sec @ 3 ghz +Alignment 2 - 4.466 bytes/cycle - 12778.45 MiB/sec @ 3 ghz +Alignment 1 - 4.465 bytes/cycle - 12774.94 MiB/sec @ 3 ghz +Alignment 0 - 4.472 bytes/cycle - 12793.66 MiB/sec @ 3 ghz +Average - 4.465 bytes/cycle - 12775.08 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 29.00 cycles/hash +Small key speed test - 2-byte keys - 29.00 cycles/hash +Small key speed test - 3-byte keys - 31.00 cycles/hash +Small key speed test - 4-byte keys - 29.00 cycles/hash +Small key speed test - 5-byte keys - 32.00 cycles/hash +Small key speed test - 6-byte keys - 32.30 cycles/hash +Small key speed test - 7-byte keys - 32.28 cycles/hash +Small key speed test - 8-byte keys - 32.34 cycles/hash +Small key speed test - 9-byte keys - 38.00 cycles/hash +Small key speed test - 10-byte keys - 38.00 cycles/hash +Small key speed test - 11-byte keys - 38.00 cycles/hash +Small key speed test - 12-byte keys - 38.00 cycles/hash +Small key speed test - 13-byte keys - 38.00 cycles/hash +Small key speed test - 14-byte keys - 38.00 cycles/hash +Small key speed test - 15-byte keys - 38.00 cycles/hash +Small key speed test - 16-byte keys - 38.00 cycles/hash +Small key speed test - 17-byte keys - 48.00 cycles/hash +Small key speed test - 18-byte keys - 48.00 cycles/hash +Small key speed test - 19-byte keys - 48.00 cycles/hash +Small key speed test - 20-byte keys - 48.00 cycles/hash +Small key speed test - 21-byte keys - 50.64 cycles/hash +Small key speed test - 22-byte keys - 50.65 cycles/hash +Small key speed test - 23-byte keys - 50.63 cycles/hash +Small key speed test - 24-byte keys - 50.64 cycles/hash +Small key speed test - 25-byte keys - 53.00 cycles/hash +Small key speed test - 26-byte keys - 53.00 cycles/hash +Small key speed test - 27-byte keys - 53.00 cycles/hash +Small key speed test - 28-byte keys - 53.00 cycles/hash +Small key speed test - 29-byte keys - 55.00 cycles/hash +Small key speed test - 30-byte keys - 55.00 cycles/hash +Small key speed test - 31-byte keys - 55.00 cycles/hash +Average 42.661 cycles/hash [[[ 'Hashmap' Speed Tests ]]] diff --git a/doc/o1hash.txt b/doc/o1hash.txt index 0bd037df..268e7669 100644 --- a/doc/o1hash.txt +++ b/doc/o1hash.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest . FAIL !!!!! [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 5260.432 bytes/cycle - 15050217.61 MiB/sec @ 3 ghz -Alignment 6 - 5269.632 bytes/cycle - 15076539.34 MiB/sec @ 3 ghz -Alignment 5 - 5258.818 bytes/cycle - 15045598.81 MiB/sec @ 3 ghz -Alignment 4 - 5246.835 bytes/cycle - 15011316.07 MiB/sec @ 3 ghz -Alignment 3 - 5210.760 bytes/cycle - 14908104.81 MiB/sec @ 3 ghz -Alignment 2 - 5193.680 bytes/cycle - 14859238.70 MiB/sec @ 3 ghz -Alignment 1 - 3303.757 bytes/cycle - 9452125.62 MiB/sec @ 3 ghz -Alignment 0 - 3415.731 bytes/cycle - 9772486.17 MiB/sec @ 3 ghz -Average - 4769.956 bytes/cycle - 13646953.39 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 16.29 cycles/hash -Small key speed test - 2-byte keys - 16.22 cycles/hash -Small key speed test - 3-byte keys - 16.23 cycles/hash -Small key speed test - 4-byte keys - 15.00 cycles/hash -Small key speed test - 5-byte keys - 26.00 cycles/hash -Small key speed test - 6-byte keys - 26.00 cycles/hash -Small key speed test - 7-byte keys - 26.00 cycles/hash -Small key speed test - 8-byte keys - 24.00 cycles/hash -Small key speed test - 9-byte keys - 24.00 cycles/hash -Small key speed test - 10-byte keys - 24.00 cycles/hash -Small key speed test - 11-byte keys - 24.00 cycles/hash -Small key speed test - 12-byte keys - 15.00 cycles/hash -Small key speed test - 13-byte keys - 15.00 cycles/hash -Small key speed test - 14-byte keys - 15.00 cycles/hash -Small key speed test - 15-byte keys - 15.00 cycles/hash -Small key speed test - 16-byte keys - 15.00 cycles/hash -Small key speed test - 17-byte keys - 15.00 cycles/hash -Small key speed test - 18-byte keys - 15.00 cycles/hash -Small key speed test - 19-byte keys - 15.00 cycles/hash -Small key speed test - 20-byte keys - 15.00 cycles/hash -Small key speed test - 21-byte keys - 15.00 cycles/hash -Small key speed test - 22-byte keys - 15.00 cycles/hash -Small key speed test - 23-byte keys - 15.00 cycles/hash -Small key speed test - 24-byte keys - 15.00 cycles/hash -Small key speed test - 25-byte keys - 15.00 cycles/hash -Small key speed test - 26-byte keys - 15.00 cycles/hash -Small key speed test - 27-byte keys - 15.00 cycles/hash -Small key speed test - 28-byte keys - 15.00 cycles/hash -Small key speed test - 29-byte keys - 15.00 cycles/hash -Small key speed test - 30-byte keys - 15.00 cycles/hash -Small key speed test - 31-byte keys - 15.00 cycles/hash -Average 17.346 cycles/hash +Alignment 7 - 4083.571 bytes/cycle - 11683189.92 MiB/sec @ 3 ghz +Alignment 6 - 4081.281 bytes/cycle - 11676637.38 MiB/sec @ 3 ghz +Alignment 5 - 4082.972 bytes/cycle - 11681478.02 MiB/sec @ 3 ghz +Alignment 4 - 4075.348 bytes/cycle - 11659663.87 MiB/sec @ 3 ghz +Alignment 3 - 4035.358 bytes/cycle - 11545251.81 MiB/sec @ 3 ghz +Alignment 2 - 4078.394 bytes/cycle - 11668379.74 MiB/sec @ 3 ghz +Alignment 1 - 4021.321 bytes/cycle - 11505090.95 MiB/sec @ 3 ghz +Alignment 0 - 4060.028 bytes/cycle - 11615832.87 MiB/sec @ 3 ghz +Average - 4064.784 bytes/cycle - 11629440.57 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 19.00 cycles/hash +Small key speed test - 2-byte keys - 19.00 cycles/hash +Small key speed test - 3-byte keys - 19.00 cycles/hash +Small key speed test - 4-byte keys - 18.00 cycles/hash +Small key speed test - 5-byte keys - 18.00 cycles/hash +Small key speed test - 6-byte keys - 18.00 cycles/hash +Small key speed test - 7-byte keys - 18.00 cycles/hash +Small key speed test - 8-byte keys - 18.00 cycles/hash +Small key speed test - 9-byte keys - 18.00 cycles/hash +Small key speed test - 10-byte keys - 18.00 cycles/hash +Small key speed test - 11-byte keys - 18.00 cycles/hash +Small key speed test - 12-byte keys - 18.00 cycles/hash +Small key speed test - 13-byte keys - 18.00 cycles/hash +Small key speed test - 14-byte keys - 18.00 cycles/hash +Small key speed test - 15-byte keys - 18.00 cycles/hash +Small key speed test - 16-byte keys - 18.00 cycles/hash +Small key speed test - 17-byte keys - 18.00 cycles/hash +Small key speed test - 18-byte keys - 18.00 cycles/hash +Small key speed test - 19-byte keys - 18.00 cycles/hash +Small key speed test - 20-byte keys - 18.00 cycles/hash +Small key speed test - 21-byte keys - 18.00 cycles/hash +Small key speed test - 22-byte keys - 18.11 cycles/hash +Small key speed test - 23-byte keys - 18.00 cycles/hash +Small key speed test - 24-byte keys - 18.00 cycles/hash +Small key speed test - 25-byte keys - 18.00 cycles/hash +Small key speed test - 26-byte keys - 18.00 cycles/hash +Small key speed test - 27-byte keys - 18.00 cycles/hash +Small key speed test - 28-byte keys - 18.00 cycles/hash +Small key speed test - 29-byte keys - 18.00 cycles/hash +Small key speed test - 30-byte keys - 18.83 cycles/hash +Small key speed test - 31-byte keys - 18.81 cycles/hash +Average 18.153 cycles/hash [[[ 'Hashmap' Speed Tests ]]] diff --git a/doc/pearsonbhash128.txt b/doc/pearsonbhash128.txt index d33c773f..a55f418f 100644 --- a/doc/pearsonbhash128.txt +++ b/doc/pearsonbhash128.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 0.705 bytes/cycle - 2017.78 MiB/sec @ 3 ghz -Alignment 6 - 0.706 bytes/cycle - 2019.31 MiB/sec @ 3 ghz -Alignment 5 - 0.706 bytes/cycle - 2019.16 MiB/sec @ 3 ghz -Alignment 4 - 0.706 bytes/cycle - 2019.71 MiB/sec @ 3 ghz -Alignment 3 - 0.697 bytes/cycle - 1994.44 MiB/sec @ 3 ghz -Alignment 2 - 0.706 bytes/cycle - 2019.73 MiB/sec @ 3 ghz -Alignment 1 - 0.706 bytes/cycle - 2019.79 MiB/sec @ 3 ghz -Alignment 0 - 0.695 bytes/cycle - 1987.25 MiB/sec @ 3 ghz -Average - 0.703 bytes/cycle - 2012.15 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 39.96 cycles/hash -Small key speed test - 2-byte keys - 50.99 cycles/hash -Small key speed test - 3-byte keys - 62.00 cycles/hash -Small key speed test - 4-byte keys - 73.82 cycles/hash -Small key speed test - 5-byte keys - 85.80 cycles/hash -Small key speed test - 6-byte keys - 96.55 cycles/hash -Small key speed test - 7-byte keys - 107.96 cycles/hash -Small key speed test - 8-byte keys - 40.00 cycles/hash -Small key speed test - 9-byte keys - 51.92 cycles/hash -Small key speed test - 10-byte keys - 62.91 cycles/hash -Small key speed test - 11-byte keys - 74.26 cycles/hash -Small key speed test - 12-byte keys - 85.49 cycles/hash -Small key speed test - 13-byte keys - 97.37 cycles/hash -Small key speed test - 14-byte keys - 108.46 cycles/hash -Small key speed test - 15-byte keys - 120.60 cycles/hash -Small key speed test - 16-byte keys - 51.74 cycles/hash -Small key speed test - 17-byte keys - 62.92 cycles/hash -Small key speed test - 18-byte keys - 74.00 cycles/hash -Small key speed test - 19-byte keys - 84.93 cycles/hash -Small key speed test - 20-byte keys - 97.24 cycles/hash -Small key speed test - 21-byte keys - 107.99 cycles/hash -Small key speed test - 22-byte keys - 119.85 cycles/hash -Small key speed test - 23-byte keys - 132.00 cycles/hash -Small key speed test - 24-byte keys - 62.96 cycles/hash -Small key speed test - 25-byte keys - 74.00 cycles/hash -Small key speed test - 26-byte keys - 85.46 cycles/hash -Small key speed test - 27-byte keys - 96.56 cycles/hash -Small key speed test - 28-byte keys - 108.24 cycles/hash -Small key speed test - 29-byte keys - 119.67 cycles/hash -Small key speed test - 30-byte keys - 130.59 cycles/hash -Small key speed test - 31-byte keys - 142.76 cycles/hash -Average 87.387 cycles/hash +Alignment 7 - 0.592 bytes/cycle - 1692.32 MiB/sec @ 3 ghz +Alignment 6 - 0.591 bytes/cycle - 1691.91 MiB/sec @ 3 ghz +Alignment 5 - 0.591 bytes/cycle - 1690.51 MiB/sec @ 3 ghz +Alignment 4 - 0.591 bytes/cycle - 1691.97 MiB/sec @ 3 ghz +Alignment 3 - 0.591 bytes/cycle - 1691.90 MiB/sec @ 3 ghz +Alignment 2 - 0.591 bytes/cycle - 1690.71 MiB/sec @ 3 ghz +Alignment 1 - 0.591 bytes/cycle - 1691.70 MiB/sec @ 3 ghz +Alignment 0 - 0.591 bytes/cycle - 1691.95 MiB/sec @ 3 ghz +Average - 0.591 bytes/cycle - 1691.62 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 47.15 cycles/hash +Small key speed test - 2-byte keys - 61.00 cycles/hash +Small key speed test - 3-byte keys - 75.11 cycles/hash +Small key speed test - 4-byte keys - 89.97 cycles/hash +Small key speed test - 5-byte keys - 102.93 cycles/hash +Small key speed test - 6-byte keys - 116.05 cycles/hash +Small key speed test - 7-byte keys - 130.01 cycles/hash +Small key speed test - 8-byte keys - 48.00 cycles/hash +Small key speed test - 9-byte keys - 61.00 cycles/hash +Small key speed test - 10-byte keys - 74.99 cycles/hash +Small key speed test - 11-byte keys - 89.00 cycles/hash +Small key speed test - 12-byte keys - 102.57 cycles/hash +Small key speed test - 13-byte keys - 116.03 cycles/hash +Small key speed test - 14-byte keys - 130.03 cycles/hash +Small key speed test - 15-byte keys - 144.03 cycles/hash +Small key speed test - 16-byte keys - 61.00 cycles/hash +Small key speed test - 17-byte keys - 74.99 cycles/hash +Small key speed test - 18-byte keys - 88.43 cycles/hash +Small key speed test - 19-byte keys - 102.73 cycles/hash +Small key speed test - 20-byte keys - 115.96 cycles/hash +Small key speed test - 21-byte keys - 129.44 cycles/hash +Small key speed test - 22-byte keys - 142.88 cycles/hash +Small key speed test - 23-byte keys - 156.96 cycles/hash +Small key speed test - 24-byte keys - 75.00 cycles/hash +Small key speed test - 25-byte keys - 88.99 cycles/hash +Small key speed test - 26-byte keys - 102.00 cycles/hash +Small key speed test - 27-byte keys - 115.99 cycles/hash +Small key speed test - 28-byte keys - 129.05 cycles/hash +Small key speed test - 29-byte keys - 144.00 cycles/hash +Small key speed test - 30-byte keys - 155.96 cycles/hash +Small key speed test - 31-byte keys - 170.54 cycles/hash +Average 104.574 cycles/hash [[[ 'Hashmap' Speed Tests ]]] diff --git a/doc/pearsonbhash256.txt b/doc/pearsonbhash256.txt index 95fcd3be..217e374c 100644 --- a/doc/pearsonbhash256.txt +++ b/doc/pearsonbhash256.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 0.617 bytes/cycle - 1765.36 MiB/sec @ 3 ghz -Alignment 6 - 0.617 bytes/cycle - 1764.52 MiB/sec @ 3 ghz -Alignment 5 - 0.617 bytes/cycle - 1763.87 MiB/sec @ 3 ghz -Alignment 4 - 0.616 bytes/cycle - 1763.15 MiB/sec @ 3 ghz -Alignment 3 - 0.607 bytes/cycle - 1737.90 MiB/sec @ 3 ghz -Alignment 2 - 0.607 bytes/cycle - 1737.27 MiB/sec @ 3 ghz -Alignment 1 - 0.617 bytes/cycle - 1765.16 MiB/sec @ 3 ghz -Alignment 0 - 0.617 bytes/cycle - 1765.18 MiB/sec @ 3 ghz -Average - 0.614 bytes/cycle - 1757.80 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 46.65 cycles/hash -Small key speed test - 2-byte keys - 58.99 cycles/hash -Small key speed test - 3-byte keys - 72.50 cycles/hash -Small key speed test - 4-byte keys - 85.64 cycles/hash -Small key speed test - 5-byte keys - 98.67 cycles/hash -Small key speed test - 6-byte keys - 111.71 cycles/hash -Small key speed test - 7-byte keys - 125.11 cycles/hash -Small key speed test - 8-byte keys - 45.80 cycles/hash -Small key speed test - 9-byte keys - 60.56 cycles/hash -Small key speed test - 10-byte keys - 72.72 cycles/hash -Small key speed test - 11-byte keys - 86.17 cycles/hash -Small key speed test - 12-byte keys - 99.66 cycles/hash -Small key speed test - 13-byte keys - 112.70 cycles/hash -Small key speed test - 14-byte keys - 125.80 cycles/hash -Small key speed test - 15-byte keys - 139.60 cycles/hash -Small key speed test - 16-byte keys - 59.00 cycles/hash -Small key speed test - 17-byte keys - 72.89 cycles/hash -Small key speed test - 18-byte keys - 86.19 cycles/hash -Small key speed test - 19-byte keys - 99.66 cycles/hash -Small key speed test - 20-byte keys - 113.16 cycles/hash -Small key speed test - 21-byte keys - 125.76 cycles/hash -Small key speed test - 22-byte keys - 138.81 cycles/hash -Small key speed test - 23-byte keys - 152.24 cycles/hash -Small key speed test - 24-byte keys - 72.48 cycles/hash -Small key speed test - 25-byte keys - 84.98 cycles/hash -Small key speed test - 26-byte keys - 98.59 cycles/hash -Small key speed test - 27-byte keys - 112.00 cycles/hash -Small key speed test - 28-byte keys - 125.53 cycles/hash -Small key speed test - 29-byte keys - 138.56 cycles/hash -Small key speed test - 30-byte keys - 152.19 cycles/hash -Small key speed test - 31-byte keys - 165.32 cycles/hash -Average 101.278 cycles/hash +Alignment 7 - 0.504 bytes/cycle - 1442.22 MiB/sec @ 3 ghz +Alignment 6 - 0.505 bytes/cycle - 1445.52 MiB/sec @ 3 ghz +Alignment 5 - 0.504 bytes/cycle - 1442.06 MiB/sec @ 3 ghz +Alignment 4 - 0.504 bytes/cycle - 1441.87 MiB/sec @ 3 ghz +Alignment 3 - 0.504 bytes/cycle - 1440.91 MiB/sec @ 3 ghz +Alignment 2 - 0.504 bytes/cycle - 1442.53 MiB/sec @ 3 ghz +Alignment 1 - 0.504 bytes/cycle - 1442.07 MiB/sec @ 3 ghz +Alignment 0 - 0.505 bytes/cycle - 1443.57 MiB/sec @ 3 ghz +Average - 0.504 bytes/cycle - 1442.59 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 55.00 cycles/hash +Small key speed test - 2-byte keys - 72.92 cycles/hash +Small key speed test - 3-byte keys - 89.00 cycles/hash +Small key speed test - 4-byte keys - 106.13 cycles/hash +Small key speed test - 5-byte keys - 123.15 cycles/hash +Small key speed test - 6-byte keys - 138.99 cycles/hash +Small key speed test - 7-byte keys - 156.13 cycles/hash +Small key speed test - 8-byte keys - 57.22 cycles/hash +Small key speed test - 9-byte keys - 74.00 cycles/hash +Small key speed test - 10-byte keys - 90.00 cycles/hash +Small key speed test - 11-byte keys - 107.11 cycles/hash +Small key speed test - 12-byte keys - 123.98 cycles/hash +Small key speed test - 13-byte keys - 139.99 cycles/hash +Small key speed test - 14-byte keys - 156.29 cycles/hash +Small key speed test - 15-byte keys - 172.99 cycles/hash +Small key speed test - 16-byte keys - 74.89 cycles/hash +Small key speed test - 17-byte keys - 91.00 cycles/hash +Small key speed test - 18-byte keys - 106.85 cycles/hash +Small key speed test - 19-byte keys - 124.13 cycles/hash +Small key speed test - 20-byte keys - 140.00 cycles/hash +Small key speed test - 21-byte keys - 157.13 cycles/hash +Small key speed test - 22-byte keys - 173.13 cycles/hash +Small key speed test - 23-byte keys - 189.98 cycles/hash +Small key speed test - 24-byte keys - 91.00 cycles/hash +Small key speed test - 25-byte keys - 107.99 cycles/hash +Small key speed test - 26-byte keys - 123.14 cycles/hash +Small key speed test - 27-byte keys - 140.00 cycles/hash +Small key speed test - 28-byte keys - 156.00 cycles/hash +Small key speed test - 29-byte keys - 173.15 cycles/hash +Small key speed test - 30-byte keys - 190.09 cycles/hash +Small key speed test - 31-byte keys - 205.99 cycles/hash +Average 126.044 cycles/hash [[[ 'Hashmap' Speed Tests ]]] diff --git a/doc/pearsonbhash64.txt b/doc/pearsonbhash64.txt index ae0f95d8..ad7936fd 100644 --- a/doc/pearsonbhash64.txt +++ b/doc/pearsonbhash64.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 0.769 bytes/cycle - 2200.44 MiB/sec @ 3 ghz -Alignment 6 - 0.769 bytes/cycle - 2200.44 MiB/sec @ 3 ghz -Alignment 5 - 0.769 bytes/cycle - 2200.44 MiB/sec @ 3 ghz -Alignment 4 - 0.769 bytes/cycle - 2200.48 MiB/sec @ 3 ghz -Alignment 3 - 0.739 bytes/cycle - 2115.15 MiB/sec @ 3 ghz -Alignment 2 - 0.769 bytes/cycle - 2200.44 MiB/sec @ 3 ghz -Alignment 1 - 0.769 bytes/cycle - 2200.44 MiB/sec @ 3 ghz -Alignment 0 - 0.769 bytes/cycle - 2200.48 MiB/sec @ 3 ghz -Average - 0.765 bytes/cycle - 2189.79 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 37.00 cycles/hash -Small key speed test - 2-byte keys - 47.41 cycles/hash -Small key speed test - 3-byte keys - 57.95 cycles/hash -Small key speed test - 4-byte keys - 68.15 cycles/hash -Small key speed test - 5-byte keys - 78.96 cycles/hash -Small key speed test - 6-byte keys - 89.00 cycles/hash -Small key speed test - 7-byte keys - 99.19 cycles/hash -Small key speed test - 8-byte keys - 37.00 cycles/hash -Small key speed test - 9-byte keys - 48.00 cycles/hash -Small key speed test - 10-byte keys - 58.00 cycles/hash -Small key speed test - 11-byte keys - 68.86 cycles/hash -Small key speed test - 12-byte keys - 79.00 cycles/hash -Small key speed test - 13-byte keys - 89.00 cycles/hash -Small key speed test - 14-byte keys - 99.00 cycles/hash -Small key speed test - 15-byte keys - 110.00 cycles/hash -Small key speed test - 16-byte keys - 51.96 cycles/hash -Small key speed test - 17-byte keys - 58.00 cycles/hash -Small key speed test - 18-byte keys - 70.01 cycles/hash -Small key speed test - 19-byte keys - 80.55 cycles/hash -Small key speed test - 20-byte keys - 91.27 cycles/hash -Small key speed test - 21-byte keys - 101.68 cycles/hash -Small key speed test - 22-byte keys - 110.95 cycles/hash -Small key speed test - 23-byte keys - 121.00 cycles/hash -Small key speed test - 24-byte keys - 58.00 cycles/hash -Small key speed test - 25-byte keys - 68.00 cycles/hash -Small key speed test - 26-byte keys - 79.00 cycles/hash -Small key speed test - 27-byte keys - 89.00 cycles/hash -Small key speed test - 28-byte keys - 99.68 cycles/hash -Small key speed test - 29-byte keys - 110.00 cycles/hash -Small key speed test - 30-byte keys - 120.42 cycles/hash -Small key speed test - 31-byte keys - 131.00 cycles/hash -Average 80.872 cycles/hash +Alignment 7 - 0.627 bytes/cycle - 1794.47 MiB/sec @ 3 ghz +Alignment 6 - 0.627 bytes/cycle - 1795.23 MiB/sec @ 3 ghz +Alignment 5 - 0.627 bytes/cycle - 1795.05 MiB/sec @ 3 ghz +Alignment 4 - 0.627 bytes/cycle - 1795.08 MiB/sec @ 3 ghz +Alignment 3 - 0.627 bytes/cycle - 1794.38 MiB/sec @ 3 ghz +Alignment 2 - 0.627 bytes/cycle - 1795.02 MiB/sec @ 3 ghz +Alignment 1 - 0.627 bytes/cycle - 1794.74 MiB/sec @ 3 ghz +Alignment 0 - 0.627 bytes/cycle - 1794.70 MiB/sec @ 3 ghz +Average - 0.627 bytes/cycle - 1794.83 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 44.98 cycles/hash +Small key speed test - 2-byte keys - 57.00 cycles/hash +Small key speed test - 3-byte keys - 69.99 cycles/hash +Small key speed test - 4-byte keys - 83.00 cycles/hash +Small key speed test - 5-byte keys - 95.77 cycles/hash +Small key speed test - 6-byte keys - 108.67 cycles/hash +Small key speed test - 7-byte keys - 120.76 cycles/hash +Small key speed test - 8-byte keys - 44.90 cycles/hash +Small key speed test - 9-byte keys - 57.60 cycles/hash +Small key speed test - 10-byte keys - 70.18 cycles/hash +Small key speed test - 11-byte keys - 82.97 cycles/hash +Small key speed test - 12-byte keys - 95.79 cycles/hash +Small key speed test - 13-byte keys - 108.72 cycles/hash +Small key speed test - 14-byte keys - 121.55 cycles/hash +Small key speed test - 15-byte keys - 133.70 cycles/hash +Small key speed test - 16-byte keys - 57.81 cycles/hash +Small key speed test - 17-byte keys - 70.92 cycles/hash +Small key speed test - 18-byte keys - 82.93 cycles/hash +Small key speed test - 19-byte keys - 95.79 cycles/hash +Small key speed test - 20-byte keys - 108.72 cycles/hash +Small key speed test - 21-byte keys - 120.89 cycles/hash +Small key speed test - 22-byte keys - 133.85 cycles/hash +Small key speed test - 23-byte keys - 146.68 cycles/hash +Small key speed test - 24-byte keys - 70.29 cycles/hash +Small key speed test - 25-byte keys - 83.00 cycles/hash +Small key speed test - 26-byte keys - 95.83 cycles/hash +Small key speed test - 27-byte keys - 108.51 cycles/hash +Small key speed test - 28-byte keys - 120.77 cycles/hash +Small key speed test - 29-byte keys - 133.91 cycles/hash +Small key speed test - 30-byte keys - 146.65 cycles/hash +Small key speed test - 31-byte keys - 159.68 cycles/hash +Average 97.799 cycles/hash [[[ 'Hashmap' Speed Tests ]]] diff --git a/doc/pearsonhash128.txt b/doc/pearsonhash128.txt index abcd969c..6c87721e 100644 --- a/doc/pearsonhash128.txt +++ b/doc/pearsonhash128.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 0.101 bytes/cycle - 287.95 MiB/sec @ 3 ghz -Alignment 6 - 0.101 bytes/cycle - 287.95 MiB/sec @ 3 ghz -Alignment 5 - 0.101 bytes/cycle - 287.95 MiB/sec @ 3 ghz -Alignment 4 - 0.101 bytes/cycle - 287.95 MiB/sec @ 3 ghz -Alignment 3 - 0.101 bytes/cycle - 287.95 MiB/sec @ 3 ghz -Alignment 2 - 0.101 bytes/cycle - 287.95 MiB/sec @ 3 ghz -Alignment 1 - 0.101 bytes/cycle - 287.95 MiB/sec @ 3 ghz -Alignment 0 - 0.101 bytes/cycle - 287.95 MiB/sec @ 3 ghz -Average - 0.101 bytes/cycle - 287.95 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 22.12 cycles/hash -Small key speed test - 2-byte keys - 33.62 cycles/hash -Small key speed test - 3-byte keys - 42.00 cycles/hash -Small key speed test - 4-byte keys - 52.00 cycles/hash -Small key speed test - 5-byte keys - 62.60 cycles/hash -Small key speed test - 6-byte keys - 72.24 cycles/hash -Small key speed test - 7-byte keys - 82.00 cycles/hash -Small key speed test - 8-byte keys - 91.90 cycles/hash -Small key speed test - 9-byte keys - 101.00 cycles/hash -Small key speed test - 10-byte keys - 111.00 cycles/hash -Small key speed test - 11-byte keys - 121.00 cycles/hash -Small key speed test - 12-byte keys - 131.00 cycles/hash -Small key speed test - 13-byte keys - 141.00 cycles/hash -Small key speed test - 14-byte keys - 151.00 cycles/hash -Small key speed test - 15-byte keys - 161.00 cycles/hash -Small key speed test - 16-byte keys - 171.55 cycles/hash -Small key speed test - 17-byte keys - 181.94 cycles/hash -Small key speed test - 18-byte keys - 191.00 cycles/hash -Small key speed test - 19-byte keys - 207.80 cycles/hash -Small key speed test - 20-byte keys - 215.73 cycles/hash -Small key speed test - 21-byte keys - 221.00 cycles/hash -Small key speed test - 22-byte keys - 230.92 cycles/hash -Small key speed test - 23-byte keys - 240.96 cycles/hash -Small key speed test - 24-byte keys - 250.84 cycles/hash -Small key speed test - 25-byte keys - 261.00 cycles/hash -Small key speed test - 26-byte keys - 270.83 cycles/hash -Small key speed test - 27-byte keys - 281.00 cycles/hash -Small key speed test - 28-byte keys - 290.84 cycles/hash -Small key speed test - 29-byte keys - 300.76 cycles/hash -Small key speed test - 30-byte keys - 310.85 cycles/hash -Small key speed test - 31-byte keys - 320.77 cycles/hash -Average 171.719 cycles/hash +Alignment 7 - 0.152 bytes/cycle - 434.28 MiB/sec @ 3 ghz +Alignment 6 - 0.152 bytes/cycle - 434.25 MiB/sec @ 3 ghz +Alignment 5 - 0.152 bytes/cycle - 434.19 MiB/sec @ 3 ghz +Alignment 4 - 0.152 bytes/cycle - 434.27 MiB/sec @ 3 ghz +Alignment 3 - 0.152 bytes/cycle - 434.27 MiB/sec @ 3 ghz +Alignment 2 - 0.152 bytes/cycle - 434.18 MiB/sec @ 3 ghz +Alignment 1 - 0.152 bytes/cycle - 434.15 MiB/sec @ 3 ghz +Alignment 0 - 0.152 bytes/cycle - 434.27 MiB/sec @ 3 ghz +Average - 0.152 bytes/cycle - 434.23 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 20.00 cycles/hash +Small key speed test - 2-byte keys - 27.00 cycles/hash +Small key speed test - 3-byte keys - 33.00 cycles/hash +Small key speed test - 4-byte keys - 40.00 cycles/hash +Small key speed test - 5-byte keys - 46.00 cycles/hash +Small key speed test - 6-byte keys - 53.00 cycles/hash +Small key speed test - 7-byte keys - 59.00 cycles/hash +Small key speed test - 8-byte keys - 66.00 cycles/hash +Small key speed test - 9-byte keys - 72.63 cycles/hash +Small key speed test - 10-byte keys - 79.12 cycles/hash +Small key speed test - 11-byte keys - 86.00 cycles/hash +Small key speed test - 12-byte keys - 92.25 cycles/hash +Small key speed test - 13-byte keys - 99.00 cycles/hash +Small key speed test - 14-byte keys - 106.34 cycles/hash +Small key speed test - 15-byte keys - 112.33 cycles/hash +Small key speed test - 16-byte keys - 118.61 cycles/hash +Small key speed test - 17-byte keys - 125.29 cycles/hash +Small key speed test - 18-byte keys - 131.00 cycles/hash +Small key speed test - 19-byte keys - 138.30 cycles/hash +Small key speed test - 20-byte keys - 145.28 cycles/hash +Small key speed test - 21-byte keys - 152.28 cycles/hash +Small key speed test - 22-byte keys - 159.24 cycles/hash +Small key speed test - 23-byte keys - 165.26 cycles/hash +Small key speed test - 24-byte keys - 172.23 cycles/hash +Small key speed test - 25-byte keys - 185.99 cycles/hash +Small key speed test - 26-byte keys - 202.14 cycles/hash +Small key speed test - 27-byte keys - 213.86 cycles/hash +Small key speed test - 28-byte keys - 201.75 cycles/hash +Small key speed test - 29-byte keys - 204.00 cycles/hash +Small key speed test - 30-byte keys - 222.24 cycles/hash +Small key speed test - 31-byte keys - 232.52 cycles/hash +Average 121.344 cycles/hash [[[ 'Hashmap' Speed Tests ]]] diff --git a/doc/pearsonhash256.txt b/doc/pearsonhash256.txt index f6134e42..29e4ab08 100644 --- a/doc/pearsonhash256.txt +++ b/doc/pearsonhash256.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 0.093 bytes/cycle - 266.40 MiB/sec @ 3 ghz -Alignment 6 - 0.090 bytes/cycle - 257.57 MiB/sec @ 3 ghz -Alignment 5 - 0.091 bytes/cycle - 260.11 MiB/sec @ 3 ghz -Alignment 4 - 0.093 bytes/cycle - 266.39 MiB/sec @ 3 ghz -Alignment 3 - 0.093 bytes/cycle - 266.41 MiB/sec @ 3 ghz -Alignment 2 - 0.093 bytes/cycle - 266.41 MiB/sec @ 3 ghz -Alignment 1 - 0.093 bytes/cycle - 266.41 MiB/sec @ 3 ghz -Alignment 0 - 0.093 bytes/cycle - 266.39 MiB/sec @ 3 ghz -Average - 0.092 bytes/cycle - 264.51 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 23.00 cycles/hash -Small key speed test - 2-byte keys - 33.00 cycles/hash -Small key speed test - 3-byte keys - 45.00 cycles/hash -Small key speed test - 4-byte keys - 56.00 cycles/hash -Small key speed test - 5-byte keys - 67.00 cycles/hash -Small key speed test - 6-byte keys - 77.00 cycles/hash -Small key speed test - 7-byte keys - 88.99 cycles/hash -Small key speed test - 8-byte keys - 99.00 cycles/hash -Small key speed test - 9-byte keys - 110.00 cycles/hash -Small key speed test - 10-byte keys - 120.00 cycles/hash -Small key speed test - 11-byte keys - 131.61 cycles/hash -Small key speed test - 12-byte keys - 142.00 cycles/hash -Small key speed test - 13-byte keys - 152.81 cycles/hash -Small key speed test - 14-byte keys - 163.00 cycles/hash -Small key speed test - 15-byte keys - 174.81 cycles/hash -Small key speed test - 16-byte keys - 185.00 cycles/hash -Small key speed test - 17-byte keys - 195.77 cycles/hash -Small key speed test - 18-byte keys - 206.00 cycles/hash -Small key speed test - 19-byte keys - 217.27 cycles/hash -Small key speed test - 20-byte keys - 228.00 cycles/hash -Small key speed test - 21-byte keys - 238.88 cycles/hash -Small key speed test - 22-byte keys - 249.15 cycles/hash -Small key speed test - 23-byte keys - 260.00 cycles/hash -Small key speed test - 24-byte keys - 271.00 cycles/hash -Small key speed test - 25-byte keys - 281.31 cycles/hash -Small key speed test - 26-byte keys - 292.00 cycles/hash -Small key speed test - 27-byte keys - 303.52 cycles/hash -Small key speed test - 28-byte keys - 314.00 cycles/hash -Small key speed test - 29-byte keys - 324.49 cycles/hash -Small key speed test - 30-byte keys - 335.00 cycles/hash -Small key speed test - 31-byte keys - 346.33 cycles/hash -Average 184.869 cycles/hash +Alignment 7 - 0.156 bytes/cycle - 445.77 MiB/sec @ 3 ghz +Alignment 6 - 0.155 bytes/cycle - 442.34 MiB/sec @ 3 ghz +Alignment 5 - 0.156 bytes/cycle - 445.55 MiB/sec @ 3 ghz +Alignment 4 - 0.156 bytes/cycle - 445.73 MiB/sec @ 3 ghz +Alignment 3 - 0.156 bytes/cycle - 445.75 MiB/sec @ 3 ghz +Alignment 2 - 0.156 bytes/cycle - 445.61 MiB/sec @ 3 ghz +Alignment 1 - 0.154 bytes/cycle - 440.63 MiB/sec @ 3 ghz +Alignment 0 - 0.154 bytes/cycle - 441.26 MiB/sec @ 3 ghz +Average - 0.155 bytes/cycle - 444.08 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 19.72 cycles/hash +Small key speed test - 2-byte keys - 26.71 cycles/hash +Small key speed test - 3-byte keys - 32.99 cycles/hash +Small key speed test - 4-byte keys - 48.05 cycles/hash +Small key speed test - 5-byte keys - 45.97 cycles/hash +Small key speed test - 6-byte keys - 52.50 cycles/hash +Small key speed test - 7-byte keys - 58.99 cycles/hash +Small key speed test - 8-byte keys - 63.96 cycles/hash +Small key speed test - 9-byte keys - 70.98 cycles/hash +Small key speed test - 10-byte keys - 77.19 cycles/hash +Small key speed test - 11-byte keys - 83.99 cycles/hash +Small key speed test - 12-byte keys - 103.11 cycles/hash +Small key speed test - 13-byte keys - 96.00 cycles/hash +Small key speed test - 14-byte keys - 102.92 cycles/hash +Small key speed test - 15-byte keys - 109.92 cycles/hash +Small key speed test - 16-byte keys - 132.06 cycles/hash +Small key speed test - 17-byte keys - 154.09 cycles/hash +Small key speed test - 18-byte keys - 128.83 cycles/hash +Small key speed test - 19-byte keys - 159.72 cycles/hash +Small key speed test - 20-byte keys - 142.41 cycles/hash +Small key speed test - 21-byte keys - 147.90 cycles/hash +Small key speed test - 22-byte keys - 153.91 cycles/hash +Small key speed test - 23-byte keys - 160.90 cycles/hash +Small key speed test - 24-byte keys - 167.49 cycles/hash +Small key speed test - 25-byte keys - 172.90 cycles/hash +Small key speed test - 26-byte keys - 179.91 cycles/hash +Small key speed test - 27-byte keys - 185.99 cycles/hash +Small key speed test - 28-byte keys - 191.98 cycles/hash +Small key speed test - 29-byte keys - 204.03 cycles/hash +Small key speed test - 30-byte keys - 205.35 cycles/hash +Small key speed test - 31-byte keys - 212.00 cycles/hash +Average 119.112 cycles/hash [[[ 'Hashmap' Speed Tests ]]] diff --git a/doc/pearsonhash64.txt b/doc/pearsonhash64.txt index e04687ba..dc61cd0f 100644 --- a/doc/pearsonhash64.txt +++ b/doc/pearsonhash64.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 0.101 bytes/cycle - 287.95 MiB/sec @ 3 ghz -Alignment 6 - 0.101 bytes/cycle - 287.95 MiB/sec @ 3 ghz -Alignment 5 - 0.101 bytes/cycle - 287.95 MiB/sec @ 3 ghz -Alignment 4 - 0.101 bytes/cycle - 287.95 MiB/sec @ 3 ghz -Alignment 3 - 0.101 bytes/cycle - 287.95 MiB/sec @ 3 ghz -Alignment 2 - 0.101 bytes/cycle - 287.95 MiB/sec @ 3 ghz -Alignment 1 - 0.101 bytes/cycle - 287.95 MiB/sec @ 3 ghz -Alignment 0 - 0.101 bytes/cycle - 287.95 MiB/sec @ 3 ghz -Average - 0.101 bytes/cycle - 287.95 MiB/sec @ 3 ghz +Alignment 7 - 0.152 bytes/cycle - 434.26 MiB/sec @ 3 ghz +Alignment 6 - 0.152 bytes/cycle - 434.27 MiB/sec @ 3 ghz +Alignment 5 - 0.152 bytes/cycle - 433.71 MiB/sec @ 3 ghz +Alignment 4 - 0.152 bytes/cycle - 434.26 MiB/sec @ 3 ghz +Alignment 3 - 0.152 bytes/cycle - 434.25 MiB/sec @ 3 ghz +Alignment 2 - 0.152 bytes/cycle - 434.16 MiB/sec @ 3 ghz +Alignment 1 - 0.152 bytes/cycle - 434.17 MiB/sec @ 3 ghz +Alignment 0 - 0.152 bytes/cycle - 434.26 MiB/sec @ 3 ghz +Average - 0.152 bytes/cycle - 434.17 MiB/sec @ 3 ghz Small key speed test - 1-byte keys - 23.00 cycles/hash -Small key speed test - 2-byte keys - 33.00 cycles/hash -Small key speed test - 3-byte keys - 43.00 cycles/hash -Small key speed test - 4-byte keys - 55.00 cycles/hash -Small key speed test - 5-byte keys - 65.00 cycles/hash -Small key speed test - 6-byte keys - 75.00 cycles/hash -Small key speed test - 7-byte keys - 85.00 cycles/hash -Small key speed test - 8-byte keys - 95.00 cycles/hash -Small key speed test - 9-byte keys - 105.00 cycles/hash -Small key speed test - 10-byte keys - 114.49 cycles/hash -Small key speed test - 11-byte keys - 125.00 cycles/hash -Small key speed test - 12-byte keys - 134.00 cycles/hash -Small key speed test - 13-byte keys - 144.00 cycles/hash -Small key speed test - 14-byte keys - 154.00 cycles/hash -Small key speed test - 15-byte keys - 164.00 cycles/hash -Small key speed test - 16-byte keys - 174.00 cycles/hash -Small key speed test - 17-byte keys - 184.00 cycles/hash -Small key speed test - 18-byte keys - 194.00 cycles/hash -Small key speed test - 19-byte keys - 204.00 cycles/hash -Small key speed test - 20-byte keys - 214.00 cycles/hash -Small key speed test - 21-byte keys - 224.00 cycles/hash -Small key speed test - 22-byte keys - 234.00 cycles/hash -Small key speed test - 23-byte keys - 244.00 cycles/hash -Small key speed test - 24-byte keys - 254.00 cycles/hash -Small key speed test - 25-byte keys - 264.00 cycles/hash -Small key speed test - 26-byte keys - 273.88 cycles/hash -Small key speed test - 27-byte keys - 284.00 cycles/hash -Small key speed test - 28-byte keys - 293.87 cycles/hash -Small key speed test - 29-byte keys - 303.96 cycles/hash -Small key speed test - 30-byte keys - 313.67 cycles/hash -Small key speed test - 31-byte keys - 323.61 cycles/hash -Average 174.113 cycles/hash +Small key speed test - 2-byte keys - 30.00 cycles/hash +Small key speed test - 3-byte keys - 37.00 cycles/hash +Small key speed test - 4-byte keys - 43.30 cycles/hash +Small key speed test - 5-byte keys - 50.00 cycles/hash +Small key speed test - 6-byte keys - 56.62 cycles/hash +Small key speed test - 7-byte keys - 63.00 cycles/hash +Small key speed test - 8-byte keys - 70.33 cycles/hash +Small key speed test - 9-byte keys - 76.00 cycles/hash +Small key speed test - 10-byte keys - 83.00 cycles/hash +Small key speed test - 11-byte keys - 89.44 cycles/hash +Small key speed test - 12-byte keys - 96.00 cycles/hash +Small key speed test - 13-byte keys - 103.00 cycles/hash +Small key speed test - 14-byte keys - 109.00 cycles/hash +Small key speed test - 15-byte keys - 116.00 cycles/hash +Small key speed test - 16-byte keys - 123.32 cycles/hash +Small key speed test - 17-byte keys - 129.33 cycles/hash +Small key speed test - 18-byte keys - 136.00 cycles/hash +Small key speed test - 19-byte keys - 142.00 cycles/hash +Small key speed test - 20-byte keys - 149.28 cycles/hash +Small key speed test - 21-byte keys - 155.30 cycles/hash +Small key speed test - 22-byte keys - 162.21 cycles/hash +Small key speed test - 23-byte keys - 169.28 cycles/hash +Small key speed test - 24-byte keys - 178.68 cycles/hash +Small key speed test - 25-byte keys - 187.11 cycles/hash +Small key speed test - 26-byte keys - 198.97 cycles/hash +Small key speed test - 27-byte keys - 195.27 cycles/hash +Small key speed test - 28-byte keys - 201.00 cycles/hash +Small key speed test - 29-byte keys - 213.94 cycles/hash +Small key speed test - 30-byte keys - 218.94 cycles/hash +Small key speed test - 31-byte keys - 241.99 cycles/hash +Average 124.139 cycles/hash [[[ 'Hashmap' Speed Tests ]]] diff --git a/doc/pengyhash.txt b/doc/pengyhash.txt index 5abb4415..3a2777b7 100644 --- a/doc/pengyhash.txt +++ b/doc/pengyhash.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 3.140 bytes/cycle - 8982.61 MiB/sec @ 3 ghz -Alignment 6 - 3.100 bytes/cycle - 8868.97 MiB/sec @ 3 ghz -Alignment 5 - 3.098 bytes/cycle - 8863.56 MiB/sec @ 3 ghz -Alignment 4 - 3.140 bytes/cycle - 8983.91 MiB/sec @ 3 ghz -Alignment 3 - 3.140 bytes/cycle - 8982.76 MiB/sec @ 3 ghz -Alignment 2 - 3.140 bytes/cycle - 8982.87 MiB/sec @ 3 ghz -Alignment 1 - 3.100 bytes/cycle - 8868.08 MiB/sec @ 3 ghz -Alignment 0 - 3.527 bytes/cycle - 10090.15 MiB/sec @ 3 ghz -Average - 3.173 bytes/cycle - 9077.86 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 77.35 cycles/hash -Small key speed test - 2-byte keys - 78.37 cycles/hash -Small key speed test - 3-byte keys - 78.00 cycles/hash -Small key speed test - 4-byte keys - 78.00 cycles/hash -Small key speed test - 5-byte keys - 82.99 cycles/hash -Small key speed test - 6-byte keys - 82.99 cycles/hash -Small key speed test - 7-byte keys - 82.91 cycles/hash -Small key speed test - 8-byte keys - 72.00 cycles/hash -Small key speed test - 9-byte keys - 82.26 cycles/hash -Small key speed test - 10-byte keys - 81.40 cycles/hash -Small key speed test - 11-byte keys - 82.27 cycles/hash -Small key speed test - 12-byte keys - 81.00 cycles/hash -Small key speed test - 13-byte keys - 81.36 cycles/hash -Small key speed test - 14-byte keys - 81.21 cycles/hash -Small key speed test - 15-byte keys - 81.31 cycles/hash -Small key speed test - 16-byte keys - 74.15 cycles/hash -Small key speed test - 17-byte keys - 89.35 cycles/hash -Small key speed test - 18-byte keys - 89.00 cycles/hash -Small key speed test - 19-byte keys - 89.30 cycles/hash -Small key speed test - 20-byte keys - 86.93 cycles/hash -Small key speed test - 21-byte keys - 87.89 cycles/hash -Small key speed test - 22-byte keys - 87.87 cycles/hash -Small key speed test - 23-byte keys - 86.93 cycles/hash -Small key speed test - 24-byte keys - 73.27 cycles/hash -Small key speed test - 25-byte keys - 88.00 cycles/hash -Small key speed test - 26-byte keys - 88.00 cycles/hash -Small key speed test - 27-byte keys - 88.00 cycles/hash -Small key speed test - 28-byte keys - 88.00 cycles/hash -Small key speed test - 29-byte keys - 88.00 cycles/hash -Small key speed test - 30-byte keys - 88.00 cycles/hash -Small key speed test - 31-byte keys - 88.00 cycles/hash -Average 83.359 cycles/hash +Alignment 7 - 4.672 bytes/cycle - 13365.79 MiB/sec @ 3 ghz +Alignment 6 - 4.674 bytes/cycle - 13372.08 MiB/sec @ 3 ghz +Alignment 5 - 4.675 bytes/cycle - 13375.70 MiB/sec @ 3 ghz +Alignment 4 - 4.677 bytes/cycle - 13380.74 MiB/sec @ 3 ghz +Alignment 3 - 4.676 bytes/cycle - 13377.74 MiB/sec @ 3 ghz +Alignment 2 - 4.683 bytes/cycle - 13399.29 MiB/sec @ 3 ghz +Alignment 1 - 4.686 bytes/cycle - 13407.91 MiB/sec @ 3 ghz +Alignment 0 - 4.806 bytes/cycle - 13751.18 MiB/sec @ 3 ghz +Average - 4.694 bytes/cycle - 13428.80 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 74.12 cycles/hash +Small key speed test - 2-byte keys - 73.00 cycles/hash +Small key speed test - 3-byte keys - 73.37 cycles/hash +Small key speed test - 4-byte keys - 73.96 cycles/hash +Small key speed test - 5-byte keys - 73.82 cycles/hash +Small key speed test - 6-byte keys - 73.98 cycles/hash +Small key speed test - 7-byte keys - 73.98 cycles/hash +Small key speed test - 8-byte keys - 57.97 cycles/hash +Small key speed test - 9-byte keys - 74.56 cycles/hash +Small key speed test - 10-byte keys - 74.75 cycles/hash +Small key speed test - 11-byte keys - 74.56 cycles/hash +Small key speed test - 12-byte keys - 74.52 cycles/hash +Small key speed test - 13-byte keys - 74.59 cycles/hash +Small key speed test - 14-byte keys - 74.57 cycles/hash +Small key speed test - 15-byte keys - 74.52 cycles/hash +Small key speed test - 16-byte keys - 59.91 cycles/hash +Small key speed test - 17-byte keys - 77.00 cycles/hash +Small key speed test - 18-byte keys - 77.00 cycles/hash +Small key speed test - 19-byte keys - 77.00 cycles/hash +Small key speed test - 20-byte keys - 77.00 cycles/hash +Small key speed test - 21-byte keys - 77.81 cycles/hash +Small key speed test - 22-byte keys - 77.63 cycles/hash +Small key speed test - 23-byte keys - 77.59 cycles/hash +Small key speed test - 24-byte keys - 62.77 cycles/hash +Small key speed test - 25-byte keys - 77.00 cycles/hash +Small key speed test - 26-byte keys - 77.31 cycles/hash +Small key speed test - 27-byte keys - 77.00 cycles/hash +Small key speed test - 28-byte keys - 77.51 cycles/hash +Small key speed test - 29-byte keys - 77.52 cycles/hash +Small key speed test - 30-byte keys - 77.57 cycles/hash +Small key speed test - 31-byte keys - 77.57 cycles/hash +Average 74.240 cycles/hash [[[ 'Hashmap' Speed Tests ]]] diff --git a/doc/poly_1_mersenne.txt b/doc/poly_1_mersenne.txt index b0dfd217..03f4264c 100644 --- a/doc/poly_1_mersenne.txt +++ b/doc/poly_1_mersenne.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 0.387 bytes/cycle - 1107.18 MiB/sec @ 3 ghz -Alignment 6 - 0.387 bytes/cycle - 1106.83 MiB/sec @ 3 ghz -Alignment 5 - 0.413 bytes/cycle - 1180.90 MiB/sec @ 3 ghz -Alignment 4 - 0.469 bytes/cycle - 1341.35 MiB/sec @ 3 ghz -Alignment 3 - 0.475 bytes/cycle - 1360.21 MiB/sec @ 3 ghz -Alignment 2 - 0.469 bytes/cycle - 1341.47 MiB/sec @ 3 ghz -Alignment 1 - 0.476 bytes/cycle - 1361.71 MiB/sec @ 3 ghz -Alignment 0 - 0.465 bytes/cycle - 1330.74 MiB/sec @ 3 ghz -Average - 0.443 bytes/cycle - 1266.30 MiB/sec @ 3 ghz +Alignment 7 - 0.479 bytes/cycle - 1369.48 MiB/sec @ 3 ghz +Alignment 6 - 0.479 bytes/cycle - 1369.47 MiB/sec @ 3 ghz +Alignment 5 - 0.479 bytes/cycle - 1369.47 MiB/sec @ 3 ghz +Alignment 4 - 0.479 bytes/cycle - 1369.48 MiB/sec @ 3 ghz +Alignment 3 - 0.479 bytes/cycle - 1369.47 MiB/sec @ 3 ghz +Alignment 2 - 0.479 bytes/cycle - 1369.48 MiB/sec @ 3 ghz +Alignment 1 - 0.478 bytes/cycle - 1367.35 MiB/sec @ 3 ghz +Alignment 0 - 0.479 bytes/cycle - 1369.47 MiB/sec @ 3 ghz +Average - 0.479 bytes/cycle - 1369.21 MiB/sec @ 3 ghz Small key speed test - 1-byte keys - 32.00 cycles/hash Small key speed test - 2-byte keys - 31.00 cycles/hash Small key speed test - 3-byte keys - 33.00 cycles/hash -Small key speed test - 4-byte keys - 32.00 cycles/hash -Small key speed test - 5-byte keys - 40.97 cycles/hash -Small key speed test - 6-byte keys - 41.00 cycles/hash -Small key speed test - 7-byte keys - 41.00 cycles/hash +Small key speed test - 4-byte keys - 31.97 cycles/hash +Small key speed test - 5-byte keys - 40.59 cycles/hash +Small key speed test - 6-byte keys - 40.60 cycles/hash +Small key speed test - 7-byte keys - 40.71 cycles/hash Small key speed test - 8-byte keys - 40.00 cycles/hash -Small key speed test - 9-byte keys - 49.12 cycles/hash -Small key speed test - 10-byte keys - 49.90 cycles/hash +Small key speed test - 9-byte keys - 49.00 cycles/hash +Small key speed test - 10-byte keys - 49.00 cycles/hash Small key speed test - 11-byte keys - 49.00 cycles/hash Small key speed test - 12-byte keys - 50.00 cycles/hash -Small key speed test - 13-byte keys - 58.70 cycles/hash +Small key speed test - 13-byte keys - 58.00 cycles/hash Small key speed test - 14-byte keys - 58.00 cycles/hash Small key speed test - 15-byte keys - 59.00 cycles/hash -Small key speed test - 16-byte keys - 57.97 cycles/hash -Small key speed test - 17-byte keys - 66.00 cycles/hash -Small key speed test - 18-byte keys - 67.00 cycles/hash -Small key speed test - 19-byte keys - 66.49 cycles/hash -Small key speed test - 20-byte keys - 67.00 cycles/hash -Small key speed test - 21-byte keys - 75.98 cycles/hash -Small key speed test - 22-byte keys - 75.67 cycles/hash -Small key speed test - 23-byte keys - 75.99 cycles/hash -Small key speed test - 24-byte keys - 76.13 cycles/hash -Small key speed test - 25-byte keys - 85.19 cycles/hash -Small key speed test - 26-byte keys - 85.00 cycles/hash -Small key speed test - 27-byte keys - 85.00 cycles/hash -Small key speed test - 28-byte keys - 84.92 cycles/hash -Small key speed test - 29-byte keys - 94.96 cycles/hash -Small key speed test - 30-byte keys - 94.66 cycles/hash -Small key speed test - 31-byte keys - 94.49 cycles/hash -Average 61.843 cycles/hash +Small key speed test - 16-byte keys - 57.46 cycles/hash +Small key speed test - 17-byte keys - 66.20 cycles/hash +Small key speed test - 18-byte keys - 66.43 cycles/hash +Small key speed test - 19-byte keys - 66.00 cycles/hash +Small key speed test - 20-byte keys - 66.84 cycles/hash +Small key speed test - 21-byte keys - 75.86 cycles/hash +Small key speed test - 22-byte keys - 75.77 cycles/hash +Small key speed test - 23-byte keys - 75.96 cycles/hash +Small key speed test - 24-byte keys - 75.78 cycles/hash +Small key speed test - 25-byte keys - 84.74 cycles/hash +Small key speed test - 26-byte keys - 84.72 cycles/hash +Small key speed test - 27-byte keys - 84.75 cycles/hash +Small key speed test - 28-byte keys - 84.95 cycles/hash +Small key speed test - 29-byte keys - 94.00 cycles/hash +Small key speed test - 30-byte keys - 93.95 cycles/hash +Small key speed test - 31-byte keys - 93.97 cycles/hash +Average 61.589 cycles/hash [[[ 'Hashmap' Speed Tests ]]] diff --git a/doc/poly_2_mersenne.txt b/doc/poly_2_mersenne.txt index 0efc872c..d6763216 100644 --- a/doc/poly_2_mersenne.txt +++ b/doc/poly_2_mersenne.txt @@ -11,48 +11,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 0.462 bytes/cycle - 1322.95 MiB/sec @ 3 ghz -Alignment 6 - 0.462 bytes/cycle - 1322.94 MiB/sec @ 3 ghz -Alignment 5 - 0.462 bytes/cycle - 1322.96 MiB/sec @ 3 ghz -Alignment 4 - 0.463 bytes/cycle - 1325.97 MiB/sec @ 3 ghz -Alignment 3 - 0.462 bytes/cycle - 1322.92 MiB/sec @ 3 ghz -Alignment 2 - 0.462 bytes/cycle - 1322.98 MiB/sec @ 3 ghz -Alignment 1 - 0.462 bytes/cycle - 1322.94 MiB/sec @ 3 ghz -Alignment 0 - 0.463 bytes/cycle - 1325.91 MiB/sec @ 3 ghz -Average - 0.463 bytes/cycle - 1323.69 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 39.00 cycles/hash -Small key speed test - 2-byte keys - 38.00 cycles/hash -Small key speed test - 3-byte keys - 40.52 cycles/hash -Small key speed test - 4-byte keys - 38.00 cycles/hash -Small key speed test - 5-byte keys - 47.00 cycles/hash -Small key speed test - 6-byte keys - 47.00 cycles/hash -Small key speed test - 7-byte keys - 47.00 cycles/hash -Small key speed test - 8-byte keys - 46.00 cycles/hash -Small key speed test - 9-byte keys - 55.00 cycles/hash -Small key speed test - 10-byte keys - 54.87 cycles/hash -Small key speed test - 11-byte keys - 55.00 cycles/hash -Small key speed test - 12-byte keys - 55.00 cycles/hash -Small key speed test - 13-byte keys - 64.00 cycles/hash -Small key speed test - 14-byte keys - 63.00 cycles/hash -Small key speed test - 15-byte keys - 63.30 cycles/hash -Small key speed test - 16-byte keys - 63.16 cycles/hash -Small key speed test - 17-byte keys - 71.96 cycles/hash -Small key speed test - 18-byte keys - 71.71 cycles/hash -Small key speed test - 19-byte keys - 72.00 cycles/hash -Small key speed test - 20-byte keys - 72.00 cycles/hash -Small key speed test - 21-byte keys - 80.00 cycles/hash -Small key speed test - 22-byte keys - 80.00 cycles/hash -Small key speed test - 23-byte keys - 80.53 cycles/hash -Small key speed test - 24-byte keys - 81.00 cycles/hash -Small key speed test - 25-byte keys - 89.00 cycles/hash -Small key speed test - 26-byte keys - 89.00 cycles/hash -Small key speed test - 27-byte keys - 89.00 cycles/hash -Small key speed test - 28-byte keys - 89.00 cycles/hash -Small key speed test - 29-byte keys - 98.00 cycles/hash -Small key speed test - 30-byte keys - 97.65 cycles/hash -Small key speed test - 31-byte keys - 98.00 cycles/hash -Average 66.926 cycles/hash +Alignment 7 - 0.477 bytes/cycle - 1363.46 MiB/sec @ 3 ghz +Alignment 6 - 0.477 bytes/cycle - 1363.81 MiB/sec @ 3 ghz +Alignment 5 - 0.476 bytes/cycle - 1363.05 MiB/sec @ 3 ghz +Alignment 4 - 0.477 bytes/cycle - 1364.32 MiB/sec @ 3 ghz +Alignment 3 - 0.477 bytes/cycle - 1366.06 MiB/sec @ 3 ghz +Alignment 2 - 0.477 bytes/cycle - 1364.49 MiB/sec @ 3 ghz +Alignment 1 - 0.477 bytes/cycle - 1363.53 MiB/sec @ 3 ghz +Alignment 0 - 0.477 bytes/cycle - 1363.55 MiB/sec @ 3 ghz +Average - 0.477 bytes/cycle - 1364.03 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 40.00 cycles/hash +Small key speed test - 2-byte keys - 39.00 cycles/hash +Small key speed test - 3-byte keys - 41.71 cycles/hash +Small key speed test - 4-byte keys - 40.00 cycles/hash +Small key speed test - 5-byte keys - 49.00 cycles/hash +Small key speed test - 6-byte keys - 49.65 cycles/hash +Small key speed test - 7-byte keys - 49.00 cycles/hash +Small key speed test - 8-byte keys - 49.20 cycles/hash +Small key speed test - 9-byte keys - 57.91 cycles/hash +Small key speed test - 10-byte keys - 57.99 cycles/hash +Small key speed test - 11-byte keys - 58.00 cycles/hash +Small key speed test - 12-byte keys - 58.00 cycles/hash +Small key speed test - 13-byte keys - 66.59 cycles/hash +Small key speed test - 14-byte keys - 66.52 cycles/hash +Small key speed test - 15-byte keys - 66.50 cycles/hash +Small key speed test - 16-byte keys - 66.48 cycles/hash +Small key speed test - 17-byte keys - 75.53 cycles/hash +Small key speed test - 18-byte keys - 75.53 cycles/hash +Small key speed test - 19-byte keys - 75.44 cycles/hash +Small key speed test - 20-byte keys - 75.73 cycles/hash +Small key speed test - 21-byte keys - 84.83 cycles/hash +Small key speed test - 22-byte keys - 84.75 cycles/hash +Small key speed test - 23-byte keys - 84.70 cycles/hash +Small key speed test - 24-byte keys - 84.83 cycles/hash +Small key speed test - 25-byte keys - 93.57 cycles/hash +Small key speed test - 26-byte keys - 93.56 cycles/hash +Small key speed test - 27-byte keys - 93.56 cycles/hash +Small key speed test - 28-byte keys - 94.00 cycles/hash +Small key speed test - 29-byte keys - 102.55 cycles/hash +Small key speed test - 30-byte keys - 102.51 cycles/hash +Small key speed test - 31-byte keys - 102.51 cycles/hash +Average 70.295 cycles/hash [[[ 'Hashmap' Speed Tests ]]] diff --git a/doc/poly_3_mersenne.txt b/doc/poly_3_mersenne.txt index 033ccb22..a60bba61 100644 --- a/doc/poly_3_mersenne.txt +++ b/doc/poly_3_mersenne.txt @@ -11,48 +11,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 0.462 bytes/cycle - 1322.85 MiB/sec @ 3 ghz -Alignment 6 - 0.462 bytes/cycle - 1322.88 MiB/sec @ 3 ghz -Alignment 5 - 0.462 bytes/cycle - 1322.86 MiB/sec @ 3 ghz -Alignment 4 - 0.463 bytes/cycle - 1325.84 MiB/sec @ 3 ghz -Alignment 3 - 0.462 bytes/cycle - 1322.80 MiB/sec @ 3 ghz -Alignment 2 - 0.462 bytes/cycle - 1322.83 MiB/sec @ 3 ghz -Alignment 1 - 0.462 bytes/cycle - 1322.83 MiB/sec @ 3 ghz -Alignment 0 - 0.463 bytes/cycle - 1325.87 MiB/sec @ 3 ghz -Average - 0.463 bytes/cycle - 1323.59 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 47.00 cycles/hash -Small key speed test - 2-byte keys - 46.00 cycles/hash -Small key speed test - 3-byte keys - 49.60 cycles/hash -Small key speed test - 4-byte keys - 45.29 cycles/hash -Small key speed test - 5-byte keys - 54.00 cycles/hash -Small key speed test - 6-byte keys - 54.00 cycles/hash -Small key speed test - 7-byte keys - 54.00 cycles/hash -Small key speed test - 8-byte keys - 55.00 cycles/hash -Small key speed test - 9-byte keys - 62.94 cycles/hash -Small key speed test - 10-byte keys - 62.00 cycles/hash -Small key speed test - 11-byte keys - 63.00 cycles/hash -Small key speed test - 12-byte keys - 62.83 cycles/hash -Small key speed test - 13-byte keys - 71.00 cycles/hash -Small key speed test - 14-byte keys - 71.00 cycles/hash -Small key speed test - 15-byte keys - 71.00 cycles/hash -Small key speed test - 16-byte keys - 71.00 cycles/hash -Small key speed test - 17-byte keys - 79.68 cycles/hash -Small key speed test - 18-byte keys - 79.31 cycles/hash -Small key speed test - 19-byte keys - 79.90 cycles/hash -Small key speed test - 20-byte keys - 80.00 cycles/hash -Small key speed test - 21-byte keys - 88.00 cycles/hash -Small key speed test - 22-byte keys - 88.00 cycles/hash -Small key speed test - 23-byte keys - 88.73 cycles/hash -Small key speed test - 24-byte keys - 88.00 cycles/hash -Small key speed test - 25-byte keys - 98.00 cycles/hash -Small key speed test - 26-byte keys - 97.75 cycles/hash -Small key speed test - 27-byte keys - 97.58 cycles/hash -Small key speed test - 28-byte keys - 98.00 cycles/hash -Small key speed test - 29-byte keys - 106.00 cycles/hash -Small key speed test - 30-byte keys - 106.00 cycles/hash -Small key speed test - 31-byte keys - 106.00 cycles/hash -Average 74.858 cycles/hash +Alignment 7 - 0.469 bytes/cycle - 1342.87 MiB/sec @ 3 ghz +Alignment 6 - 0.469 bytes/cycle - 1341.58 MiB/sec @ 3 ghz +Alignment 5 - 0.470 bytes/cycle - 1343.60 MiB/sec @ 3 ghz +Alignment 4 - 0.469 bytes/cycle - 1343.20 MiB/sec @ 3 ghz +Alignment 3 - 0.469 bytes/cycle - 1341.74 MiB/sec @ 3 ghz +Alignment 2 - 0.470 bytes/cycle - 1343.58 MiB/sec @ 3 ghz +Alignment 1 - 0.469 bytes/cycle - 1342.28 MiB/sec @ 3 ghz +Alignment 0 - 0.470 bytes/cycle - 1343.75 MiB/sec @ 3 ghz +Average - 0.469 bytes/cycle - 1342.82 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 49.26 cycles/hash +Small key speed test - 2-byte keys - 48.00 cycles/hash +Small key speed test - 3-byte keys - 50.97 cycles/hash +Small key speed test - 4-byte keys - 50.00 cycles/hash +Small key speed test - 5-byte keys - 58.00 cycles/hash +Small key speed test - 6-byte keys - 57.95 cycles/hash +Small key speed test - 7-byte keys - 58.69 cycles/hash +Small key speed test - 8-byte keys - 58.95 cycles/hash +Small key speed test - 9-byte keys - 67.58 cycles/hash +Small key speed test - 10-byte keys - 67.45 cycles/hash +Small key speed test - 11-byte keys - 67.44 cycles/hash +Small key speed test - 12-byte keys - 67.00 cycles/hash +Small key speed test - 13-byte keys - 75.93 cycles/hash +Small key speed test - 14-byte keys - 76.92 cycles/hash +Small key speed test - 15-byte keys - 76.57 cycles/hash +Small key speed test - 16-byte keys - 76.00 cycles/hash +Small key speed test - 17-byte keys - 84.84 cycles/hash +Small key speed test - 18-byte keys - 84.73 cycles/hash +Small key speed test - 19-byte keys - 84.98 cycles/hash +Small key speed test - 20-byte keys - 85.90 cycles/hash +Small key speed test - 21-byte keys - 94.98 cycles/hash +Small key speed test - 22-byte keys - 95.00 cycles/hash +Small key speed test - 23-byte keys - 95.00 cycles/hash +Small key speed test - 24-byte keys - 95.94 cycles/hash +Small key speed test - 25-byte keys - 104.96 cycles/hash +Small key speed test - 26-byte keys - 104.98 cycles/hash +Small key speed test - 27-byte keys - 104.95 cycles/hash +Small key speed test - 28-byte keys - 104.97 cycles/hash +Small key speed test - 29-byte keys - 112.94 cycles/hash +Small key speed test - 30-byte keys - 112.94 cycles/hash +Small key speed test - 31-byte keys - 113.00 cycles/hash +Average 80.220 cycles/hash [[[ 'Hashmap' Speed Tests ]]] diff --git a/doc/poly_4_mersenne.txt b/doc/poly_4_mersenne.txt index 08ee9676..f305d3f3 100644 --- a/doc/poly_4_mersenne.txt +++ b/doc/poly_4_mersenne.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 0.476 bytes/cycle - 1360.52 MiB/sec @ 3 ghz -Alignment 6 - 0.475 bytes/cycle - 1357.62 MiB/sec @ 3 ghz -Alignment 5 - 0.474 bytes/cycle - 1355.97 MiB/sec @ 3 ghz -Alignment 4 - 0.474 bytes/cycle - 1354.97 MiB/sec @ 3 ghz -Alignment 3 - 0.476 bytes/cycle - 1360.71 MiB/sec @ 3 ghz -Alignment 2 - 0.476 bytes/cycle - 1361.00 MiB/sec @ 3 ghz -Alignment 1 - 0.476 bytes/cycle - 1360.72 MiB/sec @ 3 ghz -Alignment 0 - 0.475 bytes/cycle - 1359.37 MiB/sec @ 3 ghz -Average - 0.475 bytes/cycle - 1358.86 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 57.99 cycles/hash -Small key speed test - 2-byte keys - 56.93 cycles/hash -Small key speed test - 3-byte keys - 58.00 cycles/hash -Small key speed test - 4-byte keys - 57.28 cycles/hash -Small key speed test - 5-byte keys - 66.00 cycles/hash -Small key speed test - 6-byte keys - 66.31 cycles/hash -Small key speed test - 7-byte keys - 66.70 cycles/hash -Small key speed test - 8-byte keys - 66.44 cycles/hash -Small key speed test - 9-byte keys - 75.00 cycles/hash -Small key speed test - 10-byte keys - 75.73 cycles/hash -Small key speed test - 11-byte keys - 75.57 cycles/hash -Small key speed test - 12-byte keys - 75.29 cycles/hash -Small key speed test - 13-byte keys - 83.99 cycles/hash -Small key speed test - 14-byte keys - 84.00 cycles/hash -Small key speed test - 15-byte keys - 84.00 cycles/hash -Small key speed test - 16-byte keys - 84.60 cycles/hash -Small key speed test - 17-byte keys - 92.99 cycles/hash -Small key speed test - 18-byte keys - 93.89 cycles/hash -Small key speed test - 19-byte keys - 93.68 cycles/hash -Small key speed test - 20-byte keys - 92.99 cycles/hash -Small key speed test - 21-byte keys - 104.11 cycles/hash -Small key speed test - 22-byte keys - 104.99 cycles/hash -Small key speed test - 23-byte keys - 104.52 cycles/hash -Small key speed test - 24-byte keys - 103.25 cycles/hash -Small key speed test - 25-byte keys - 111.79 cycles/hash -Small key speed test - 26-byte keys - 112.27 cycles/hash -Small key speed test - 27-byte keys - 112.20 cycles/hash -Small key speed test - 28-byte keys - 111.89 cycles/hash -Small key speed test - 29-byte keys - 120.23 cycles/hash -Small key speed test - 30-byte keys - 119.98 cycles/hash -Small key speed test - 31-byte keys - 120.52 cycles/hash -Average 88.165 cycles/hash +Alignment 7 - 0.469 bytes/cycle - 1341.22 MiB/sec @ 3 ghz +Alignment 6 - 0.470 bytes/cycle - 1343.75 MiB/sec @ 3 ghz +Alignment 5 - 0.469 bytes/cycle - 1342.86 MiB/sec @ 3 ghz +Alignment 4 - 0.470 bytes/cycle - 1343.75 MiB/sec @ 3 ghz +Alignment 3 - 0.469 bytes/cycle - 1343.17 MiB/sec @ 3 ghz +Alignment 2 - 0.470 bytes/cycle - 1343.63 MiB/sec @ 3 ghz +Alignment 1 - 0.470 bytes/cycle - 1343.69 MiB/sec @ 3 ghz +Alignment 0 - 0.470 bytes/cycle - 1343.47 MiB/sec @ 3 ghz +Average - 0.469 bytes/cycle - 1343.19 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 58.71 cycles/hash +Small key speed test - 2-byte keys - 57.12 cycles/hash +Small key speed test - 3-byte keys - 59.00 cycles/hash +Small key speed test - 4-byte keys - 58.00 cycles/hash +Small key speed test - 5-byte keys - 67.00 cycles/hash +Small key speed test - 6-byte keys - 67.00 cycles/hash +Small key speed test - 7-byte keys - 67.12 cycles/hash +Small key speed test - 8-byte keys - 67.12 cycles/hash +Small key speed test - 9-byte keys - 76.09 cycles/hash +Small key speed test - 10-byte keys - 76.95 cycles/hash +Small key speed test - 11-byte keys - 76.92 cycles/hash +Small key speed test - 12-byte keys - 75.96 cycles/hash +Small key speed test - 13-byte keys - 85.01 cycles/hash +Small key speed test - 14-byte keys - 84.93 cycles/hash +Small key speed test - 15-byte keys - 84.97 cycles/hash +Small key speed test - 16-byte keys - 85.11 cycles/hash +Small key speed test - 17-byte keys - 93.92 cycles/hash +Small key speed test - 18-byte keys - 94.90 cycles/hash +Small key speed test - 19-byte keys - 94.00 cycles/hash +Small key speed test - 20-byte keys - 94.25 cycles/hash +Small key speed test - 21-byte keys - 105.90 cycles/hash +Small key speed test - 22-byte keys - 106.08 cycles/hash +Small key speed test - 23-byte keys - 105.43 cycles/hash +Small key speed test - 24-byte keys - 104.45 cycles/hash +Small key speed test - 25-byte keys - 112.90 cycles/hash +Small key speed test - 26-byte keys - 112.95 cycles/hash +Small key speed test - 27-byte keys - 112.92 cycles/hash +Small key speed test - 28-byte keys - 112.92 cycles/hash +Small key speed test - 29-byte keys - 121.63 cycles/hash +Small key speed test - 30-byte keys - 121.91 cycles/hash +Small key speed test - 31-byte keys - 121.90 cycles/hash +Average 89.131 cycles/hash [[[ 'Hashmap' Speed Tests ]]] diff --git a/doc/polymur.txt b/doc/polymur.txt index 96919a04..cbe79792 100644 --- a/doc/polymur.txt +++ b/doc/polymur.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 3.327 bytes/cycle - 9519.95 MiB/sec @ 3 ghz -Alignment 6 - 3.328 bytes/cycle - 9520.79 MiB/sec @ 3 ghz -Alignment 5 - 3.325 bytes/cycle - 9513.65 MiB/sec @ 3 ghz -Alignment 4 - 3.327 bytes/cycle - 9517.24 MiB/sec @ 3 ghz -Alignment 3 - 3.326 bytes/cycle - 9516.35 MiB/sec @ 3 ghz -Alignment 2 - 3.327 bytes/cycle - 9517.66 MiB/sec @ 3 ghz -Alignment 1 - 3.323 bytes/cycle - 9507.54 MiB/sec @ 3 ghz -Alignment 0 - 3.325 bytes/cycle - 9513.60 MiB/sec @ 3 ghz -Average - 3.326 bytes/cycle - 9515.85 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 41.00 cycles/hash -Small key speed test - 2-byte keys - 41.00 cycles/hash -Small key speed test - 3-byte keys - 41.00 cycles/hash -Small key speed test - 4-byte keys - 38.45 cycles/hash -Small key speed test - 5-byte keys - 38.43 cycles/hash -Small key speed test - 6-byte keys - 38.34 cycles/hash -Small key speed test - 7-byte keys - 38.33 cycles/hash -Small key speed test - 8-byte keys - 40.83 cycles/hash -Small key speed test - 9-byte keys - 40.78 cycles/hash -Small key speed test - 10-byte keys - 40.78 cycles/hash -Small key speed test - 11-byte keys - 40.92 cycles/hash -Small key speed test - 12-byte keys - 40.99 cycles/hash -Small key speed test - 13-byte keys - 40.99 cycles/hash -Small key speed test - 14-byte keys - 40.98 cycles/hash -Small key speed test - 15-byte keys - 40.98 cycles/hash -Small key speed test - 16-byte keys - 40.98 cycles/hash -Small key speed test - 17-byte keys - 41.00 cycles/hash -Small key speed test - 18-byte keys - 41.00 cycles/hash -Small key speed test - 19-byte keys - 41.00 cycles/hash -Small key speed test - 20-byte keys - 41.00 cycles/hash -Small key speed test - 21-byte keys - 40.87 cycles/hash -Small key speed test - 22-byte keys - 49.00 cycles/hash -Small key speed test - 23-byte keys - 49.00 cycles/hash +Alignment 7 - 3.376 bytes/cycle - 9658.87 MiB/sec @ 3 ghz +Alignment 6 - 3.384 bytes/cycle - 9680.96 MiB/sec @ 3 ghz +Alignment 5 - 3.383 bytes/cycle - 9678.19 MiB/sec @ 3 ghz +Alignment 4 - 3.383 bytes/cycle - 9677.41 MiB/sec @ 3 ghz +Alignment 3 - 3.382 bytes/cycle - 9675.33 MiB/sec @ 3 ghz +Alignment 2 - 3.384 bytes/cycle - 9682.09 MiB/sec @ 3 ghz +Alignment 1 - 3.384 bytes/cycle - 9681.27 MiB/sec @ 3 ghz +Alignment 0 - 3.382 bytes/cycle - 9676.53 MiB/sec @ 3 ghz +Average - 3.382 bytes/cycle - 9676.33 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 40.00 cycles/hash +Small key speed test - 2-byte keys - 40.00 cycles/hash +Small key speed test - 3-byte keys - 40.25 cycles/hash +Small key speed test - 4-byte keys - 38.00 cycles/hash +Small key speed test - 5-byte keys - 37.99 cycles/hash +Small key speed test - 6-byte keys - 37.99 cycles/hash +Small key speed test - 7-byte keys - 37.99 cycles/hash +Small key speed test - 8-byte keys - 40.00 cycles/hash +Small key speed test - 9-byte keys - 40.00 cycles/hash +Small key speed test - 10-byte keys - 40.00 cycles/hash +Small key speed test - 11-byte keys - 40.00 cycles/hash +Small key speed test - 12-byte keys - 40.00 cycles/hash +Small key speed test - 13-byte keys - 40.00 cycles/hash +Small key speed test - 14-byte keys - 40.00 cycles/hash +Small key speed test - 15-byte keys - 40.00 cycles/hash +Small key speed test - 16-byte keys - 40.00 cycles/hash +Small key speed test - 17-byte keys - 40.00 cycles/hash +Small key speed test - 18-byte keys - 40.00 cycles/hash +Small key speed test - 19-byte keys - 40.00 cycles/hash +Small key speed test - 20-byte keys - 40.00 cycles/hash +Small key speed test - 21-byte keys - 40.00 cycles/hash +Small key speed test - 22-byte keys - 48.95 cycles/hash +Small key speed test - 23-byte keys - 48.99 cycles/hash Small key speed test - 24-byte keys - 49.00 cycles/hash -Small key speed test - 25-byte keys - 49.00 cycles/hash -Small key speed test - 26-byte keys - 49.00 cycles/hash -Small key speed test - 27-byte keys - 49.00 cycles/hash -Small key speed test - 28-byte keys - 49.00 cycles/hash -Small key speed test - 29-byte keys - 48.89 cycles/hash -Small key speed test - 30-byte keys - 48.90 cycles/hash -Small key speed test - 31-byte keys - 48.91 cycles/hash -Average 43.205 cycles/hash +Small key speed test - 25-byte keys - 49.69 cycles/hash +Small key speed test - 26-byte keys - 49.27 cycles/hash +Small key speed test - 27-byte keys - 49.25 cycles/hash +Small key speed test - 28-byte keys - 49.24 cycles/hash +Small key speed test - 29-byte keys - 49.21 cycles/hash +Small key speed test - 30-byte keys - 49.00 cycles/hash +Small key speed test - 31-byte keys - 48.76 cycles/hash +Average 42.696 cycles/hash [[[ 'Hashmap' Speed Tests ]]] diff --git a/doc/prvhash64_128.txt b/doc/prvhash64_128.txt index b25421d3..1fedbfcf 100644 --- a/doc/prvhash64_128.txt +++ b/doc/prvhash64_128.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 1.024 bytes/cycle - 2930.04 MiB/sec @ 3 ghz -Alignment 6 - 1.135 bytes/cycle - 3248.23 MiB/sec @ 3 ghz -Alignment 5 - 1.135 bytes/cycle - 3246.50 MiB/sec @ 3 ghz -Alignment 4 - 1.134 bytes/cycle - 3244.92 MiB/sec @ 3 ghz -Alignment 3 - 1.135 bytes/cycle - 3247.01 MiB/sec @ 3 ghz -Alignment 2 - 1.134 bytes/cycle - 3244.83 MiB/sec @ 3 ghz -Alignment 1 - 1.135 bytes/cycle - 3246.23 MiB/sec @ 3 ghz -Alignment 0 - 1.135 bytes/cycle - 3247.53 MiB/sec @ 3 ghz -Average - 1.121 bytes/cycle - 3206.91 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 69.00 cycles/hash -Small key speed test - 2-byte keys - 69.99 cycles/hash -Small key speed test - 3-byte keys - 71.98 cycles/hash -Small key speed test - 4-byte keys - 70.98 cycles/hash -Small key speed test - 5-byte keys - 70.97 cycles/hash -Small key speed test - 6-byte keys - 70.96 cycles/hash -Small key speed test - 7-byte keys - 70.96 cycles/hash -Small key speed test - 8-byte keys - 63.85 cycles/hash -Small key speed test - 9-byte keys - 64.00 cycles/hash -Small key speed test - 10-byte keys - 64.89 cycles/hash -Small key speed test - 11-byte keys - 65.93 cycles/hash -Small key speed test - 12-byte keys - 64.80 cycles/hash -Small key speed test - 13-byte keys - 64.86 cycles/hash -Small key speed test - 14-byte keys - 64.87 cycles/hash -Small key speed test - 15-byte keys - 64.86 cycles/hash -Small key speed test - 16-byte keys - 65.00 cycles/hash -Small key speed test - 17-byte keys - 64.22 cycles/hash -Small key speed test - 18-byte keys - 65.00 cycles/hash -Small key speed test - 19-byte keys - 65.87 cycles/hash -Small key speed test - 20-byte keys - 65.62 cycles/hash -Small key speed test - 21-byte keys - 65.48 cycles/hash -Small key speed test - 22-byte keys - 65.52 cycles/hash -Small key speed test - 23-byte keys - 65.48 cycles/hash -Small key speed test - 24-byte keys - 77.99 cycles/hash -Small key speed test - 25-byte keys - 77.88 cycles/hash -Small key speed test - 26-byte keys - 76.97 cycles/hash -Small key speed test - 27-byte keys - 77.00 cycles/hash -Small key speed test - 28-byte keys - 76.97 cycles/hash -Small key speed test - 29-byte keys - 76.98 cycles/hash -Small key speed test - 30-byte keys - 76.97 cycles/hash -Small key speed test - 31-byte keys - 76.95 cycles/hash -Average 69.445 cycles/hash +Alignment 7 - 1.172 bytes/cycle - 3353.84 MiB/sec @ 3 ghz +Alignment 6 - 1.172 bytes/cycle - 3353.90 MiB/sec @ 3 ghz +Alignment 5 - 1.172 bytes/cycle - 3352.55 MiB/sec @ 3 ghz +Alignment 4 - 1.172 bytes/cycle - 3354.53 MiB/sec @ 3 ghz +Alignment 3 - 1.172 bytes/cycle - 3353.17 MiB/sec @ 3 ghz +Alignment 2 - 1.172 bytes/cycle - 3353.82 MiB/sec @ 3 ghz +Alignment 1 - 1.172 bytes/cycle - 3354.15 MiB/sec @ 3 ghz +Alignment 0 - 1.172 bytes/cycle - 3354.48 MiB/sec @ 3 ghz +Average - 1.172 bytes/cycle - 3353.81 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 66.59 cycles/hash +Small key speed test - 2-byte keys - 68.00 cycles/hash +Small key speed test - 3-byte keys - 69.93 cycles/hash +Small key speed test - 4-byte keys - 68.71 cycles/hash +Small key speed test - 5-byte keys - 68.92 cycles/hash +Small key speed test - 6-byte keys - 68.65 cycles/hash +Small key speed test - 7-byte keys - 68.84 cycles/hash +Small key speed test - 8-byte keys - 61.99 cycles/hash +Small key speed test - 9-byte keys - 62.00 cycles/hash +Small key speed test - 10-byte keys - 63.00 cycles/hash +Small key speed test - 11-byte keys - 64.00 cycles/hash +Small key speed test - 12-byte keys - 62.83 cycles/hash +Small key speed test - 13-byte keys - 62.85 cycles/hash +Small key speed test - 14-byte keys - 62.80 cycles/hash +Small key speed test - 15-byte keys - 62.90 cycles/hash +Small key speed test - 16-byte keys - 63.00 cycles/hash +Small key speed test - 17-byte keys - 62.47 cycles/hash +Small key speed test - 18-byte keys - 63.75 cycles/hash +Small key speed test - 19-byte keys - 63.69 cycles/hash +Small key speed test - 20-byte keys - 63.78 cycles/hash +Small key speed test - 21-byte keys - 63.78 cycles/hash +Small key speed test - 22-byte keys - 63.81 cycles/hash +Small key speed test - 23-byte keys - 63.78 cycles/hash +Small key speed test - 24-byte keys - 75.82 cycles/hash +Small key speed test - 25-byte keys - 76.00 cycles/hash +Small key speed test - 26-byte keys - 75.84 cycles/hash +Small key speed test - 27-byte keys - 75.99 cycles/hash +Small key speed test - 28-byte keys - 75.80 cycles/hash +Small key speed test - 29-byte keys - 75.77 cycles/hash +Small key speed test - 30-byte keys - 75.84 cycles/hash +Small key speed test - 31-byte keys - 75.80 cycles/hash +Average 67.643 cycles/hash [[[ 'Hashmap' Speed Tests ]]] diff --git a/doc/prvhash64_64.txt b/doc/prvhash64_64.txt index fd604daf..69b2f06b 100644 --- a/doc/prvhash64_64.txt +++ b/doc/prvhash64_64.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 1.033 bytes/cycle - 2956.54 MiB/sec @ 3 ghz -Alignment 6 - 1.034 bytes/cycle - 2957.41 MiB/sec @ 3 ghz -Alignment 5 - 1.033 bytes/cycle - 2954.73 MiB/sec @ 3 ghz -Alignment 4 - 1.036 bytes/cycle - 2963.80 MiB/sec @ 3 ghz -Alignment 3 - 1.034 bytes/cycle - 2958.50 MiB/sec @ 3 ghz -Alignment 2 - 1.040 bytes/cycle - 2974.06 MiB/sec @ 3 ghz -Alignment 1 - 1.044 bytes/cycle - 2986.91 MiB/sec @ 3 ghz -Alignment 0 - 1.048 bytes/cycle - 2997.14 MiB/sec @ 3 ghz -Average - 1.038 bytes/cycle - 2968.64 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 38.96 cycles/hash -Small key speed test - 2-byte keys - 39.54 cycles/hash +Alignment 7 - 1.053 bytes/cycle - 3011.44 MiB/sec @ 3 ghz +Alignment 6 - 1.054 bytes/cycle - 3016.02 MiB/sec @ 3 ghz +Alignment 5 - 1.054 bytes/cycle - 3015.93 MiB/sec @ 3 ghz +Alignment 4 - 1.054 bytes/cycle - 3015.78 MiB/sec @ 3 ghz +Alignment 3 - 1.054 bytes/cycle - 3015.56 MiB/sec @ 3 ghz +Alignment 2 - 1.054 bytes/cycle - 3015.11 MiB/sec @ 3 ghz +Alignment 1 - 1.054 bytes/cycle - 3015.36 MiB/sec @ 3 ghz +Alignment 0 - 1.054 bytes/cycle - 3015.44 MiB/sec @ 3 ghz +Average - 1.054 bytes/cycle - 3015.08 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 38.57 cycles/hash +Small key speed test - 2-byte keys - 39.00 cycles/hash Small key speed test - 3-byte keys - 41.00 cycles/hash Small key speed test - 4-byte keys - 40.00 cycles/hash Small key speed test - 5-byte keys - 40.00 cycles/hash Small key speed test - 6-byte keys - 40.00 cycles/hash Small key speed test - 7-byte keys - 40.00 cycles/hash -Small key speed test - 8-byte keys - 41.98 cycles/hash -Small key speed test - 9-byte keys - 42.00 cycles/hash -Small key speed test - 10-byte keys - 43.00 cycles/hash +Small key speed test - 8-byte keys - 41.00 cycles/hash +Small key speed test - 9-byte keys - 42.14 cycles/hash +Small key speed test - 10-byte keys - 42.88 cycles/hash Small key speed test - 11-byte keys - 44.00 cycles/hash -Small key speed test - 12-byte keys - 44.00 cycles/hash -Small key speed test - 13-byte keys - 43.98 cycles/hash -Small key speed test - 14-byte keys - 44.00 cycles/hash -Small key speed test - 15-byte keys - 44.00 cycles/hash -Small key speed test - 16-byte keys - 50.97 cycles/hash -Small key speed test - 17-byte keys - 50.88 cycles/hash -Small key speed test - 18-byte keys - 51.00 cycles/hash -Small key speed test - 19-byte keys - 51.52 cycles/hash -Small key speed test - 20-byte keys - 51.00 cycles/hash -Small key speed test - 21-byte keys - 51.11 cycles/hash -Small key speed test - 22-byte keys - 51.00 cycles/hash -Small key speed test - 23-byte keys - 51.00 cycles/hash -Small key speed test - 24-byte keys - 58.53 cycles/hash -Small key speed test - 25-byte keys - 58.00 cycles/hash -Small key speed test - 26-byte keys - 58.63 cycles/hash -Small key speed test - 27-byte keys - 59.30 cycles/hash -Small key speed test - 28-byte keys - 64.83 cycles/hash -Small key speed test - 29-byte keys - 64.97 cycles/hash -Small key speed test - 30-byte keys - 64.78 cycles/hash -Small key speed test - 31-byte keys - 65.26 cycles/hash -Average 49.330 cycles/hash +Small key speed test - 12-byte keys - 43.64 cycles/hash +Small key speed test - 13-byte keys - 43.73 cycles/hash +Small key speed test - 14-byte keys - 43.72 cycles/hash +Small key speed test - 15-byte keys - 43.58 cycles/hash +Small key speed test - 16-byte keys - 50.00 cycles/hash +Small key speed test - 17-byte keys - 50.00 cycles/hash +Small key speed test - 18-byte keys - 50.23 cycles/hash +Small key speed test - 19-byte keys - 50.79 cycles/hash +Small key speed test - 20-byte keys - 50.42 cycles/hash +Small key speed test - 21-byte keys - 50.34 cycles/hash +Small key speed test - 22-byte keys - 50.00 cycles/hash +Small key speed test - 23-byte keys - 50.42 cycles/hash +Small key speed test - 24-byte keys - 57.98 cycles/hash +Small key speed test - 25-byte keys - 57.69 cycles/hash +Small key speed test - 26-byte keys - 57.95 cycles/hash +Small key speed test - 27-byte keys - 58.72 cycles/hash +Small key speed test - 28-byte keys - 57.81 cycles/hash +Small key speed test - 29-byte keys - 57.80 cycles/hash +Small key speed test - 30-byte keys - 57.80 cycles/hash +Small key speed test - 31-byte keys - 57.82 cycles/hash +Average 48.033 cycles/hash [[[ 'Hashmap' Speed Tests ]]] diff --git a/doc/prvhash64_64m.txt b/doc/prvhash64_64m.txt index 01abaccc..17d6b8a1 100644 --- a/doc/prvhash64_64m.txt +++ b/doc/prvhash64_64m.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 1.047 bytes/cycle - 2995.08 MiB/sec @ 3 ghz -Alignment 6 - 1.047 bytes/cycle - 2994.25 MiB/sec @ 3 ghz -Alignment 5 - 1.048 bytes/cycle - 2998.10 MiB/sec @ 3 ghz -Alignment 4 - 1.051 bytes/cycle - 3007.90 MiB/sec @ 3 ghz -Alignment 3 - 1.049 bytes/cycle - 3001.93 MiB/sec @ 3 ghz -Alignment 2 - 1.048 bytes/cycle - 2998.64 MiB/sec @ 3 ghz -Alignment 1 - 1.051 bytes/cycle - 3005.81 MiB/sec @ 3 ghz -Alignment 0 - 1.046 bytes/cycle - 2991.42 MiB/sec @ 3 ghz -Average - 1.048 bytes/cycle - 2999.14 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 39.00 cycles/hash -Small key speed test - 2-byte keys - 39.91 cycles/hash -Small key speed test - 3-byte keys - 41.80 cycles/hash -Small key speed test - 4-byte keys - 40.41 cycles/hash -Small key speed test - 5-byte keys - 40.75 cycles/hash -Small key speed test - 6-byte keys - 40.00 cycles/hash -Small key speed test - 7-byte keys - 40.47 cycles/hash -Small key speed test - 8-byte keys - 42.28 cycles/hash -Small key speed test - 9-byte keys - 41.70 cycles/hash -Small key speed test - 10-byte keys - 43.26 cycles/hash -Small key speed test - 11-byte keys - 44.86 cycles/hash -Small key speed test - 12-byte keys - 44.00 cycles/hash -Small key speed test - 13-byte keys - 44.63 cycles/hash -Small key speed test - 14-byte keys - 44.27 cycles/hash -Small key speed test - 15-byte keys - 44.52 cycles/hash -Small key speed test - 16-byte keys - 50.00 cycles/hash -Small key speed test - 17-byte keys - 50.61 cycles/hash -Small key speed test - 18-byte keys - 50.27 cycles/hash -Small key speed test - 19-byte keys - 50.00 cycles/hash -Small key speed test - 20-byte keys - 50.00 cycles/hash -Small key speed test - 21-byte keys - 50.00 cycles/hash -Small key speed test - 22-byte keys - 50.00 cycles/hash -Small key speed test - 23-byte keys - 50.12 cycles/hash -Small key speed test - 24-byte keys - 57.90 cycles/hash -Small key speed test - 25-byte keys - 58.99 cycles/hash -Small key speed test - 26-byte keys - 58.33 cycles/hash -Small key speed test - 27-byte keys - 58.00 cycles/hash -Small key speed test - 28-byte keys - 58.94 cycles/hash -Small key speed test - 29-byte keys - 58.84 cycles/hash -Small key speed test - 30-byte keys - 58.95 cycles/hash -Small key speed test - 31-byte keys - 58.86 cycles/hash -Average 48.441 cycles/hash +Alignment 7 - 1.076 bytes/cycle - 3078.39 MiB/sec @ 3 ghz +Alignment 6 - 1.076 bytes/cycle - 3078.38 MiB/sec @ 3 ghz +Alignment 5 - 1.074 bytes/cycle - 3072.66 MiB/sec @ 3 ghz +Alignment 4 - 1.076 bytes/cycle - 3078.38 MiB/sec @ 3 ghz +Alignment 3 - 1.075 bytes/cycle - 3074.28 MiB/sec @ 3 ghz +Alignment 2 - 1.076 bytes/cycle - 3078.38 MiB/sec @ 3 ghz +Alignment 1 - 1.076 bytes/cycle - 3078.38 MiB/sec @ 3 ghz +Alignment 0 - 1.076 bytes/cycle - 3078.56 MiB/sec @ 3 ghz +Average - 1.076 bytes/cycle - 3077.18 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 38.00 cycles/hash +Small key speed test - 2-byte keys - 39.00 cycles/hash +Small key speed test - 3-byte keys - 40.75 cycles/hash +Small key speed test - 4-byte keys - 39.23 cycles/hash +Small key speed test - 5-byte keys - 39.00 cycles/hash +Small key speed test - 6-byte keys - 39.28 cycles/hash +Small key speed test - 7-byte keys - 39.30 cycles/hash +Small key speed test - 8-byte keys - 41.00 cycles/hash +Small key speed test - 9-byte keys - 40.99 cycles/hash +Small key speed test - 10-byte keys - 42.00 cycles/hash +Small key speed test - 11-byte keys - 43.74 cycles/hash +Small key speed test - 12-byte keys - 43.72 cycles/hash +Small key speed test - 13-byte keys - 43.66 cycles/hash +Small key speed test - 14-byte keys - 43.68 cycles/hash +Small key speed test - 15-byte keys - 43.69 cycles/hash +Small key speed test - 16-byte keys - 48.91 cycles/hash +Small key speed test - 17-byte keys - 49.41 cycles/hash +Small key speed test - 18-byte keys - 49.72 cycles/hash +Small key speed test - 19-byte keys - 49.00 cycles/hash +Small key speed test - 20-byte keys - 49.00 cycles/hash +Small key speed test - 21-byte keys - 49.00 cycles/hash +Small key speed test - 22-byte keys - 49.00 cycles/hash +Small key speed test - 23-byte keys - 49.00 cycles/hash +Small key speed test - 24-byte keys - 56.71 cycles/hash +Small key speed test - 25-byte keys - 57.72 cycles/hash +Small key speed test - 26-byte keys - 56.99 cycles/hash +Small key speed test - 27-byte keys - 57.00 cycles/hash +Small key speed test - 28-byte keys - 57.00 cycles/hash +Small key speed test - 29-byte keys - 57.00 cycles/hash +Small key speed test - 30-byte keys - 57.00 cycles/hash +Small key speed test - 31-byte keys - 57.00 cycles/hash +Average 47.307 cycles/hash [[[ 'Hashmap' Speed Tests ]]] diff --git a/doc/prvhash64s_128.txt b/doc/prvhash64s_128.txt index 4825ec9b..51001f49 100644 --- a/doc/prvhash64s_128.txt +++ b/doc/prvhash64s_128.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 2.262 bytes/cycle - 6471.49 MiB/sec @ 3 ghz -Alignment 6 - 2.264 bytes/cycle - 6477.35 MiB/sec @ 3 ghz -Alignment 5 - 2.264 bytes/cycle - 6477.81 MiB/sec @ 3 ghz -Alignment 4 - 2.264 bytes/cycle - 6477.01 MiB/sec @ 3 ghz -Alignment 3 - 2.264 bytes/cycle - 6476.81 MiB/sec @ 3 ghz -Alignment 2 - 2.263 bytes/cycle - 6475.68 MiB/sec @ 3 ghz -Alignment 1 - 2.263 bytes/cycle - 6475.79 MiB/sec @ 3 ghz -Alignment 0 - 2.269 bytes/cycle - 6491.53 MiB/sec @ 3 ghz -Average - 2.264 bytes/cycle - 6477.93 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 303.16 cycles/hash -Small key speed test - 2-byte keys - 302.72 cycles/hash -Small key speed test - 3-byte keys - 303.62 cycles/hash -Small key speed test - 4-byte keys - 300.45 cycles/hash -Small key speed test - 5-byte keys - 304.86 cycles/hash -Small key speed test - 6-byte keys - 305.09 cycles/hash -Small key speed test - 7-byte keys - 305.04 cycles/hash -Small key speed test - 8-byte keys - 280.28 cycles/hash -Small key speed test - 9-byte keys - 434.53 cycles/hash -Small key speed test - 10-byte keys - 515.03 cycles/hash -Small key speed test - 11-byte keys - 543.84 cycles/hash -Small key speed test - 12-byte keys - 562.29 cycles/hash -Small key speed test - 13-byte keys - 568.09 cycles/hash -Small key speed test - 14-byte keys - 536.01 cycles/hash -Small key speed test - 15-byte keys - 363.74 cycles/hash -Small key speed test - 16-byte keys - 334.32 cycles/hash -Small key speed test - 17-byte keys - 362.91 cycles/hash -Small key speed test - 18-byte keys - 364.16 cycles/hash -Small key speed test - 19-byte keys - 366.82 cycles/hash -Small key speed test - 20-byte keys - 366.94 cycles/hash -Small key speed test - 21-byte keys - 369.46 cycles/hash -Small key speed test - 22-byte keys - 368.90 cycles/hash -Small key speed test - 23-byte keys - 371.39 cycles/hash -Small key speed test - 24-byte keys - 328.87 cycles/hash -Small key speed test - 25-byte keys - 342.10 cycles/hash -Small key speed test - 26-byte keys - 343.51 cycles/hash -Small key speed test - 27-byte keys - 345.82 cycles/hash -Small key speed test - 28-byte keys - 341.90 cycles/hash -Small key speed test - 29-byte keys - 344.21 cycles/hash -Small key speed test - 30-byte keys - 342.86 cycles/hash -Small key speed test - 31-byte keys - 343.13 cycles/hash -Average 373.098 cycles/hash +Alignment 7 - 2.302 bytes/cycle - 6586.21 MiB/sec @ 3 ghz +Alignment 6 - 2.295 bytes/cycle - 6566.97 MiB/sec @ 3 ghz +Alignment 5 - 2.302 bytes/cycle - 6586.16 MiB/sec @ 3 ghz +Alignment 4 - 2.302 bytes/cycle - 6586.16 MiB/sec @ 3 ghz +Alignment 3 - 2.296 bytes/cycle - 6568.91 MiB/sec @ 3 ghz +Alignment 2 - 2.302 bytes/cycle - 6586.39 MiB/sec @ 3 ghz +Alignment 1 - 2.302 bytes/cycle - 6586.36 MiB/sec @ 3 ghz +Alignment 0 - 2.301 bytes/cycle - 6584.06 MiB/sec @ 3 ghz +Average - 2.300 bytes/cycle - 6581.40 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 298.99 cycles/hash +Small key speed test - 2-byte keys - 298.59 cycles/hash +Small key speed test - 3-byte keys - 299.80 cycles/hash +Small key speed test - 4-byte keys - 296.12 cycles/hash +Small key speed test - 5-byte keys - 300.48 cycles/hash +Small key speed test - 6-byte keys - 300.26 cycles/hash +Small key speed test - 7-byte keys - 300.05 cycles/hash +Small key speed test - 8-byte keys - 276.09 cycles/hash +Small key speed test - 9-byte keys - 347.53 cycles/hash +Small key speed test - 10-byte keys - 348.11 cycles/hash +Small key speed test - 11-byte keys - 350.12 cycles/hash +Small key speed test - 12-byte keys - 352.49 cycles/hash +Small key speed test - 13-byte keys - 353.00 cycles/hash +Small key speed test - 14-byte keys - 352.41 cycles/hash +Small key speed test - 15-byte keys - 355.22 cycles/hash +Small key speed test - 16-byte keys - 326.16 cycles/hash +Small key speed test - 17-byte keys - 354.74 cycles/hash +Small key speed test - 18-byte keys - 355.91 cycles/hash +Small key speed test - 19-byte keys - 358.55 cycles/hash +Small key speed test - 20-byte keys - 358.48 cycles/hash +Small key speed test - 21-byte keys - 360.90 cycles/hash +Small key speed test - 22-byte keys - 360.67 cycles/hash +Small key speed test - 23-byte keys - 363.28 cycles/hash +Small key speed test - 24-byte keys - 321.99 cycles/hash +Small key speed test - 25-byte keys - 334.98 cycles/hash +Small key speed test - 26-byte keys - 336.42 cycles/hash +Small key speed test - 27-byte keys - 338.99 cycles/hash +Small key speed test - 28-byte keys - 335.46 cycles/hash +Small key speed test - 29-byte keys - 338.43 cycles/hash +Small key speed test - 30-byte keys - 336.91 cycles/hash +Small key speed test - 31-byte keys - 337.62 cycles/hash +Average 333.830 cycles/hash [[[ 'Hashmap' Speed Tests ]]] diff --git a/doc/prvhash64s_64.txt b/doc/prvhash64s_64.txt index 8b75d9c8..ff1c55e7 100644 --- a/doc/prvhash64s_64.txt +++ b/doc/prvhash64s_64.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 2.291 bytes/cycle - 6554.34 MiB/sec @ 3 ghz -Alignment 6 - 2.291 bytes/cycle - 6553.65 MiB/sec @ 3 ghz -Alignment 5 - 2.291 bytes/cycle - 6554.33 MiB/sec @ 3 ghz -Alignment 4 - 2.291 bytes/cycle - 6553.54 MiB/sec @ 3 ghz -Alignment 3 - 2.291 bytes/cycle - 6553.54 MiB/sec @ 3 ghz -Alignment 2 - 2.290 bytes/cycle - 6552.12 MiB/sec @ 3 ghz -Alignment 1 - 2.291 bytes/cycle - 6554.12 MiB/sec @ 3 ghz -Alignment 0 - 2.291 bytes/cycle - 6553.67 MiB/sec @ 3 ghz -Average - 2.291 bytes/cycle - 6553.66 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 229.25 cycles/hash -Small key speed test - 2-byte keys - 229.51 cycles/hash -Small key speed test - 3-byte keys - 230.88 cycles/hash -Small key speed test - 4-byte keys - 226.44 cycles/hash -Small key speed test - 5-byte keys - 231.86 cycles/hash -Small key speed test - 6-byte keys - 231.66 cycles/hash -Small key speed test - 7-byte keys - 231.72 cycles/hash -Small key speed test - 8-byte keys - 207.25 cycles/hash -Small key speed test - 9-byte keys - 291.35 cycles/hash -Small key speed test - 10-byte keys - 291.28 cycles/hash -Small key speed test - 11-byte keys - 295.47 cycles/hash -Small key speed test - 12-byte keys - 296.75 cycles/hash -Small key speed test - 13-byte keys - 295.30 cycles/hash -Small key speed test - 14-byte keys - 296.42 cycles/hash -Small key speed test - 15-byte keys - 297.19 cycles/hash -Small key speed test - 16-byte keys - 271.04 cycles/hash -Small key speed test - 17-byte keys - 298.42 cycles/hash -Small key speed test - 18-byte keys - 299.55 cycles/hash -Small key speed test - 19-byte keys - 300.82 cycles/hash -Small key speed test - 20-byte keys - 301.09 cycles/hash -Small key speed test - 21-byte keys - 303.33 cycles/hash -Small key speed test - 22-byte keys - 304.02 cycles/hash -Small key speed test - 23-byte keys - 306.35 cycles/hash -Small key speed test - 24-byte keys - 269.61 cycles/hash -Small key speed test - 25-byte keys - 280.94 cycles/hash -Small key speed test - 26-byte keys - 281.98 cycles/hash -Small key speed test - 27-byte keys - 284.24 cycles/hash -Small key speed test - 28-byte keys - 280.86 cycles/hash -Small key speed test - 29-byte keys - 281.63 cycles/hash -Small key speed test - 30-byte keys - 280.85 cycles/hash -Small key speed test - 31-byte keys - 281.85 cycles/hash -Average 274.481 cycles/hash +Alignment 7 - 2.299 bytes/cycle - 6578.41 MiB/sec @ 3 ghz +Alignment 6 - 2.305 bytes/cycle - 6593.38 MiB/sec @ 3 ghz +Alignment 5 - 2.305 bytes/cycle - 6593.26 MiB/sec @ 3 ghz +Alignment 4 - 2.304 bytes/cycle - 6593.07 MiB/sec @ 3 ghz +Alignment 3 - 2.305 bytes/cycle - 6593.25 MiB/sec @ 3 ghz +Alignment 2 - 2.305 bytes/cycle - 6593.34 MiB/sec @ 3 ghz +Alignment 1 - 2.305 bytes/cycle - 6593.28 MiB/sec @ 3 ghz +Alignment 0 - 2.304 bytes/cycle - 6592.71 MiB/sec @ 3 ghz +Average - 2.304 bytes/cycle - 6591.34 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 229.15 cycles/hash +Small key speed test - 2-byte keys - 228.48 cycles/hash +Small key speed test - 3-byte keys - 230.14 cycles/hash +Small key speed test - 4-byte keys - 226.02 cycles/hash +Small key speed test - 5-byte keys - 230.91 cycles/hash +Small key speed test - 6-byte keys - 230.75 cycles/hash +Small key speed test - 7-byte keys - 230.79 cycles/hash +Small key speed test - 8-byte keys - 206.81 cycles/hash +Small key speed test - 9-byte keys - 290.04 cycles/hash +Small key speed test - 10-byte keys - 290.95 cycles/hash +Small key speed test - 11-byte keys - 293.00 cycles/hash +Small key speed test - 12-byte keys - 296.40 cycles/hash +Small key speed test - 13-byte keys - 294.69 cycles/hash +Small key speed test - 14-byte keys - 295.55 cycles/hash +Small key speed test - 15-byte keys - 295.99 cycles/hash +Small key speed test - 16-byte keys - 269.61 cycles/hash +Small key speed test - 17-byte keys - 297.29 cycles/hash +Small key speed test - 18-byte keys - 298.00 cycles/hash +Small key speed test - 19-byte keys - 301.10 cycles/hash +Small key speed test - 20-byte keys - 300.41 cycles/hash +Small key speed test - 21-byte keys - 302.33 cycles/hash +Small key speed test - 22-byte keys - 303.17 cycles/hash +Small key speed test - 23-byte keys - 305.50 cycles/hash +Small key speed test - 24-byte keys - 268.25 cycles/hash +Small key speed test - 25-byte keys - 279.38 cycles/hash +Small key speed test - 26-byte keys - 280.94 cycles/hash +Small key speed test - 27-byte keys - 281.33 cycles/hash +Small key speed test - 28-byte keys - 279.48 cycles/hash +Small key speed test - 29-byte keys - 280.97 cycles/hash +Small key speed test - 30-byte keys - 279.44 cycles/hash +Small key speed test - 31-byte keys - 281.59 cycles/hash +Average 273.499 cycles/hash [[[ 'Hashmap' Speed Tests ]]] diff --git a/doc/sdbm.txt b/doc/sdbm.txt index d448556a..8b4f4e77 100644 --- a/doc/sdbm.txt +++ b/doc/sdbm.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 0.271 bytes/cycle - 775.61 MiB/sec @ 3 ghz -Alignment 6 - 0.271 bytes/cycle - 775.27 MiB/sec @ 3 ghz -Alignment 5 - 0.271 bytes/cycle - 775.60 MiB/sec @ 3 ghz -Alignment 4 - 0.271 bytes/cycle - 774.69 MiB/sec @ 3 ghz -Alignment 3 - 0.270 bytes/cycle - 772.58 MiB/sec @ 3 ghz -Alignment 2 - 0.271 bytes/cycle - 775.15 MiB/sec @ 3 ghz -Alignment 1 - 0.271 bytes/cycle - 775.19 MiB/sec @ 3 ghz -Alignment 0 - 0.271 bytes/cycle - 774.51 MiB/sec @ 3 ghz -Average - 0.271 bytes/cycle - 774.82 MiB/sec @ 3 ghz +Alignment 7 - 0.274 bytes/cycle - 784.91 MiB/sec @ 3 ghz +Alignment 6 - 0.274 bytes/cycle - 784.67 MiB/sec @ 3 ghz +Alignment 5 - 0.274 bytes/cycle - 784.85 MiB/sec @ 3 ghz +Alignment 4 - 0.274 bytes/cycle - 784.93 MiB/sec @ 3 ghz +Alignment 3 - 0.274 bytes/cycle - 784.76 MiB/sec @ 3 ghz +Alignment 2 - 0.274 bytes/cycle - 784.77 MiB/sec @ 3 ghz +Alignment 1 - 0.274 bytes/cycle - 784.82 MiB/sec @ 3 ghz +Alignment 0 - 0.274 bytes/cycle - 784.91 MiB/sec @ 3 ghz +Average - 0.274 bytes/cycle - 784.83 MiB/sec @ 3 ghz Small key speed test - 1-byte keys - 14.00 cycles/hash -Small key speed test - 2-byte keys - 18.00 cycles/hash -Small key speed test - 3-byte keys - 21.77 cycles/hash +Small key speed test - 2-byte keys - 17.21 cycles/hash +Small key speed test - 3-byte keys - 21.00 cycles/hash Small key speed test - 4-byte keys - 25.00 cycles/hash -Small key speed test - 5-byte keys - 28.95 cycles/hash -Small key speed test - 6-byte keys - 32.68 cycles/hash -Small key speed test - 7-byte keys - 36.70 cycles/hash -Small key speed test - 8-byte keys - 40.70 cycles/hash -Small key speed test - 9-byte keys - 44.00 cycles/hash -Small key speed test - 10-byte keys - 48.00 cycles/hash -Small key speed test - 11-byte keys - 51.00 cycles/hash -Small key speed test - 12-byte keys - 54.63 cycles/hash -Small key speed test - 13-byte keys - 59.18 cycles/hash -Small key speed test - 14-byte keys - 62.84 cycles/hash -Small key speed test - 15-byte keys - 66.00 cycles/hash -Small key speed test - 16-byte keys - 69.91 cycles/hash -Small key speed test - 17-byte keys - 73.82 cycles/hash -Small key speed test - 18-byte keys - 77.90 cycles/hash -Small key speed test - 19-byte keys - 81.00 cycles/hash -Small key speed test - 20-byte keys - 84.96 cycles/hash -Small key speed test - 21-byte keys - 88.73 cycles/hash -Small key speed test - 22-byte keys - 92.79 cycles/hash -Small key speed test - 23-byte keys - 96.00 cycles/hash -Small key speed test - 24-byte keys - 99.91 cycles/hash -Small key speed test - 25-byte keys - 103.97 cycles/hash -Small key speed test - 26-byte keys - 107.64 cycles/hash -Small key speed test - 27-byte keys - 111.17 cycles/hash -Small key speed test - 28-byte keys - 115.05 cycles/hash -Small key speed test - 29-byte keys - 118.61 cycles/hash -Small key speed test - 30-byte keys - 121.98 cycles/hash -Small key speed test - 31-byte keys - 126.15 cycles/hash -Average 70.098 cycles/hash +Small key speed test - 5-byte keys - 28.00 cycles/hash +Small key speed test - 6-byte keys - 32.00 cycles/hash +Small key speed test - 7-byte keys - 36.00 cycles/hash +Small key speed test - 8-byte keys - 39.52 cycles/hash +Small key speed test - 9-byte keys - 43.00 cycles/hash +Small key speed test - 10-byte keys - 46.92 cycles/hash +Small key speed test - 11-byte keys - 50.00 cycles/hash +Small key speed test - 12-byte keys - 53.85 cycles/hash +Small key speed test - 13-byte keys - 58.00 cycles/hash +Small key speed test - 14-byte keys - 61.17 cycles/hash +Small key speed test - 15-byte keys - 65.00 cycles/hash +Small key speed test - 16-byte keys - 68.00 cycles/hash +Small key speed test - 17-byte keys - 72.20 cycles/hash +Small key speed test - 18-byte keys - 76.00 cycles/hash +Small key speed test - 19-byte keys - 79.21 cycles/hash +Small key speed test - 20-byte keys - 83.69 cycles/hash +Small key speed test - 21-byte keys - 87.00 cycles/hash +Small key speed test - 22-byte keys - 90.92 cycles/hash +Small key speed test - 23-byte keys - 94.45 cycles/hash +Small key speed test - 24-byte keys - 97.93 cycles/hash +Small key speed test - 25-byte keys - 101.91 cycles/hash +Small key speed test - 26-byte keys - 105.24 cycles/hash +Small key speed test - 27-byte keys - 108.98 cycles/hash +Small key speed test - 28-byte keys - 111.95 cycles/hash +Small key speed test - 29-byte keys - 115.72 cycles/hash +Small key speed test - 30-byte keys - 118.95 cycles/hash +Small key speed test - 31-byte keys - 123.00 cycles/hash +Average 68.574 cycles/hash [[[ 'Hashmap' Speed Tests ]]] diff --git a/doc/seahash.txt b/doc/seahash.txt index 0a0b809b..437118c1 100644 --- a/doc/seahash.txt +++ b/doc/seahash.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 1.686 bytes/cycle - 4822.96 MiB/sec @ 3 ghz -Alignment 6 - 1.686 bytes/cycle - 4822.99 MiB/sec @ 3 ghz -Alignment 5 - 1.686 bytes/cycle - 4822.82 MiB/sec @ 3 ghz -Alignment 4 - 1.686 bytes/cycle - 4822.97 MiB/sec @ 3 ghz -Alignment 3 - 1.686 bytes/cycle - 4822.98 MiB/sec @ 3 ghz -Alignment 2 - 1.686 bytes/cycle - 4822.97 MiB/sec @ 3 ghz -Alignment 1 - 1.686 bytes/cycle - 4822.89 MiB/sec @ 3 ghz -Alignment 0 - 1.708 bytes/cycle - 4886.91 MiB/sec @ 3 ghz -Average - 1.689 bytes/cycle - 4830.94 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 58.00 cycles/hash -Small key speed test - 2-byte keys - 59.00 cycles/hash -Small key speed test - 3-byte keys - 60.00 cycles/hash -Small key speed test - 4-byte keys - 60.00 cycles/hash -Small key speed test - 5-byte keys - 61.00 cycles/hash -Small key speed test - 6-byte keys - 62.70 cycles/hash -Small key speed test - 7-byte keys - 66.00 cycles/hash -Small key speed test - 8-byte keys - 48.00 cycles/hash -Small key speed test - 9-byte keys - 65.00 cycles/hash -Small key speed test - 10-byte keys - 65.00 cycles/hash -Small key speed test - 11-byte keys - 66.00 cycles/hash -Small key speed test - 12-byte keys - 67.22 cycles/hash -Small key speed test - 13-byte keys - 71.00 cycles/hash -Small key speed test - 14-byte keys - 72.00 cycles/hash -Small key speed test - 15-byte keys - 73.00 cycles/hash -Small key speed test - 16-byte keys - 48.00 cycles/hash -Small key speed test - 17-byte keys - 63.00 cycles/hash -Small key speed test - 18-byte keys - 64.00 cycles/hash -Small key speed test - 19-byte keys - 65.00 cycles/hash -Small key speed test - 20-byte keys - 69.00 cycles/hash -Small key speed test - 21-byte keys - 69.95 cycles/hash -Small key speed test - 22-byte keys - 70.00 cycles/hash -Small key speed test - 23-byte keys - 71.00 cycles/hash -Small key speed test - 24-byte keys - 48.00 cycles/hash -Small key speed test - 25-byte keys - 63.00 cycles/hash -Small key speed test - 26-byte keys - 63.18 cycles/hash -Small key speed test - 27-byte keys - 65.00 cycles/hash -Small key speed test - 28-byte keys - 68.00 cycles/hash -Small key speed test - 29-byte keys - 69.00 cycles/hash -Small key speed test - 30-byte keys - 70.00 cycles/hash -Small key speed test - 31-byte keys - 71.00 cycles/hash -Average 64.227 cycles/hash +Alignment 7 - 2.882 bytes/cycle - 8245.85 MiB/sec @ 3 ghz +Alignment 6 - 2.891 bytes/cycle - 8271.69 MiB/sec @ 3 ghz +Alignment 5 - 2.890 bytes/cycle - 8267.08 MiB/sec @ 3 ghz +Alignment 4 - 2.890 bytes/cycle - 8267.55 MiB/sec @ 3 ghz +Alignment 3 - 2.889 bytes/cycle - 8265.19 MiB/sec @ 3 ghz +Alignment 2 - 2.891 bytes/cycle - 8270.92 MiB/sec @ 3 ghz +Alignment 1 - 2.889 bytes/cycle - 8265.38 MiB/sec @ 3 ghz +Alignment 0 - 2.880 bytes/cycle - 8240.70 MiB/sec @ 3 ghz +Average - 2.888 bytes/cycle - 8261.80 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 61.27 cycles/hash +Small key speed test - 2-byte keys - 61.97 cycles/hash +Small key speed test - 3-byte keys - 61.97 cycles/hash +Small key speed test - 4-byte keys - 60.85 cycles/hash +Small key speed test - 5-byte keys - 60.81 cycles/hash +Small key speed test - 6-byte keys - 60.97 cycles/hash +Small key speed test - 7-byte keys - 60.30 cycles/hash +Small key speed test - 8-byte keys - 35.99 cycles/hash +Small key speed test - 9-byte keys - 61.49 cycles/hash +Small key speed test - 10-byte keys - 61.02 cycles/hash +Small key speed test - 11-byte keys - 60.71 cycles/hash +Small key speed test - 12-byte keys - 60.49 cycles/hash +Small key speed test - 13-byte keys - 60.48 cycles/hash +Small key speed test - 14-byte keys - 60.41 cycles/hash +Small key speed test - 15-byte keys - 60.54 cycles/hash +Small key speed test - 16-byte keys - 37.43 cycles/hash +Small key speed test - 17-byte keys - 61.87 cycles/hash +Small key speed test - 18-byte keys - 61.88 cycles/hash +Small key speed test - 19-byte keys - 61.88 cycles/hash +Small key speed test - 20-byte keys - 61.99 cycles/hash +Small key speed test - 21-byte keys - 61.95 cycles/hash +Small key speed test - 22-byte keys - 61.95 cycles/hash +Small key speed test - 23-byte keys - 61.94 cycles/hash +Small key speed test - 24-byte keys - 39.00 cycles/hash +Small key speed test - 25-byte keys - 61.43 cycles/hash +Small key speed test - 26-byte keys - 61.00 cycles/hash +Small key speed test - 27-byte keys - 61.00 cycles/hash +Small key speed test - 28-byte keys - 61.00 cycles/hash +Small key speed test - 29-byte keys - 61.41 cycles/hash +Small key speed test - 30-byte keys - 61.00 cycles/hash +Small key speed test - 31-byte keys - 61.00 cycles/hash +Average 58.936 cycles/hash [[[ 'Hashmap' Speed Tests (when inlined) ]]] diff --git a/doc/seahash32low.txt b/doc/seahash32low.txt index 6c951e1c..c941e562 100644 --- a/doc/seahash32low.txt +++ b/doc/seahash32low.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 1.685 bytes/cycle - 4820.72 MiB/sec @ 3 ghz -Alignment 6 - 1.685 bytes/cycle - 4820.89 MiB/sec @ 3 ghz -Alignment 5 - 1.685 bytes/cycle - 4820.58 MiB/sec @ 3 ghz -Alignment 4 - 1.685 bytes/cycle - 4820.72 MiB/sec @ 3 ghz -Alignment 3 - 1.685 bytes/cycle - 4820.50 MiB/sec @ 3 ghz -Alignment 2 - 1.685 bytes/cycle - 4820.70 MiB/sec @ 3 ghz -Alignment 1 - 1.685 bytes/cycle - 4820.71 MiB/sec @ 3 ghz -Alignment 0 - 1.707 bytes/cycle - 4883.64 MiB/sec @ 3 ghz -Average - 1.688 bytes/cycle - 4828.56 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 58.00 cycles/hash -Small key speed test - 2-byte keys - 59.00 cycles/hash -Small key speed test - 3-byte keys - 60.00 cycles/hash -Small key speed test - 4-byte keys - 60.16 cycles/hash -Small key speed test - 5-byte keys - 61.00 cycles/hash -Small key speed test - 6-byte keys - 62.71 cycles/hash -Small key speed test - 7-byte keys - 66.00 cycles/hash -Small key speed test - 8-byte keys - 48.00 cycles/hash -Small key speed test - 9-byte keys - 65.00 cycles/hash -Small key speed test - 10-byte keys - 65.00 cycles/hash -Small key speed test - 11-byte keys - 66.00 cycles/hash -Small key speed test - 12-byte keys - 67.14 cycles/hash -Small key speed test - 13-byte keys - 71.00 cycles/hash -Small key speed test - 14-byte keys - 72.00 cycles/hash -Small key speed test - 15-byte keys - 73.00 cycles/hash -Small key speed test - 16-byte keys - 48.00 cycles/hash -Small key speed test - 17-byte keys - 63.00 cycles/hash -Small key speed test - 18-byte keys - 64.00 cycles/hash -Small key speed test - 19-byte keys - 65.00 cycles/hash -Small key speed test - 20-byte keys - 69.00 cycles/hash -Small key speed test - 21-byte keys - 69.85 cycles/hash -Small key speed test - 22-byte keys - 70.00 cycles/hash -Small key speed test - 23-byte keys - 71.00 cycles/hash -Small key speed test - 24-byte keys - 48.00 cycles/hash -Small key speed test - 25-byte keys - 63.00 cycles/hash -Small key speed test - 26-byte keys - 63.16 cycles/hash -Small key speed test - 27-byte keys - 65.00 cycles/hash -Small key speed test - 28-byte keys - 68.00 cycles/hash -Small key speed test - 29-byte keys - 69.00 cycles/hash -Small key speed test - 30-byte keys - 70.00 cycles/hash -Small key speed test - 31-byte keys - 71.00 cycles/hash -Average 64.226 cycles/hash +Alignment 7 - 2.887 bytes/cycle - 8258.79 MiB/sec @ 3 ghz +Alignment 6 - 2.890 bytes/cycle - 8268.35 MiB/sec @ 3 ghz +Alignment 5 - 2.892 bytes/cycle - 8273.56 MiB/sec @ 3 ghz +Alignment 4 - 2.888 bytes/cycle - 8262.39 MiB/sec @ 3 ghz +Alignment 3 - 2.893 bytes/cycle - 8276.23 MiB/sec @ 3 ghz +Alignment 2 - 2.889 bytes/cycle - 8265.59 MiB/sec @ 3 ghz +Alignment 1 - 2.890 bytes/cycle - 8269.51 MiB/sec @ 3 ghz +Alignment 0 - 2.885 bytes/cycle - 8254.95 MiB/sec @ 3 ghz +Average - 2.889 bytes/cycle - 8266.17 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 61.28 cycles/hash +Small key speed test - 2-byte keys - 61.97 cycles/hash +Small key speed test - 3-byte keys - 61.97 cycles/hash +Small key speed test - 4-byte keys - 60.81 cycles/hash +Small key speed test - 5-byte keys - 60.70 cycles/hash +Small key speed test - 6-byte keys - 60.73 cycles/hash +Small key speed test - 7-byte keys - 60.48 cycles/hash +Small key speed test - 8-byte keys - 35.99 cycles/hash +Small key speed test - 9-byte keys - 61.48 cycles/hash +Small key speed test - 10-byte keys - 60.00 cycles/hash +Small key speed test - 11-byte keys - 60.30 cycles/hash +Small key speed test - 12-byte keys - 60.63 cycles/hash +Small key speed test - 13-byte keys - 60.50 cycles/hash +Small key speed test - 14-byte keys - 60.43 cycles/hash +Small key speed test - 15-byte keys - 60.48 cycles/hash +Small key speed test - 16-byte keys - 37.00 cycles/hash +Small key speed test - 17-byte keys - 61.87 cycles/hash +Small key speed test - 18-byte keys - 61.89 cycles/hash +Small key speed test - 19-byte keys - 61.86 cycles/hash +Small key speed test - 20-byte keys - 61.94 cycles/hash +Small key speed test - 21-byte keys - 61.94 cycles/hash +Small key speed test - 22-byte keys - 61.98 cycles/hash +Small key speed test - 23-byte keys - 62.15 cycles/hash +Small key speed test - 24-byte keys - 39.17 cycles/hash +Small key speed test - 25-byte keys - 61.48 cycles/hash +Small key speed test - 26-byte keys - 61.00 cycles/hash +Small key speed test - 27-byte keys - 61.00 cycles/hash +Small key speed test - 28-byte keys - 61.00 cycles/hash +Small key speed test - 29-byte keys - 61.41 cycles/hash +Small key speed test - 30-byte keys - 61.41 cycles/hash +Small key speed test - 31-byte keys - 61.00 cycles/hash +Average 58.898 cycles/hash [[[ 'Hashmap' Speed Tests (when inlined) ]]] diff --git a/doc/superfast.txt b/doc/superfast.txt index 727bcd9a..f7221163 100644 --- a/doc/superfast.txt +++ b/doc/superfast.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest . FAIL !!!!! [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 0.682 bytes/cycle - 1952.48 MiB/sec @ 3 ghz -Alignment 6 - 0.685 bytes/cycle - 1960.69 MiB/sec @ 3 ghz -Alignment 5 - 0.682 bytes/cycle - 1951.26 MiB/sec @ 3 ghz -Alignment 4 - 0.685 bytes/cycle - 1960.68 MiB/sec @ 3 ghz -Alignment 3 - 0.682 bytes/cycle - 1952.47 MiB/sec @ 3 ghz -Alignment 2 - 0.685 bytes/cycle - 1960.66 MiB/sec @ 3 ghz -Alignment 1 - 0.682 bytes/cycle - 1951.22 MiB/sec @ 3 ghz -Alignment 0 - 0.685 bytes/cycle - 1960.69 MiB/sec @ 3 ghz -Average - 0.684 bytes/cycle - 1956.27 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 33.00 cycles/hash -Small key speed test - 2-byte keys - 33.00 cycles/hash -Small key speed test - 3-byte keys - 33.00 cycles/hash -Small key speed test - 4-byte keys - 32.00 cycles/hash -Small key speed test - 5-byte keys - 39.00 cycles/hash -Small key speed test - 6-byte keys - 39.00 cycles/hash -Small key speed test - 7-byte keys - 39.00 cycles/hash -Small key speed test - 8-byte keys - 38.00 cycles/hash -Small key speed test - 9-byte keys - 45.00 cycles/hash -Small key speed test - 10-byte keys - 45.00 cycles/hash -Small key speed test - 11-byte keys - 45.00 cycles/hash -Small key speed test - 12-byte keys - 44.00 cycles/hash -Small key speed test - 13-byte keys - 50.10 cycles/hash -Small key speed test - 14-byte keys - 50.61 cycles/hash -Small key speed test - 15-byte keys - 50.00 cycles/hash -Small key speed test - 16-byte keys - 50.00 cycles/hash -Small key speed test - 17-byte keys - 56.00 cycles/hash -Small key speed test - 18-byte keys - 56.00 cycles/hash -Small key speed test - 19-byte keys - 56.00 cycles/hash -Small key speed test - 20-byte keys - 55.00 cycles/hash -Small key speed test - 21-byte keys - 62.00 cycles/hash -Small key speed test - 22-byte keys - 62.00 cycles/hash -Small key speed test - 23-byte keys - 62.00 cycles/hash -Small key speed test - 24-byte keys - 61.58 cycles/hash -Small key speed test - 25-byte keys - 68.00 cycles/hash -Small key speed test - 26-byte keys - 68.00 cycles/hash -Small key speed test - 27-byte keys - 68.00 cycles/hash -Small key speed test - 28-byte keys - 67.28 cycles/hash -Small key speed test - 29-byte keys - 74.00 cycles/hash -Small key speed test - 30-byte keys - 74.00 cycles/hash -Small key speed test - 31-byte keys - 74.00 cycles/hash -Average 52.567 cycles/hash +Alignment 7 - 0.720 bytes/cycle - 2059.13 MiB/sec @ 3 ghz +Alignment 6 - 0.719 bytes/cycle - 2058.23 MiB/sec @ 3 ghz +Alignment 5 - 0.719 bytes/cycle - 2058.25 MiB/sec @ 3 ghz +Alignment 4 - 0.719 bytes/cycle - 2057.86 MiB/sec @ 3 ghz +Alignment 3 - 0.719 bytes/cycle - 2057.06 MiB/sec @ 3 ghz +Alignment 2 - 0.719 bytes/cycle - 2057.77 MiB/sec @ 3 ghz +Alignment 1 - 0.720 bytes/cycle - 2058.68 MiB/sec @ 3 ghz +Alignment 0 - 0.720 bytes/cycle - 2058.79 MiB/sec @ 3 ghz +Average - 0.719 bytes/cycle - 2058.22 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 31.00 cycles/hash +Small key speed test - 2-byte keys - 29.80 cycles/hash +Small key speed test - 3-byte keys - 31.00 cycles/hash +Small key speed test - 4-byte keys - 31.00 cycles/hash +Small key speed test - 5-byte keys - 36.00 cycles/hash +Small key speed test - 6-byte keys - 36.00 cycles/hash +Small key speed test - 7-byte keys - 36.75 cycles/hash +Small key speed test - 8-byte keys - 36.00 cycles/hash +Small key speed test - 9-byte keys - 42.00 cycles/hash +Small key speed test - 10-byte keys - 41.00 cycles/hash +Small key speed test - 11-byte keys - 42.00 cycles/hash +Small key speed test - 12-byte keys - 42.00 cycles/hash +Small key speed test - 13-byte keys - 47.00 cycles/hash +Small key speed test - 14-byte keys - 46.95 cycles/hash +Small key speed test - 15-byte keys - 48.00 cycles/hash +Small key speed test - 16-byte keys - 48.00 cycles/hash +Small key speed test - 17-byte keys - 53.00 cycles/hash +Small key speed test - 18-byte keys - 53.00 cycles/hash +Small key speed test - 19-byte keys - 53.00 cycles/hash +Small key speed test - 20-byte keys - 53.33 cycles/hash +Small key speed test - 21-byte keys - 58.00 cycles/hash +Small key speed test - 22-byte keys - 58.00 cycles/hash +Small key speed test - 23-byte keys - 59.00 cycles/hash +Small key speed test - 24-byte keys - 58.99 cycles/hash +Small key speed test - 25-byte keys - 64.00 cycles/hash +Small key speed test - 26-byte keys - 63.87 cycles/hash +Small key speed test - 27-byte keys - 64.00 cycles/hash +Small key speed test - 28-byte keys - 64.58 cycles/hash +Small key speed test - 29-byte keys - 70.00 cycles/hash +Small key speed test - 30-byte keys - 68.99 cycles/hash +Small key speed test - 31-byte keys - 70.00 cycles/hash +Average 49.557 cycles/hash [[[ 'Hashmap' Speed Tests (when inlined) ]]] diff --git a/doc/t1ha0_32be.txt b/doc/t1ha0_32be.txt index b8633285..df99bebf 100644 --- a/doc/t1ha0_32be.txt +++ b/doc/t1ha0_32be.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 1.606 bytes/cycle - 4595.06 MiB/sec @ 3 ghz -Alignment 6 - 1.606 bytes/cycle - 4595.08 MiB/sec @ 3 ghz -Alignment 5 - 1.606 bytes/cycle - 4595.13 MiB/sec @ 3 ghz -Alignment 4 - 1.615 bytes/cycle - 4619.21 MiB/sec @ 3 ghz -Alignment 3 - 1.588 bytes/cycle - 4543.80 MiB/sec @ 3 ghz -Alignment 2 - 1.588 bytes/cycle - 4544.02 MiB/sec @ 3 ghz -Alignment 1 - 1.588 bytes/cycle - 4543.99 MiB/sec @ 3 ghz -Alignment 0 - 1.615 bytes/cycle - 4621.07 MiB/sec @ 3 ghz -Average - 1.602 bytes/cycle - 4582.17 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 47.00 cycles/hash -Small key speed test - 2-byte keys - 47.00 cycles/hash -Small key speed test - 3-byte keys - 47.00 cycles/hash -Small key speed test - 4-byte keys - 36.00 cycles/hash -Small key speed test - 5-byte keys - 48.00 cycles/hash -Small key speed test - 6-byte keys - 48.00 cycles/hash -Small key speed test - 7-byte keys - 48.00 cycles/hash -Small key speed test - 8-byte keys - 39.82 cycles/hash +Alignment 7 - 1.978 bytes/cycle - 5660.49 MiB/sec @ 3 ghz +Alignment 6 - 1.978 bytes/cycle - 5660.42 MiB/sec @ 3 ghz +Alignment 5 - 1.978 bytes/cycle - 5660.49 MiB/sec @ 3 ghz +Alignment 4 - 1.982 bytes/cycle - 5670.87 MiB/sec @ 3 ghz +Alignment 3 - 2.375 bytes/cycle - 6793.74 MiB/sec @ 3 ghz +Alignment 2 - 2.363 bytes/cycle - 6761.44 MiB/sec @ 3 ghz +Alignment 1 - 2.362 bytes/cycle - 6756.49 MiB/sec @ 3 ghz +Alignment 0 - 2.368 bytes/cycle - 6774.99 MiB/sec @ 3 ghz +Average - 2.173 bytes/cycle - 6217.37 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 37.59 cycles/hash +Small key speed test - 2-byte keys - 37.47 cycles/hash +Small key speed test - 3-byte keys - 37.56 cycles/hash +Small key speed test - 4-byte keys - 37.00 cycles/hash +Small key speed test - 5-byte keys - 40.00 cycles/hash +Small key speed test - 6-byte keys - 40.00 cycles/hash +Small key speed test - 7-byte keys - 40.00 cycles/hash +Small key speed test - 8-byte keys - 40.12 cycles/hash Small key speed test - 9-byte keys - 45.00 cycles/hash Small key speed test - 10-byte keys - 45.00 cycles/hash Small key speed test - 11-byte keys - 45.00 cycles/hash Small key speed test - 12-byte keys - 45.00 cycles/hash -Small key speed test - 13-byte keys - 49.72 cycles/hash -Small key speed test - 14-byte keys - 49.68 cycles/hash -Small key speed test - 15-byte keys - 49.83 cycles/hash -Small key speed test - 16-byte keys - 49.51 cycles/hash -Small key speed test - 17-byte keys - 51.82 cycles/hash -Small key speed test - 18-byte keys - 51.80 cycles/hash -Small key speed test - 19-byte keys - 51.78 cycles/hash -Small key speed test - 20-byte keys - 50.00 cycles/hash -Small key speed test - 21-byte keys - 54.78 cycles/hash -Small key speed test - 22-byte keys - 54.88 cycles/hash -Small key speed test - 23-byte keys - 54.92 cycles/hash -Small key speed test - 24-byte keys - 54.80 cycles/hash -Small key speed test - 25-byte keys - 58.00 cycles/hash -Small key speed test - 26-byte keys - 58.00 cycles/hash -Small key speed test - 27-byte keys - 58.00 cycles/hash -Small key speed test - 28-byte keys - 58.00 cycles/hash -Small key speed test - 29-byte keys - 63.00 cycles/hash -Small key speed test - 30-byte keys - 63.00 cycles/hash -Small key speed test - 31-byte keys - 63.00 cycles/hash -Average 51.140 cycles/hash +Small key speed test - 13-byte keys - 49.14 cycles/hash +Small key speed test - 14-byte keys - 49.17 cycles/hash +Small key speed test - 15-byte keys - 49.18 cycles/hash +Small key speed test - 16-byte keys - 49.17 cycles/hash +Small key speed test - 17-byte keys - 53.25 cycles/hash +Small key speed test - 18-byte keys - 53.20 cycles/hash +Small key speed test - 19-byte keys - 53.20 cycles/hash +Small key speed test - 20-byte keys - 53.21 cycles/hash +Small key speed test - 21-byte keys - 56.00 cycles/hash +Small key speed test - 22-byte keys - 56.00 cycles/hash +Small key speed test - 23-byte keys - 56.00 cycles/hash +Small key speed test - 24-byte keys - 56.00 cycles/hash +Small key speed test - 25-byte keys - 62.14 cycles/hash +Small key speed test - 26-byte keys - 62.15 cycles/hash +Small key speed test - 27-byte keys - 62.21 cycles/hash +Small key speed test - 28-byte keys - 62.14 cycles/hash +Small key speed test - 29-byte keys - 66.21 cycles/hash +Small key speed test - 30-byte keys - 66.17 cycles/hash +Small key speed test - 31-byte keys - 66.19 cycles/hash +Average 50.660 cycles/hash [[[ 'Hashmap' Speed Tests (when inlined) ]]] diff --git a/doc/t1ha0_32le.txt b/doc/t1ha0_32le.txt index 593798a5..3cdbd7b7 100644 --- a/doc/t1ha0_32le.txt +++ b/doc/t1ha0_32le.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 1.798 bytes/cycle - 5144.34 MiB/sec @ 3 ghz -Alignment 6 - 1.798 bytes/cycle - 5144.07 MiB/sec @ 3 ghz -Alignment 5 - 1.798 bytes/cycle - 5144.25 MiB/sec @ 3 ghz -Alignment 4 - 1.810 bytes/cycle - 5179.73 MiB/sec @ 3 ghz -Alignment 3 - 1.791 bytes/cycle - 5122.78 MiB/sec @ 3 ghz -Alignment 2 - 1.791 bytes/cycle - 5123.00 MiB/sec @ 3 ghz -Alignment 1 - 1.791 bytes/cycle - 5123.12 MiB/sec @ 3 ghz -Alignment 0 - 1.810 bytes/cycle - 5178.60 MiB/sec @ 3 ghz -Average - 1.798 bytes/cycle - 5144.99 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 45.82 cycles/hash -Small key speed test - 2-byte keys - 45.78 cycles/hash -Small key speed test - 3-byte keys - 45.80 cycles/hash -Small key speed test - 4-byte keys - 35.00 cycles/hash -Small key speed test - 5-byte keys - 46.00 cycles/hash -Small key speed test - 6-byte keys - 46.00 cycles/hash -Small key speed test - 7-byte keys - 46.00 cycles/hash -Small key speed test - 8-byte keys - 39.00 cycles/hash -Small key speed test - 9-byte keys - 45.00 cycles/hash -Small key speed test - 10-byte keys - 45.00 cycles/hash -Small key speed test - 11-byte keys - 45.00 cycles/hash -Small key speed test - 12-byte keys - 45.00 cycles/hash -Small key speed test - 13-byte keys - 50.00 cycles/hash -Small key speed test - 14-byte keys - 50.00 cycles/hash -Small key speed test - 15-byte keys - 50.00 cycles/hash -Small key speed test - 16-byte keys - 50.00 cycles/hash -Small key speed test - 17-byte keys - 49.00 cycles/hash -Small key speed test - 18-byte keys - 49.00 cycles/hash -Small key speed test - 19-byte keys - 49.00 cycles/hash +Alignment 7 - 2.581 bytes/cycle - 7383.69 MiB/sec @ 3 ghz +Alignment 6 - 2.586 bytes/cycle - 7397.48 MiB/sec @ 3 ghz +Alignment 5 - 2.583 bytes/cycle - 7390.87 MiB/sec @ 3 ghz +Alignment 4 - 2.592 bytes/cycle - 7414.39 MiB/sec @ 3 ghz +Alignment 3 - 2.588 bytes/cycle - 7403.95 MiB/sec @ 3 ghz +Alignment 2 - 2.587 bytes/cycle - 7402.21 MiB/sec @ 3 ghz +Alignment 1 - 2.588 bytes/cycle - 7403.00 MiB/sec @ 3 ghz +Alignment 0 - 2.591 bytes/cycle - 7414.06 MiB/sec @ 3 ghz +Average - 2.587 bytes/cycle - 7401.21 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 36.00 cycles/hash +Small key speed test - 2-byte keys - 36.00 cycles/hash +Small key speed test - 3-byte keys - 36.00 cycles/hash +Small key speed test - 4-byte keys - 36.00 cycles/hash +Small key speed test - 5-byte keys - 38.00 cycles/hash +Small key speed test - 6-byte keys - 38.00 cycles/hash +Small key speed test - 7-byte keys - 38.00 cycles/hash +Small key speed test - 8-byte keys - 38.00 cycles/hash +Small key speed test - 9-byte keys - 43.00 cycles/hash +Small key speed test - 10-byte keys - 42.99 cycles/hash +Small key speed test - 11-byte keys - 43.00 cycles/hash +Small key speed test - 12-byte keys - 42.99 cycles/hash +Small key speed test - 13-byte keys - 48.00 cycles/hash +Small key speed test - 14-byte keys - 48.00 cycles/hash +Small key speed test - 15-byte keys - 48.00 cycles/hash +Small key speed test - 16-byte keys - 48.00 cycles/hash +Small key speed test - 17-byte keys - 49.43 cycles/hash +Small key speed test - 18-byte keys - 49.32 cycles/hash +Small key speed test - 19-byte keys - 49.43 cycles/hash Small key speed test - 20-byte keys - 49.00 cycles/hash -Small key speed test - 21-byte keys - 55.00 cycles/hash -Small key speed test - 22-byte keys - 55.00 cycles/hash -Small key speed test - 23-byte keys - 55.00 cycles/hash -Small key speed test - 24-byte keys - 55.00 cycles/hash -Small key speed test - 25-byte keys - 60.00 cycles/hash -Small key speed test - 26-byte keys - 60.00 cycles/hash -Small key speed test - 27-byte keys - 60.00 cycles/hash -Small key speed test - 28-byte keys - 60.00 cycles/hash -Small key speed test - 29-byte keys - 66.68 cycles/hash -Small key speed test - 30-byte keys - 66.68 cycles/hash -Small key speed test - 31-byte keys - 66.68 cycles/hash -Average 51.143 cycles/hash +Small key speed test - 21-byte keys - 54.00 cycles/hash +Small key speed test - 22-byte keys - 54.00 cycles/hash +Small key speed test - 23-byte keys - 54.00 cycles/hash +Small key speed test - 24-byte keys - 54.00 cycles/hash +Small key speed test - 25-byte keys - 58.32 cycles/hash +Small key speed test - 26-byte keys - 58.00 cycles/hash +Small key speed test - 27-byte keys - 58.33 cycles/hash +Small key speed test - 28-byte keys - 58.31 cycles/hash +Small key speed test - 29-byte keys - 63.45 cycles/hash +Small key speed test - 30-byte keys - 63.51 cycles/hash +Small key speed test - 31-byte keys - 63.42 cycles/hash +Average 48.274 cycles/hash [[[ 'Hashmap' Speed Tests (when inlined) ]]] diff --git a/doc/t1ha0_aes_avx1.txt b/doc/t1ha0_aes_avx1.txt index a55245dc..5380e0d2 100644 --- a/doc/t1ha0_aes_avx1.txt +++ b/doc/t1ha0_aes_avx1.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 7.815 bytes/cycle - 22358.42 MiB/sec @ 3 ghz -Alignment 6 - 7.813 bytes/cycle - 22353.57 MiB/sec @ 3 ghz -Alignment 5 - 7.810 bytes/cycle - 22345.48 MiB/sec @ 3 ghz -Alignment 4 - 7.814 bytes/cycle - 22354.94 MiB/sec @ 3 ghz -Alignment 3 - 7.811 bytes/cycle - 22347.94 MiB/sec @ 3 ghz -Alignment 2 - 7.813 bytes/cycle - 22354.00 MiB/sec @ 3 ghz -Alignment 1 - 7.813 bytes/cycle - 22352.37 MiB/sec @ 3 ghz -Alignment 0 - 9.427 bytes/cycle - 26970.88 MiB/sec @ 3 ghz -Average - 8.015 bytes/cycle - 22929.70 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 40.00 cycles/hash -Small key speed test - 2-byte keys - 40.00 cycles/hash -Small key speed test - 3-byte keys - 40.00 cycles/hash -Small key speed test - 4-byte keys - 40.00 cycles/hash -Small key speed test - 5-byte keys - 40.00 cycles/hash -Small key speed test - 6-byte keys - 40.00 cycles/hash -Small key speed test - 7-byte keys - 40.00 cycles/hash -Small key speed test - 8-byte keys - 40.00 cycles/hash -Small key speed test - 9-byte keys - 45.00 cycles/hash -Small key speed test - 10-byte keys - 45.00 cycles/hash -Small key speed test - 11-byte keys - 45.00 cycles/hash -Small key speed test - 12-byte keys - 45.00 cycles/hash -Small key speed test - 13-byte keys - 45.00 cycles/hash -Small key speed test - 14-byte keys - 45.00 cycles/hash -Small key speed test - 15-byte keys - 45.00 cycles/hash -Small key speed test - 16-byte keys - 45.00 cycles/hash -Small key speed test - 17-byte keys - 50.00 cycles/hash -Small key speed test - 18-byte keys - 50.00 cycles/hash -Small key speed test - 19-byte keys - 50.00 cycles/hash -Small key speed test - 20-byte keys - 50.00 cycles/hash -Small key speed test - 21-byte keys - 50.00 cycles/hash -Small key speed test - 22-byte keys - 50.00 cycles/hash -Small key speed test - 23-byte keys - 50.00 cycles/hash -Small key speed test - 24-byte keys - 50.00 cycles/hash -Small key speed test - 25-byte keys - 55.99 cycles/hash -Small key speed test - 26-byte keys - 55.93 cycles/hash -Small key speed test - 27-byte keys - 55.82 cycles/hash -Small key speed test - 28-byte keys - 55.83 cycles/hash -Small key speed test - 29-byte keys - 55.81 cycles/hash -Small key speed test - 30-byte keys - 55.60 cycles/hash -Small key speed test - 31-byte keys - 55.77 cycles/hash -Average 47.444 cycles/hash +Alignment 7 - 9.795 bytes/cycle - 28023.07 MiB/sec @ 3 ghz +Alignment 6 - 9.687 bytes/cycle - 27715.54 MiB/sec @ 3 ghz +Alignment 5 - 9.634 bytes/cycle - 27561.73 MiB/sec @ 3 ghz +Alignment 4 - 9.658 bytes/cycle - 27631.73 MiB/sec @ 3 ghz +Alignment 3 - 9.662 bytes/cycle - 27644.10 MiB/sec @ 3 ghz +Alignment 2 - 9.662 bytes/cycle - 27644.41 MiB/sec @ 3 ghz +Alignment 1 - 9.665 bytes/cycle - 27651.29 MiB/sec @ 3 ghz +Alignment 0 - 9.667 bytes/cycle - 27657.00 MiB/sec @ 3 ghz +Average - 9.679 bytes/cycle - 27691.11 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 32.00 cycles/hash +Small key speed test - 2-byte keys - 32.00 cycles/hash +Small key speed test - 3-byte keys - 32.00 cycles/hash +Small key speed test - 4-byte keys - 31.12 cycles/hash +Small key speed test - 5-byte keys - 31.15 cycles/hash +Small key speed test - 6-byte keys - 31.13 cycles/hash +Small key speed test - 7-byte keys - 31.15 cycles/hash +Small key speed test - 8-byte keys - 31.00 cycles/hash +Small key speed test - 9-byte keys - 34.00 cycles/hash +Small key speed test - 10-byte keys - 34.00 cycles/hash +Small key speed test - 11-byte keys - 34.00 cycles/hash +Small key speed test - 12-byte keys - 34.00 cycles/hash +Small key speed test - 13-byte keys - 34.00 cycles/hash +Small key speed test - 14-byte keys - 34.00 cycles/hash +Small key speed test - 15-byte keys - 34.00 cycles/hash +Small key speed test - 16-byte keys - 34.00 cycles/hash +Small key speed test - 17-byte keys - 39.00 cycles/hash +Small key speed test - 18-byte keys - 39.00 cycles/hash +Small key speed test - 19-byte keys - 39.00 cycles/hash +Small key speed test - 20-byte keys - 39.00 cycles/hash +Small key speed test - 21-byte keys - 39.00 cycles/hash +Small key speed test - 22-byte keys - 39.00 cycles/hash +Small key speed test - 23-byte keys - 39.00 cycles/hash +Small key speed test - 24-byte keys - 39.00 cycles/hash +Small key speed test - 25-byte keys - 44.46 cycles/hash +Small key speed test - 26-byte keys - 44.50 cycles/hash +Small key speed test - 27-byte keys - 44.47 cycles/hash +Small key speed test - 28-byte keys - 44.51 cycles/hash +Small key speed test - 29-byte keys - 44.47 cycles/hash +Small key speed test - 30-byte keys - 44.43 cycles/hash +Small key speed test - 31-byte keys - 44.00 cycles/hash +Average 36.980 cycles/hash [[[ 'Hashmap' Speed Tests (when inlined) ]]] diff --git a/doc/t1ha0_aes_avx2.txt b/doc/t1ha0_aes_avx2.txt index 7f5ecdfe..f69979ee 100644 --- a/doc/t1ha0_aes_avx2.txt +++ b/doc/t1ha0_aes_avx2.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 8.019 bytes/cycle - 22941.62 MiB/sec @ 3 ghz -Alignment 6 - 6.435 bytes/cycle - 18411.03 MiB/sec @ 3 ghz -Alignment 5 - 7.012 bytes/cycle - 20062.48 MiB/sec @ 3 ghz -Alignment 4 - 7.343 bytes/cycle - 21007.97 MiB/sec @ 3 ghz -Alignment 3 - 6.952 bytes/cycle - 19890.32 MiB/sec @ 3 ghz -Alignment 2 - 6.941 bytes/cycle - 19859.41 MiB/sec @ 3 ghz -Alignment 1 - 7.800 bytes/cycle - 22315.16 MiB/sec @ 3 ghz -Alignment 0 - 11.980 bytes/cycle - 34274.68 MiB/sec @ 3 ghz -Average - 7.810 bytes/cycle - 22345.33 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 37.40 cycles/hash -Small key speed test - 2-byte keys - 37.49 cycles/hash -Small key speed test - 3-byte keys - 37.50 cycles/hash -Small key speed test - 4-byte keys - 37.50 cycles/hash -Small key speed test - 5-byte keys - 37.52 cycles/hash -Small key speed test - 6-byte keys - 37.56 cycles/hash -Small key speed test - 7-byte keys - 38.01 cycles/hash -Small key speed test - 8-byte keys - 39.06 cycles/hash -Small key speed test - 9-byte keys - 41.00 cycles/hash -Small key speed test - 10-byte keys - 42.68 cycles/hash -Small key speed test - 11-byte keys - 42.16 cycles/hash -Small key speed test - 12-byte keys - 41.03 cycles/hash -Small key speed test - 13-byte keys - 41.15 cycles/hash -Small key speed test - 14-byte keys - 41.33 cycles/hash -Small key speed test - 15-byte keys - 41.34 cycles/hash -Small key speed test - 16-byte keys - 41.59 cycles/hash -Small key speed test - 17-byte keys - 45.88 cycles/hash -Small key speed test - 18-byte keys - 46.30 cycles/hash -Small key speed test - 19-byte keys - 46.13 cycles/hash -Small key speed test - 20-byte keys - 46.97 cycles/hash -Small key speed test - 21-byte keys - 47.40 cycles/hash -Small key speed test - 22-byte keys - 48.40 cycles/hash -Small key speed test - 23-byte keys - 46.34 cycles/hash -Small key speed test - 24-byte keys - 47.00 cycles/hash -Small key speed test - 25-byte keys - 52.12 cycles/hash -Small key speed test - 26-byte keys - 53.68 cycles/hash -Small key speed test - 27-byte keys - 53.52 cycles/hash -Small key speed test - 28-byte keys - 53.36 cycles/hash -Small key speed test - 29-byte keys - 51.96 cycles/hash -Small key speed test - 30-byte keys - 50.82 cycles/hash -Small key speed test - 31-byte keys - 51.70 cycles/hash -Average 44.383 cycles/hash +Alignment 7 - 19.752 bytes/cycle - 56509.75 MiB/sec @ 3 ghz +Alignment 6 - 19.781 bytes/cycle - 56592.77 MiB/sec @ 3 ghz +Alignment 5 - 19.786 bytes/cycle - 56608.79 MiB/sec @ 3 ghz +Alignment 4 - 19.791 bytes/cycle - 56623.04 MiB/sec @ 3 ghz +Alignment 3 - 19.790 bytes/cycle - 56618.98 MiB/sec @ 3 ghz +Alignment 2 - 19.790 bytes/cycle - 56619.77 MiB/sec @ 3 ghz +Alignment 1 - 19.779 bytes/cycle - 56587.65 MiB/sec @ 3 ghz +Alignment 0 - 20.690 bytes/cycle - 59194.90 MiB/sec @ 3 ghz +Average - 19.895 bytes/cycle - 56919.46 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 32.00 cycles/hash +Small key speed test - 2-byte keys - 32.00 cycles/hash +Small key speed test - 3-byte keys - 32.00 cycles/hash +Small key speed test - 4-byte keys - 31.55 cycles/hash +Small key speed test - 5-byte keys - 31.46 cycles/hash +Small key speed test - 6-byte keys - 31.46 cycles/hash +Small key speed test - 7-byte keys - 31.55 cycles/hash +Small key speed test - 8-byte keys - 31.00 cycles/hash +Small key speed test - 9-byte keys - 33.95 cycles/hash +Small key speed test - 10-byte keys - 33.96 cycles/hash +Small key speed test - 11-byte keys - 33.95 cycles/hash +Small key speed test - 12-byte keys - 33.94 cycles/hash +Small key speed test - 13-byte keys - 33.96 cycles/hash +Small key speed test - 14-byte keys - 33.95 cycles/hash +Small key speed test - 15-byte keys - 33.96 cycles/hash +Small key speed test - 16-byte keys - 33.96 cycles/hash +Small key speed test - 17-byte keys - 39.00 cycles/hash +Small key speed test - 18-byte keys - 39.00 cycles/hash +Small key speed test - 19-byte keys - 39.00 cycles/hash +Small key speed test - 20-byte keys - 39.00 cycles/hash +Small key speed test - 21-byte keys - 38.99 cycles/hash +Small key speed test - 22-byte keys - 38.99 cycles/hash +Small key speed test - 23-byte keys - 38.99 cycles/hash +Small key speed test - 24-byte keys - 39.00 cycles/hash +Small key speed test - 25-byte keys - 43.00 cycles/hash +Small key speed test - 26-byte keys - 43.00 cycles/hash +Small key speed test - 27-byte keys - 43.00 cycles/hash +Small key speed test - 28-byte keys - 43.00 cycles/hash +Small key speed test - 29-byte keys - 43.00 cycles/hash +Small key speed test - 30-byte keys - 43.00 cycles/hash +Small key speed test - 31-byte keys - 43.12 cycles/hash +Average 36.701 cycles/hash [[[ 'Hashmap' Speed Tests ]]] diff --git a/doc/t1ha0_aes_noavx.txt b/doc/t1ha0_aes_noavx.txt index 4a1cc6ed..8f841dc5 100644 --- a/doc/t1ha0_aes_noavx.txt +++ b/doc/t1ha0_aes_noavx.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 7.705 bytes/cycle - 22044.67 MiB/sec @ 3 ghz -Alignment 6 - 7.704 bytes/cycle - 22041.12 MiB/sec @ 3 ghz -Alignment 5 - 7.706 bytes/cycle - 22047.98 MiB/sec @ 3 ghz -Alignment 4 - 7.705 bytes/cycle - 22043.30 MiB/sec @ 3 ghz -Alignment 3 - 7.704 bytes/cycle - 22042.44 MiB/sec @ 3 ghz -Alignment 2 - 7.706 bytes/cycle - 22045.98 MiB/sec @ 3 ghz -Alignment 1 - 7.704 bytes/cycle - 22041.15 MiB/sec @ 3 ghz -Alignment 0 - 9.250 bytes/cycle - 26465.25 MiB/sec @ 3 ghz -Average - 7.898 bytes/cycle - 22596.49 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 40.00 cycles/hash -Small key speed test - 2-byte keys - 40.00 cycles/hash -Small key speed test - 3-byte keys - 40.00 cycles/hash -Small key speed test - 4-byte keys - 40.00 cycles/hash -Small key speed test - 5-byte keys - 40.00 cycles/hash -Small key speed test - 6-byte keys - 40.00 cycles/hash -Small key speed test - 7-byte keys - 40.00 cycles/hash -Small key speed test - 8-byte keys - 40.00 cycles/hash -Small key speed test - 9-byte keys - 45.00 cycles/hash -Small key speed test - 10-byte keys - 45.00 cycles/hash -Small key speed test - 11-byte keys - 45.00 cycles/hash -Small key speed test - 12-byte keys - 45.00 cycles/hash -Small key speed test - 13-byte keys - 45.00 cycles/hash -Small key speed test - 14-byte keys - 45.00 cycles/hash -Small key speed test - 15-byte keys - 45.00 cycles/hash -Small key speed test - 16-byte keys - 45.43 cycles/hash -Small key speed test - 17-byte keys - 50.00 cycles/hash -Small key speed test - 18-byte keys - 50.00 cycles/hash -Small key speed test - 19-byte keys - 50.00 cycles/hash -Small key speed test - 20-byte keys - 50.00 cycles/hash -Small key speed test - 21-byte keys - 50.00 cycles/hash -Small key speed test - 22-byte keys - 50.00 cycles/hash -Small key speed test - 23-byte keys - 50.00 cycles/hash -Small key speed test - 24-byte keys - 50.00 cycles/hash -Small key speed test - 25-byte keys - 55.67 cycles/hash -Small key speed test - 26-byte keys - 55.69 cycles/hash -Small key speed test - 27-byte keys - 55.88 cycles/hash -Small key speed test - 28-byte keys - 55.80 cycles/hash -Small key speed test - 29-byte keys - 55.91 cycles/hash -Small key speed test - 30-byte keys - 55.76 cycles/hash -Small key speed test - 31-byte keys - 55.84 cycles/hash -Average 47.451 cycles/hash +Alignment 7 - 9.525 bytes/cycle - 27252.11 MiB/sec @ 3 ghz +Alignment 6 - 9.525 bytes/cycle - 27250.28 MiB/sec @ 3 ghz +Alignment 5 - 9.507 bytes/cycle - 27200.07 MiB/sec @ 3 ghz +Alignment 4 - 9.509 bytes/cycle - 27206.12 MiB/sec @ 3 ghz +Alignment 3 - 9.510 bytes/cycle - 27207.21 MiB/sec @ 3 ghz +Alignment 2 - 9.506 bytes/cycle - 27197.71 MiB/sec @ 3 ghz +Alignment 1 - 9.532 bytes/cycle - 27270.15 MiB/sec @ 3 ghz +Alignment 0 - 9.531 bytes/cycle - 27269.04 MiB/sec @ 3 ghz +Average - 9.518 bytes/cycle - 27231.59 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 32.00 cycles/hash +Small key speed test - 2-byte keys - 32.00 cycles/hash +Small key speed test - 3-byte keys - 32.00 cycles/hash +Small key speed test - 4-byte keys - 32.00 cycles/hash +Small key speed test - 5-byte keys - 32.00 cycles/hash +Small key speed test - 6-byte keys - 32.00 cycles/hash +Small key speed test - 7-byte keys - 32.00 cycles/hash +Small key speed test - 8-byte keys - 31.30 cycles/hash +Small key speed test - 9-byte keys - 34.93 cycles/hash +Small key speed test - 10-byte keys - 34.94 cycles/hash +Small key speed test - 11-byte keys - 34.95 cycles/hash +Small key speed test - 12-byte keys - 34.92 cycles/hash +Small key speed test - 13-byte keys - 34.94 cycles/hash +Small key speed test - 14-byte keys - 34.94 cycles/hash +Small key speed test - 15-byte keys - 34.93 cycles/hash +Small key speed test - 16-byte keys - 34.94 cycles/hash +Small key speed test - 17-byte keys - 40.00 cycles/hash +Small key speed test - 18-byte keys - 40.00 cycles/hash +Small key speed test - 19-byte keys - 40.00 cycles/hash +Small key speed test - 20-byte keys - 40.00 cycles/hash +Small key speed test - 21-byte keys - 40.00 cycles/hash +Small key speed test - 22-byte keys - 40.00 cycles/hash +Small key speed test - 23-byte keys - 40.00 cycles/hash +Small key speed test - 24-byte keys - 40.00 cycles/hash +Small key speed test - 25-byte keys - 44.84 cycles/hash +Small key speed test - 26-byte keys - 44.86 cycles/hash +Small key speed test - 27-byte keys - 44.84 cycles/hash +Small key speed test - 28-byte keys - 44.83 cycles/hash +Small key speed test - 29-byte keys - 44.84 cycles/hash +Small key speed test - 30-byte keys - 44.84 cycles/hash +Small key speed test - 31-byte keys - 44.85 cycles/hash +Average 37.699 cycles/hash [[[ 'Hashmap' Speed Tests (when inlined) ]]] diff --git a/doc/t1ha1_64be.txt b/doc/t1ha1_64be.txt index 20d1fa29..2db8a7a1 100644 --- a/doc/t1ha1_64be.txt +++ b/doc/t1ha1_64be.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 2.607 bytes/cycle - 7458.36 MiB/sec @ 3 ghz -Alignment 6 - 2.607 bytes/cycle - 7458.29 MiB/sec @ 3 ghz -Alignment 5 - 2.607 bytes/cycle - 7458.17 MiB/sec @ 3 ghz -Alignment 4 - 2.611 bytes/cycle - 7469.43 MiB/sec @ 3 ghz -Alignment 3 - 2.582 bytes/cycle - 7386.80 MiB/sec @ 3 ghz -Alignment 2 - 2.607 bytes/cycle - 7458.32 MiB/sec @ 3 ghz -Alignment 1 - 2.607 bytes/cycle - 7458.36 MiB/sec @ 3 ghz -Alignment 0 - 2.652 bytes/cycle - 7587.70 MiB/sec @ 3 ghz -Average - 2.610 bytes/cycle - 7466.93 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 41.00 cycles/hash -Small key speed test - 2-byte keys - 41.00 cycles/hash -Small key speed test - 3-byte keys - 41.00 cycles/hash -Small key speed test - 4-byte keys - 41.00 cycles/hash -Small key speed test - 5-byte keys - 41.00 cycles/hash -Small key speed test - 6-byte keys - 41.00 cycles/hash -Small key speed test - 7-byte keys - 41.00 cycles/hash -Small key speed test - 8-byte keys - 41.00 cycles/hash -Small key speed test - 9-byte keys - 43.00 cycles/hash -Small key speed test - 10-byte keys - 43.00 cycles/hash -Small key speed test - 11-byte keys - 43.00 cycles/hash -Small key speed test - 12-byte keys - 38.00 cycles/hash -Small key speed test - 13-byte keys - 38.00 cycles/hash -Small key speed test - 14-byte keys - 38.00 cycles/hash -Small key speed test - 15-byte keys - 38.00 cycles/hash -Small key speed test - 16-byte keys - 38.00 cycles/hash -Small key speed test - 17-byte keys - 39.00 cycles/hash -Small key speed test - 18-byte keys - 39.00 cycles/hash -Small key speed test - 19-byte keys - 39.00 cycles/hash -Small key speed test - 20-byte keys - 39.00 cycles/hash -Small key speed test - 21-byte keys - 39.00 cycles/hash -Small key speed test - 22-byte keys - 39.00 cycles/hash -Small key speed test - 23-byte keys - 39.00 cycles/hash -Small key speed test - 24-byte keys - 39.00 cycles/hash -Small key speed test - 25-byte keys - 39.00 cycles/hash -Small key speed test - 26-byte keys - 39.00 cycles/hash -Small key speed test - 27-byte keys - 39.00 cycles/hash -Small key speed test - 28-byte keys - 39.00 cycles/hash -Small key speed test - 29-byte keys - 39.00 cycles/hash -Small key speed test - 30-byte keys - 39.00 cycles/hash -Small key speed test - 31-byte keys - 39.00 cycles/hash -Average 39.742 cycles/hash +Alignment 7 - 4.039 bytes/cycle - 11555.83 MiB/sec @ 3 ghz +Alignment 6 - 4.053 bytes/cycle - 11594.50 MiB/sec @ 3 ghz +Alignment 5 - 4.045 bytes/cycle - 11574.23 MiB/sec @ 3 ghz +Alignment 4 - 4.052 bytes/cycle - 11594.01 MiB/sec @ 3 ghz +Alignment 3 - 4.048 bytes/cycle - 11580.59 MiB/sec @ 3 ghz +Alignment 2 - 4.047 bytes/cycle - 11579.34 MiB/sec @ 3 ghz +Alignment 1 - 4.047 bytes/cycle - 11579.45 MiB/sec @ 3 ghz +Alignment 0 - 4.065 bytes/cycle - 11630.21 MiB/sec @ 3 ghz +Average - 4.050 bytes/cycle - 11586.02 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 32.00 cycles/hash +Small key speed test - 2-byte keys - 32.00 cycles/hash +Small key speed test - 3-byte keys - 32.00 cycles/hash +Small key speed test - 4-byte keys - 31.34 cycles/hash +Small key speed test - 5-byte keys - 31.00 cycles/hash +Small key speed test - 6-byte keys - 31.43 cycles/hash +Small key speed test - 7-byte keys - 31.31 cycles/hash +Small key speed test - 8-byte keys - 31.00 cycles/hash +Small key speed test - 9-byte keys - 31.00 cycles/hash +Small key speed test - 10-byte keys - 31.00 cycles/hash +Small key speed test - 11-byte keys - 31.00 cycles/hash +Small key speed test - 12-byte keys - 31.00 cycles/hash +Small key speed test - 13-byte keys - 31.00 cycles/hash +Small key speed test - 14-byte keys - 31.00 cycles/hash +Small key speed test - 15-byte keys - 31.00 cycles/hash +Small key speed test - 16-byte keys - 31.00 cycles/hash +Small key speed test - 17-byte keys - 33.00 cycles/hash +Small key speed test - 18-byte keys - 33.11 cycles/hash +Small key speed test - 19-byte keys - 33.00 cycles/hash +Small key speed test - 20-byte keys - 33.00 cycles/hash +Small key speed test - 21-byte keys - 34.70 cycles/hash +Small key speed test - 22-byte keys - 34.72 cycles/hash +Small key speed test - 23-byte keys - 34.67 cycles/hash +Small key speed test - 24-byte keys - 33.63 cycles/hash +Small key speed test - 25-byte keys - 35.00 cycles/hash +Small key speed test - 26-byte keys - 35.00 cycles/hash +Small key speed test - 27-byte keys - 35.00 cycles/hash +Small key speed test - 28-byte keys - 35.00 cycles/hash +Small key speed test - 29-byte keys - 35.00 cycles/hash +Small key speed test - 30-byte keys - 35.00 cycles/hash +Small key speed test - 31-byte keys - 35.00 cycles/hash +Average 32.739 cycles/hash [[[ 'Hashmap' Speed Tests (when inlined) ]]] diff --git a/doc/t1ha1_64le.txt b/doc/t1ha1_64le.txt index 5e426587..7d696035 100644 --- a/doc/t1ha1_64le.txt +++ b/doc/t1ha1_64le.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 3.387 bytes/cycle - 9689.23 MiB/sec @ 3 ghz -Alignment 6 - 3.387 bytes/cycle - 9690.43 MiB/sec @ 3 ghz -Alignment 5 - 3.387 bytes/cycle - 9690.01 MiB/sec @ 3 ghz -Alignment 4 - 3.389 bytes/cycle - 9696.91 MiB/sec @ 3 ghz -Alignment 3 - 3.387 bytes/cycle - 9689.36 MiB/sec @ 3 ghz -Alignment 2 - 3.387 bytes/cycle - 9689.83 MiB/sec @ 3 ghz -Alignment 1 - 3.387 bytes/cycle - 9689.89 MiB/sec @ 3 ghz -Alignment 0 - 3.451 bytes/cycle - 9873.57 MiB/sec @ 3 ghz -Average - 3.395 bytes/cycle - 9713.65 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 39.00 cycles/hash -Small key speed test - 2-byte keys - 39.00 cycles/hash -Small key speed test - 3-byte keys - 39.00 cycles/hash -Small key speed test - 4-byte keys - 39.00 cycles/hash -Small key speed test - 5-byte keys - 39.00 cycles/hash -Small key speed test - 6-byte keys - 39.00 cycles/hash -Small key speed test - 7-byte keys - 39.00 cycles/hash -Small key speed test - 8-byte keys - 39.00 cycles/hash -Small key speed test - 9-byte keys - 40.00 cycles/hash -Small key speed test - 10-byte keys - 40.00 cycles/hash -Small key speed test - 11-byte keys - 40.00 cycles/hash -Small key speed test - 12-byte keys - 36.00 cycles/hash -Small key speed test - 13-byte keys - 36.00 cycles/hash -Small key speed test - 14-byte keys - 36.00 cycles/hash -Small key speed test - 15-byte keys - 36.00 cycles/hash -Small key speed test - 16-byte keys - 36.00 cycles/hash -Small key speed test - 17-byte keys - 37.00 cycles/hash -Small key speed test - 18-byte keys - 37.00 cycles/hash -Small key speed test - 19-byte keys - 37.00 cycles/hash -Small key speed test - 20-byte keys - 37.00 cycles/hash -Small key speed test - 21-byte keys - 37.00 cycles/hash -Small key speed test - 22-byte keys - 37.00 cycles/hash -Small key speed test - 23-byte keys - 37.00 cycles/hash -Small key speed test - 24-byte keys - 37.00 cycles/hash -Small key speed test - 25-byte keys - 37.85 cycles/hash -Small key speed test - 26-byte keys - 37.88 cycles/hash -Small key speed test - 27-byte keys - 37.86 cycles/hash -Small key speed test - 28-byte keys - 37.84 cycles/hash -Small key speed test - 29-byte keys - 37.84 cycles/hash -Small key speed test - 30-byte keys - 37.86 cycles/hash -Small key speed test - 31-byte keys - 37.85 cycles/hash -Average 37.838 cycles/hash +Alignment 7 - 4.702 bytes/cycle - 13452.68 MiB/sec @ 3 ghz +Alignment 6 - 4.699 bytes/cycle - 13443.55 MiB/sec @ 3 ghz +Alignment 5 - 4.697 bytes/cycle - 13438.88 MiB/sec @ 3 ghz +Alignment 4 - 4.696 bytes/cycle - 13435.26 MiB/sec @ 3 ghz +Alignment 3 - 4.695 bytes/cycle - 13433.79 MiB/sec @ 3 ghz +Alignment 2 - 4.698 bytes/cycle - 13442.23 MiB/sec @ 3 ghz +Alignment 1 - 4.697 bytes/cycle - 13437.00 MiB/sec @ 3 ghz +Alignment 0 - 4.704 bytes/cycle - 13457.73 MiB/sec @ 3 ghz +Average - 4.699 bytes/cycle - 13442.64 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 30.00 cycles/hash +Small key speed test - 2-byte keys - 30.00 cycles/hash +Small key speed test - 3-byte keys - 30.00 cycles/hash +Small key speed test - 4-byte keys - 29.23 cycles/hash +Small key speed test - 5-byte keys - 29.19 cycles/hash +Small key speed test - 6-byte keys - 29.30 cycles/hash +Small key speed test - 7-byte keys - 29.19 cycles/hash +Small key speed test - 8-byte keys - 29.00 cycles/hash +Small key speed test - 9-byte keys - 30.00 cycles/hash +Small key speed test - 10-byte keys - 30.00 cycles/hash +Small key speed test - 11-byte keys - 30.00 cycles/hash +Small key speed test - 12-byte keys - 30.00 cycles/hash +Small key speed test - 13-byte keys - 30.00 cycles/hash +Small key speed test - 14-byte keys - 30.00 cycles/hash +Small key speed test - 15-byte keys - 30.00 cycles/hash +Small key speed test - 16-byte keys - 30.00 cycles/hash +Small key speed test - 17-byte keys - 32.25 cycles/hash +Small key speed test - 18-byte keys - 32.00 cycles/hash +Small key speed test - 19-byte keys - 32.15 cycles/hash +Small key speed test - 20-byte keys - 32.00 cycles/hash +Small key speed test - 21-byte keys - 33.00 cycles/hash +Small key speed test - 22-byte keys - 33.00 cycles/hash +Small key speed test - 23-byte keys - 33.00 cycles/hash +Small key speed test - 24-byte keys - 32.56 cycles/hash +Small key speed test - 25-byte keys - 33.98 cycles/hash +Small key speed test - 26-byte keys - 33.98 cycles/hash +Small key speed test - 27-byte keys - 33.98 cycles/hash +Small key speed test - 28-byte keys - 33.97 cycles/hash +Small key speed test - 29-byte keys - 33.97 cycles/hash +Small key speed test - 30-byte keys - 33.97 cycles/hash +Small key speed test - 31-byte keys - 33.99 cycles/hash +Average 31.410 cycles/hash [[[ 'Hashmap' Speed Tests (when inlined) ]]] diff --git a/doc/t1ha2_atonce.txt b/doc/t1ha2_atonce.txt index 11713643..73f06ca3 100644 --- a/doc/t1ha2_atonce.txt +++ b/doc/t1ha2_atonce.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 3.211 bytes/cycle - 9187.79 MiB/sec @ 3 ghz -Alignment 6 - 3.211 bytes/cycle - 9187.01 MiB/sec @ 3 ghz -Alignment 5 - 3.212 bytes/cycle - 9188.86 MiB/sec @ 3 ghz -Alignment 4 - 3.211 bytes/cycle - 9187.34 MiB/sec @ 3 ghz -Alignment 3 - 3.211 bytes/cycle - 9187.65 MiB/sec @ 3 ghz -Alignment 2 - 3.211 bytes/cycle - 9187.75 MiB/sec @ 3 ghz -Alignment 1 - 3.211 bytes/cycle - 9187.84 MiB/sec @ 3 ghz -Alignment 0 - 3.369 bytes/cycle - 9638.85 MiB/sec @ 3 ghz -Average - 3.231 bytes/cycle - 9244.14 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 41.00 cycles/hash -Small key speed test - 2-byte keys - 41.00 cycles/hash -Small key speed test - 3-byte keys - 41.00 cycles/hash -Small key speed test - 4-byte keys - 41.00 cycles/hash -Small key speed test - 5-byte keys - 41.00 cycles/hash -Small key speed test - 6-byte keys - 41.00 cycles/hash -Small key speed test - 7-byte keys - 41.00 cycles/hash -Small key speed test - 8-byte keys - 41.00 cycles/hash -Small key speed test - 9-byte keys - 45.00 cycles/hash -Small key speed test - 10-byte keys - 45.00 cycles/hash -Small key speed test - 11-byte keys - 45.00 cycles/hash -Small key speed test - 12-byte keys - 45.00 cycles/hash -Small key speed test - 13-byte keys - 45.00 cycles/hash -Small key speed test - 14-byte keys - 45.00 cycles/hash -Small key speed test - 15-byte keys - 45.00 cycles/hash -Small key speed test - 16-byte keys - 45.00 cycles/hash -Small key speed test - 17-byte keys - 50.00 cycles/hash -Small key speed test - 18-byte keys - 50.00 cycles/hash -Small key speed test - 19-byte keys - 50.00 cycles/hash -Small key speed test - 20-byte keys - 50.00 cycles/hash -Small key speed test - 21-byte keys - 50.00 cycles/hash -Small key speed test - 22-byte keys - 50.00 cycles/hash -Small key speed test - 23-byte keys - 50.00 cycles/hash -Small key speed test - 24-byte keys - 50.00 cycles/hash -Small key speed test - 25-byte keys - 55.00 cycles/hash -Small key speed test - 26-byte keys - 55.00 cycles/hash -Small key speed test - 27-byte keys - 55.00 cycles/hash -Small key speed test - 28-byte keys - 55.00 cycles/hash -Small key speed test - 29-byte keys - 55.00 cycles/hash -Small key speed test - 30-byte keys - 55.00 cycles/hash -Small key speed test - 31-byte keys - 55.00 cycles/hash -Average 47.516 cycles/hash +Alignment 7 - 4.831 bytes/cycle - 13822.36 MiB/sec @ 3 ghz +Alignment 6 - 4.829 bytes/cycle - 13816.28 MiB/sec @ 3 ghz +Alignment 5 - 4.829 bytes/cycle - 13816.41 MiB/sec @ 3 ghz +Alignment 4 - 4.825 bytes/cycle - 13805.76 MiB/sec @ 3 ghz +Alignment 3 - 4.829 bytes/cycle - 13816.05 MiB/sec @ 3 ghz +Alignment 2 - 4.830 bytes/cycle - 13817.92 MiB/sec @ 3 ghz +Alignment 1 - 4.828 bytes/cycle - 13811.99 MiB/sec @ 3 ghz +Alignment 0 - 4.938 bytes/cycle - 14128.75 MiB/sec @ 3 ghz +Average - 4.842 bytes/cycle - 13854.44 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 33.00 cycles/hash +Small key speed test - 2-byte keys - 33.00 cycles/hash +Small key speed test - 3-byte keys - 33.00 cycles/hash +Small key speed test - 4-byte keys - 32.89 cycles/hash +Small key speed test - 5-byte keys - 32.93 cycles/hash +Small key speed test - 6-byte keys - 32.87 cycles/hash +Small key speed test - 7-byte keys - 32.87 cycles/hash +Small key speed test - 8-byte keys - 32.00 cycles/hash +Small key speed test - 9-byte keys - 34.00 cycles/hash +Small key speed test - 10-byte keys - 34.00 cycles/hash +Small key speed test - 11-byte keys - 34.00 cycles/hash +Small key speed test - 12-byte keys - 34.00 cycles/hash +Small key speed test - 13-byte keys - 34.00 cycles/hash +Small key speed test - 14-byte keys - 34.00 cycles/hash +Small key speed test - 15-byte keys - 34.00 cycles/hash +Small key speed test - 16-byte keys - 34.00 cycles/hash +Small key speed test - 17-byte keys - 39.82 cycles/hash +Small key speed test - 18-byte keys - 39.84 cycles/hash +Small key speed test - 19-byte keys - 39.92 cycles/hash +Small key speed test - 20-byte keys - 39.94 cycles/hash +Small key speed test - 21-byte keys - 39.85 cycles/hash +Small key speed test - 22-byte keys - 39.83 cycles/hash +Small key speed test - 23-byte keys - 39.82 cycles/hash +Small key speed test - 24-byte keys - 39.88 cycles/hash +Small key speed test - 25-byte keys - 46.00 cycles/hash +Small key speed test - 26-byte keys - 46.00 cycles/hash +Small key speed test - 27-byte keys - 46.00 cycles/hash +Small key speed test - 28-byte keys - 46.00 cycles/hash +Small key speed test - 29-byte keys - 46.00 cycles/hash +Small key speed test - 30-byte keys - 46.00 cycles/hash +Small key speed test - 31-byte keys - 46.00 cycles/hash +Average 37.918 cycles/hash [[[ 'Hashmap' Speed Tests (when inlined) ]]] diff --git a/doc/t1ha2_atonce128.txt b/doc/t1ha2_atonce128.txt index dd58b0a7..f8b9b967 100644 --- a/doc/t1ha2_atonce128.txt +++ b/doc/t1ha2_atonce128.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 2.896 bytes/cycle - 8285.10 MiB/sec @ 3 ghz -Alignment 6 - 2.896 bytes/cycle - 8285.60 MiB/sec @ 3 ghz -Alignment 5 - 2.896 bytes/cycle - 8285.50 MiB/sec @ 3 ghz -Alignment 4 - 2.896 bytes/cycle - 8285.18 MiB/sec @ 3 ghz -Alignment 3 - 2.896 bytes/cycle - 8285.26 MiB/sec @ 3 ghz -Alignment 2 - 2.896 bytes/cycle - 8284.67 MiB/sec @ 3 ghz -Alignment 1 - 2.896 bytes/cycle - 8285.62 MiB/sec @ 3 ghz -Alignment 0 - 3.074 bytes/cycle - 8795.40 MiB/sec @ 3 ghz -Average - 2.918 bytes/cycle - 8349.04 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 56.33 cycles/hash -Small key speed test - 2-byte keys - 56.41 cycles/hash -Small key speed test - 3-byte keys - 56.41 cycles/hash -Small key speed test - 4-byte keys - 56.12 cycles/hash -Small key speed test - 5-byte keys - 56.00 cycles/hash -Small key speed test - 6-byte keys - 56.41 cycles/hash -Small key speed test - 7-byte keys - 56.41 cycles/hash -Small key speed test - 8-byte keys - 56.00 cycles/hash -Small key speed test - 9-byte keys - 60.93 cycles/hash -Small key speed test - 10-byte keys - 60.87 cycles/hash -Small key speed test - 11-byte keys - 60.69 cycles/hash -Small key speed test - 12-byte keys - 60.15 cycles/hash -Small key speed test - 13-byte keys - 60.27 cycles/hash -Small key speed test - 14-byte keys - 60.67 cycles/hash -Small key speed test - 15-byte keys - 60.00 cycles/hash -Small key speed test - 16-byte keys - 60.60 cycles/hash -Small key speed test - 17-byte keys - 65.00 cycles/hash -Small key speed test - 18-byte keys - 65.00 cycles/hash -Small key speed test - 19-byte keys - 65.33 cycles/hash -Small key speed test - 20-byte keys - 65.48 cycles/hash -Small key speed test - 21-byte keys - 65.28 cycles/hash -Small key speed test - 22-byte keys - 65.51 cycles/hash -Small key speed test - 23-byte keys - 65.00 cycles/hash -Small key speed test - 24-byte keys - 65.77 cycles/hash -Small key speed test - 25-byte keys - 70.00 cycles/hash -Small key speed test - 26-byte keys - 70.00 cycles/hash -Small key speed test - 27-byte keys - 70.00 cycles/hash -Small key speed test - 28-byte keys - 70.00 cycles/hash -Small key speed test - 29-byte keys - 70.00 cycles/hash -Small key speed test - 30-byte keys - 70.00 cycles/hash -Small key speed test - 31-byte keys - 70.00 cycles/hash -Average 62.794 cycles/hash +Alignment 7 - 4.924 bytes/cycle - 14089.10 MiB/sec @ 3 ghz +Alignment 6 - 4.935 bytes/cycle - 14119.74 MiB/sec @ 3 ghz +Alignment 5 - 4.933 bytes/cycle - 14112.71 MiB/sec @ 3 ghz +Alignment 4 - 4.929 bytes/cycle - 14102.59 MiB/sec @ 3 ghz +Alignment 3 - 4.931 bytes/cycle - 14108.00 MiB/sec @ 3 ghz +Alignment 2 - 4.931 bytes/cycle - 14106.91 MiB/sec @ 3 ghz +Alignment 1 - 4.933 bytes/cycle - 14114.42 MiB/sec @ 3 ghz +Alignment 0 - 5.045 bytes/cycle - 14433.92 MiB/sec @ 3 ghz +Average - 4.945 bytes/cycle - 14148.42 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 51.00 cycles/hash +Small key speed test - 2-byte keys - 51.00 cycles/hash +Small key speed test - 3-byte keys - 51.00 cycles/hash +Small key speed test - 4-byte keys - 50.47 cycles/hash +Small key speed test - 5-byte keys - 50.00 cycles/hash +Small key speed test - 6-byte keys - 50.00 cycles/hash +Small key speed test - 7-byte keys - 50.46 cycles/hash +Small key speed test - 8-byte keys - 50.00 cycles/hash +Small key speed test - 9-byte keys - 52.00 cycles/hash +Small key speed test - 10-byte keys - 52.00 cycles/hash +Small key speed test - 11-byte keys - 52.00 cycles/hash +Small key speed test - 12-byte keys - 52.00 cycles/hash +Small key speed test - 13-byte keys - 52.00 cycles/hash +Small key speed test - 14-byte keys - 52.00 cycles/hash +Small key speed test - 15-byte keys - 52.00 cycles/hash +Small key speed test - 16-byte keys - 52.00 cycles/hash +Small key speed test - 17-byte keys - 57.96 cycles/hash +Small key speed test - 18-byte keys - 57.95 cycles/hash +Small key speed test - 19-byte keys - 57.22 cycles/hash +Small key speed test - 20-byte keys - 57.95 cycles/hash +Small key speed test - 21-byte keys - 57.25 cycles/hash +Small key speed test - 22-byte keys - 57.33 cycles/hash +Small key speed test - 23-byte keys - 57.30 cycles/hash +Small key speed test - 24-byte keys - 57.28 cycles/hash +Small key speed test - 25-byte keys - 63.81 cycles/hash +Small key speed test - 26-byte keys - 63.82 cycles/hash +Small key speed test - 27-byte keys - 63.72 cycles/hash +Small key speed test - 28-byte keys - 63.82 cycles/hash +Small key speed test - 29-byte keys - 63.88 cycles/hash +Small key speed test - 30-byte keys - 63.83 cycles/hash +Small key speed test - 31-byte keys - 63.73 cycles/hash +Average 55.703 cycles/hash [[[ 'Hashmap' Speed Tests (when inlined) ]]] diff --git a/doc/t1ha2_stream.txt b/doc/t1ha2_stream.txt index 0da7d6d8..49c958ba 100644 --- a/doc/t1ha2_stream.txt +++ b/doc/t1ha2_stream.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 3.163 bytes/cycle - 9050.28 MiB/sec @ 3 ghz -Alignment 6 - 3.163 bytes/cycle - 9050.20 MiB/sec @ 3 ghz -Alignment 5 - 3.163 bytes/cycle - 9049.58 MiB/sec @ 3 ghz -Alignment 4 - 3.163 bytes/cycle - 9050.60 MiB/sec @ 3 ghz -Alignment 3 - 3.163 bytes/cycle - 9050.37 MiB/sec @ 3 ghz -Alignment 2 - 3.163 bytes/cycle - 9050.43 MiB/sec @ 3 ghz -Alignment 1 - 3.163 bytes/cycle - 9050.27 MiB/sec @ 3 ghz -Alignment 0 - 3.208 bytes/cycle - 9179.13 MiB/sec @ 3 ghz -Average - 3.169 bytes/cycle - 9066.36 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 68.00 cycles/hash -Small key speed test - 2-byte keys - 68.00 cycles/hash -Small key speed test - 3-byte keys - 69.00 cycles/hash -Small key speed test - 4-byte keys - 68.00 cycles/hash -Small key speed test - 5-byte keys - 69.00 cycles/hash -Small key speed test - 6-byte keys - 69.00 cycles/hash -Small key speed test - 7-byte keys - 70.00 cycles/hash -Small key speed test - 8-byte keys - 58.21 cycles/hash -Small key speed test - 9-byte keys - 71.66 cycles/hash -Small key speed test - 10-byte keys - 71.58 cycles/hash -Small key speed test - 11-byte keys - 72.00 cycles/hash -Small key speed test - 12-byte keys - 71.74 cycles/hash -Small key speed test - 13-byte keys - 72.22 cycles/hash -Small key speed test - 14-byte keys - 72.22 cycles/hash -Small key speed test - 15-byte keys - 73.00 cycles/hash -Small key speed test - 16-byte keys - 62.00 cycles/hash -Small key speed test - 17-byte keys - 72.00 cycles/hash -Small key speed test - 18-byte keys - 72.12 cycles/hash -Small key speed test - 19-byte keys - 73.00 cycles/hash -Small key speed test - 20-byte keys - 72.00 cycles/hash -Small key speed test - 21-byte keys - 73.10 cycles/hash -Small key speed test - 22-byte keys - 73.00 cycles/hash -Small key speed test - 23-byte keys - 74.00 cycles/hash -Small key speed test - 24-byte keys - 59.25 cycles/hash -Small key speed test - 25-byte keys - 97.00 cycles/hash -Small key speed test - 26-byte keys - 98.25 cycles/hash -Small key speed test - 27-byte keys - 99.83 cycles/hash -Small key speed test - 28-byte keys - 98.00 cycles/hash -Small key speed test - 29-byte keys - 99.84 cycles/hash -Small key speed test - 30-byte keys - 99.00 cycles/hash -Small key speed test - 31-byte keys - 99.00 cycles/hash -Average 76.291 cycles/hash +Alignment 7 - 4.875 bytes/cycle - 13948.01 MiB/sec @ 3 ghz +Alignment 6 - 4.882 bytes/cycle - 13966.31 MiB/sec @ 3 ghz +Alignment 5 - 4.885 bytes/cycle - 13975.27 MiB/sec @ 3 ghz +Alignment 4 - 4.885 bytes/cycle - 13976.44 MiB/sec @ 3 ghz +Alignment 3 - 4.883 bytes/cycle - 13969.43 MiB/sec @ 3 ghz +Alignment 2 - 4.881 bytes/cycle - 13963.34 MiB/sec @ 3 ghz +Alignment 1 - 4.884 bytes/cycle - 13971.91 MiB/sec @ 3 ghz +Alignment 0 - 5.006 bytes/cycle - 14322.34 MiB/sec @ 3 ghz +Average - 4.897 bytes/cycle - 14011.63 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 78.57 cycles/hash +Small key speed test - 2-byte keys - 75.00 cycles/hash +Small key speed test - 3-byte keys - 75.00 cycles/hash +Small key speed test - 4-byte keys - 75.80 cycles/hash +Small key speed test - 5-byte keys - 75.99 cycles/hash +Small key speed test - 6-byte keys - 75.99 cycles/hash +Small key speed test - 7-byte keys - 75.99 cycles/hash +Small key speed test - 8-byte keys - 49.00 cycles/hash +Small key speed test - 9-byte keys - 76.71 cycles/hash +Small key speed test - 10-byte keys - 76.75 cycles/hash +Small key speed test - 11-byte keys - 76.67 cycles/hash +Small key speed test - 12-byte keys - 76.80 cycles/hash +Small key speed test - 13-byte keys - 76.74 cycles/hash +Small key speed test - 14-byte keys - 76.77 cycles/hash +Small key speed test - 15-byte keys - 76.75 cycles/hash +Small key speed test - 16-byte keys - 53.00 cycles/hash +Small key speed test - 17-byte keys - 79.95 cycles/hash +Small key speed test - 18-byte keys - 79.82 cycles/hash +Small key speed test - 19-byte keys - 79.94 cycles/hash +Small key speed test - 20-byte keys - 79.00 cycles/hash +Small key speed test - 21-byte keys - 79.96 cycles/hash +Small key speed test - 22-byte keys - 79.97 cycles/hash +Small key speed test - 23-byte keys - 79.97 cycles/hash +Small key speed test - 24-byte keys - 52.18 cycles/hash +Small key speed test - 25-byte keys - 97.64 cycles/hash +Small key speed test - 26-byte keys - 104.13 cycles/hash +Small key speed test - 27-byte keys - 104.16 cycles/hash +Small key speed test - 28-byte keys - 103.95 cycles/hash +Small key speed test - 29-byte keys - 103.89 cycles/hash +Small key speed test - 30-byte keys - 103.88 cycles/hash +Small key speed test - 31-byte keys - 102.50 cycles/hash +Average 80.725 cycles/hash [[[ 'Hashmap' Speed Tests (when inlined) ]]] diff --git a/doc/t1ha2_stream128.txt b/doc/t1ha2_stream128.txt index f8ed353c..4722d943 100644 --- a/doc/t1ha2_stream128.txt +++ b/doc/t1ha2_stream128.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 3.163 bytes/cycle - 9049.09 MiB/sec @ 3 ghz -Alignment 6 - 3.163 bytes/cycle - 9049.39 MiB/sec @ 3 ghz -Alignment 5 - 3.163 bytes/cycle - 9048.39 MiB/sec @ 3 ghz -Alignment 4 - 3.163 bytes/cycle - 9048.98 MiB/sec @ 3 ghz -Alignment 3 - 3.163 bytes/cycle - 9048.59 MiB/sec @ 3 ghz -Alignment 2 - 3.163 bytes/cycle - 9048.38 MiB/sec @ 3 ghz -Alignment 1 - 3.163 bytes/cycle - 9048.83 MiB/sec @ 3 ghz -Alignment 0 - 3.210 bytes/cycle - 9184.10 MiB/sec @ 3 ghz -Average - 3.169 bytes/cycle - 9065.72 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 87.00 cycles/hash -Small key speed test - 2-byte keys - 87.62 cycles/hash -Small key speed test - 3-byte keys - 88.27 cycles/hash -Small key speed test - 4-byte keys - 88.00 cycles/hash -Small key speed test - 5-byte keys - 88.00 cycles/hash -Small key speed test - 6-byte keys - 88.94 cycles/hash -Small key speed test - 7-byte keys - 89.44 cycles/hash -Small key speed test - 8-byte keys - 69.72 cycles/hash -Small key speed test - 9-byte keys - 88.77 cycles/hash -Small key speed test - 10-byte keys - 88.76 cycles/hash -Small key speed test - 11-byte keys - 89.89 cycles/hash -Small key speed test - 12-byte keys - 89.00 cycles/hash -Small key speed test - 13-byte keys - 89.76 cycles/hash -Small key speed test - 14-byte keys - 89.67 cycles/hash -Small key speed test - 15-byte keys - 90.53 cycles/hash -Small key speed test - 16-byte keys - 73.00 cycles/hash -Small key speed test - 17-byte keys - 90.54 cycles/hash -Small key speed test - 18-byte keys - 90.00 cycles/hash -Small key speed test - 19-byte keys - 92.00 cycles/hash -Small key speed test - 20-byte keys - 90.94 cycles/hash -Small key speed test - 21-byte keys - 91.51 cycles/hash -Small key speed test - 22-byte keys - 91.98 cycles/hash -Small key speed test - 23-byte keys - 93.00 cycles/hash -Small key speed test - 24-byte keys - 71.89 cycles/hash -Small key speed test - 25-byte keys - 115.31 cycles/hash -Small key speed test - 26-byte keys - 117.11 cycles/hash -Small key speed test - 27-byte keys - 117.97 cycles/hash -Small key speed test - 28-byte keys - 116.84 cycles/hash -Small key speed test - 29-byte keys - 117.98 cycles/hash -Small key speed test - 30-byte keys - 117.95 cycles/hash -Small key speed test - 31-byte keys - 117.97 cycles/hash -Average 94.174 cycles/hash +Alignment 7 - 3.963 bytes/cycle - 11338.57 MiB/sec @ 3 ghz +Alignment 6 - 4.239 bytes/cycle - 12126.87 MiB/sec @ 3 ghz +Alignment 5 - 4.745 bytes/cycle - 13575.07 MiB/sec @ 3 ghz +Alignment 4 - 4.738 bytes/cycle - 13556.40 MiB/sec @ 3 ghz +Alignment 3 - 4.734 bytes/cycle - 13543.14 MiB/sec @ 3 ghz +Alignment 2 - 4.732 bytes/cycle - 13538.41 MiB/sec @ 3 ghz +Alignment 1 - 4.729 bytes/cycle - 13530.62 MiB/sec @ 3 ghz +Alignment 0 - 4.851 bytes/cycle - 13879.36 MiB/sec @ 3 ghz +Average - 4.591 bytes/cycle - 13136.06 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 95.12 cycles/hash +Small key speed test - 2-byte keys - 92.31 cycles/hash +Small key speed test - 3-byte keys - 92.00 cycles/hash +Small key speed test - 4-byte keys - 93.00 cycles/hash +Small key speed test - 5-byte keys - 93.00 cycles/hash +Small key speed test - 6-byte keys - 93.00 cycles/hash +Small key speed test - 7-byte keys - 93.00 cycles/hash +Small key speed test - 8-byte keys - 60.00 cycles/hash +Small key speed test - 9-byte keys - 95.33 cycles/hash +Small key speed test - 10-byte keys - 95.31 cycles/hash +Small key speed test - 11-byte keys - 95.32 cycles/hash +Small key speed test - 12-byte keys - 95.00 cycles/hash +Small key speed test - 13-byte keys - 95.30 cycles/hash +Small key speed test - 14-byte keys - 95.19 cycles/hash +Small key speed test - 15-byte keys - 95.00 cycles/hash +Small key speed test - 16-byte keys - 65.90 cycles/hash +Small key speed test - 17-byte keys - 97.46 cycles/hash +Small key speed test - 18-byte keys - 97.41 cycles/hash +Small key speed test - 19-byte keys - 97.43 cycles/hash +Small key speed test - 20-byte keys - 97.00 cycles/hash +Small key speed test - 21-byte keys - 97.12 cycles/hash +Small key speed test - 22-byte keys - 97.11 cycles/hash +Small key speed test - 23-byte keys - 97.12 cycles/hash +Small key speed test - 24-byte keys - 60.18 cycles/hash +Small key speed test - 25-byte keys - 115.27 cycles/hash +Small key speed test - 26-byte keys - 121.94 cycles/hash +Small key speed test - 27-byte keys - 121.95 cycles/hash +Small key speed test - 28-byte keys - 121.24 cycles/hash +Small key speed test - 29-byte keys - 122.75 cycles/hash +Small key speed test - 30-byte keys - 122.75 cycles/hash +Small key speed test - 31-byte keys - 121.34 cycles/hash +Average 97.802 cycles/hash [[[ 'Hashmap' Speed Tests (when inlined) ]]] diff --git a/doc/table.html b/doc/table.html index 20ca3ac5..24067151 100644 --- a/doc/table.html +++ b/doc/table.html @@ -385,857 +385,857 @@

SMhasher

hasshe2 -2791.93 -63.87 -278.67 (5) +2773.89 +64.35 +282.30 (3) 445 Permutation,TwoBytes,Zeroes,Seed poly_1_mersenne -1344.26 -62.49 -258.52 (4) +1369.21 +61.59 +248.86 (4) 479 fails most tests poly_2_mersenne -1355.51 -70.68 -267.09 (5) +1364.03 +70.30 +261.00 (6) 479 poly_3_mersenne -1344.95 -80.08 -277.61 (6) +1342.82 +80.22 +268.79 (2) 479 poly_4_mersenne -1358.32 -88.02 -281.05 (5) +1343.19 +89.13 +277.52 (3) 479 tabulation32 -5666.25 -40.75 -247.27 (4) +5781.16 +40.00 +241.79 (10) 848 collisions tabulation -7860.10 -39.88 -260.99 (6) +7875.01 +39.95 +249.49 (3) 554 crc32_hw -6056.18 -42.22 -244.54 (5) +6244.38 +41.23 +226.80 (2) 653 insecure, 100% bias, collisions, distrib, machine-specific (x86 SSE4.2) crc32_hw1 -7304.11 -49.65 -248.61 (6) +7569.29 +49.07 +233.75 (3) 671 insecure, 100% bias, collisions, distrib, machine-specific (x86 SSE4.2) crc64_hw -6149.22 -40.10 -214.15 (5) +6143.62 +40.48 +223.13 (2) 652 insecure, 100% bias, collisions, distrib, machine-specific (x64 SSE4.2) crc32_pclmul -8201.09 -105.92 -575.74 (5) +8403.09 +105.42 +572.99 (6) 481 insecure, 100% bias, collisions, distrib, machine-specific (x86 PCLMUL) o1hash -11599548.76 -18.21 -223.19 (4) +11629440.57 +18.15 +199.35 (2) 101 insecure, zeros, fails all tests fibonacci -15940.72 -22.98 -840.87 (4) +16878.32 +22.94 +803.18 (15) 1692 UB, zeros, fails all tests FNV1a -762.10 -73.72 -250.05 (6) +760.52 +73.83 +254.29 (5) 204 zeros, fails all tests FNV1A_Totenschiff -6150.00 -26.35 -251.72 (5) +6274.78 +26.23 +251.13 (2) 270 UB, zeros, fails all tests FNV1A_Pippip_Yurii -6094.18 -28.29 -260.05 (6) +6172.14 +27.55 +244.80 (2) 147 UB, sanity, fails all tests FNV1a_YT -13451.31 -30.57 -244.22 (5) +13486.49 +30.50 +237.43 (4) 321 UB, fails all tests FNV2 -6199.86 -32.10 -216.13 (5) +6171.60 +32.20 +208.59 (4) 278 fails all tests FNV64 -762.15 -73.38 -204.27 (5) +774.37 +72.43 +201.15 (2) 79 fails all tests FNV128 -388.63 -138.02 -310.77 (11) +390.14 +136.42 +289.00 (3) 171 fails all tests k-hash32 -2221.69 -53.26 -264.07 (4) +2230.42 +53.05 +264.64 (3) 808 UB, insecure, zeros, fails all tests k-hash64 -2418.02 -49.37 -247.61 (4) +2451.88 +48.66 +249.44 (2) 609 UB, insecure, zeros, fails all tests fletcher2 -15241.81 -21.05 -349.08 (4) +15552.61 +20.61 +335.31 (3) 248 UB, fails all tests fletcher4 -15339.28 -20.88 -352.19 (4) +15556.93 +20.60 +358.60 (3) 371 UB, fails all tests bernstein -1014.45 -58.11 -238.29 (4) +1045.97 +58.31 +225.78 (3) 41 fails all tests sdbm -770.27 -70.06 -234.11 (6) +784.83 +68.57 +222.68 (5) 41 fails all tests x17 -761.56 -74.03 -240.13 (6) +748.75 +74.13 +236.00 (10) 79 99.98% bias, fails all tests libiberty -610.09 -85.35 -242.93 (5) +628.66 +84.95 +225.07 (4) 37 insecure, 100% bias, fails all tests gcc -616.49 -85.62 -242.07 (5) +611.69 +86.47 +231.51 (5) 39 insecure, 100% bias, fails all tests JenkinsOOAT -619.78 -108.61 -268.47 (5) +627.64 +107.04 +252.79 (3) 153 53.5% bias, fails all tests JenkinsOOAT_perl -615.95 -93.03 -257.38 (4) +608.10 +94.17 +254.09 (4) 65 1.5-11.5% bias, 7.2x collisions, LongNeighbors MicroOAAT -739.74 -75.39 -244.15 (5) +701.35 +76.68 +251.01 (3) 68 100% bias, distrib VHASH_32 -13283.54 -64.91 -295.63 (5) +13053.40 +65.84 +289.86 (3) 1231 sanity, Seed, MomentChi2 VHASH_64 -13057.72 -66.00 -291.31 (5) +13465.50 +63.88 +286.38 (5) 1231 sanity, Seed, Sparse farsh32 -27073.86 -66.85 -291.09 (5) +27038.23 +66.88 +278.89 (5) 944 insecure: AppendedZeroes, collisions+bias, MomentChi2, LongNeighbors farsh64 -13742.68 -114.13 -331.15 (5) +13829.32 +112.46 +332.59 (3) 944 insecure: AppendedZeroes, collisions+bias, MomentChi2, LongNeighbors farsh128 -6915.41 -234.60 -401.77 (4) +6878.88 +233.35 +384.85 (3) ?? farsh256 -3411.21 -451.97 -628.91 (2.6) +3467.37 +440.40 +593.57 (5) ?? jodyhash32 -1739.08 -42.57 -255.95 (10) +1794.34 +41.12 +235.12 (4) 102 bias, collisions, distr, LongNeighbors jodyhash64 -4794.51 -28.17 -247.51 (7) +4813.10 +40.72 +239.22 (6) 118 bias, collisions, distr, LongNeighbors lookup3 -2467.12 -39.90 -247.48 (6) +2475.35 +39.65 +240.10 (3) 341 UB, 28% bias, collisions, 30% distr superfast -2062.25 -49.52 -247.20 (4) +2058.22 +49.56 +254.12 (3) 210 UB, 91% bias, 5273.01x collisions, 37% distr, BIC MurmurOAAT -507.14 -103.15 -246.66 (6) +506.66 +103.33 +236.89 (3) 47 collisions, 99.998% distr., BIC, LongNeighbors Crap8 -3097.22 -36.49 -252.62 (6) +3041.14 +37.25 +247.87 (4) 342 UB, 2.42% bias, collisions, 2% distrib Murmur1 -2065.77 -47.62 -247.08 (4) +2027.85 +48.51 +253.34 (3) UB, fails all tests, 1 bad seed Murmur2 -3043.78 -41.85 -249.46 (6) +3089.18 +41.22 +238.42 (4) 358 UB, 1.7% bias, 81x coll, 1.7% distrib, BIC Murmur2A -3073.22 -46.11 -253.88 (5) +3087.98 +45.90 +238.54 (4) 407 UB, 12.7% bias, LongNeighbors Murmur2B -6178.48 -38.12 -237.04 (5) +5919.38 +38.18 +215.96 (3) 433 UB, 1.8% bias, collisions, 3.4% distrib, BIC Murmur2C -3794.65 -49.28 -231.58 (5) +3810.98 +49.09 +218.51 (3) 444 UB, 91% bias, collisions, distr, BIC, LongNeighbors Murmur3A -3037.83 -48.32 -250.33 (5) +2982.67 +49.08 +245.78 (4) 351 UB, Moment Chi2 69 PMurHash32 -3112.42 -47.26 -252.54 (5) +3005.85 +48.88 +242.38 (3) 1862 Moment Chi2 69 Murmur3C -4834.87 -56.75 -258.31 (5) +4833.18 +56.87 +250.47 (6) 859 UB, LongNeighbors, DiffDist PMPML_32 -6870.14 -43.94 -265.62 (5) +6639.68 +45.33 +257.45 (3) 1084 Avalanche >512, unseeded: Seed, MomentChi2 PMPML_64 -9984.71 -49.26 -249.64 (7) +9833.77 +50.00 +251.64 (6) 1305 unseeded: Seed, MomentChi2 xxHash32 -5896.91 -48.59 -248.97 (7) +5865.17 +49.20 +242.74 (3) 738 LongNeighbors, collisions with 4bit diff, MomentChi2 220 metrohash64_1 -14549.52 -40.57 -259.47 (5) +14298.77 +40.31 +223.25 (4) 624 UB, LongNeighbors, BIC, MomentChi2 metrohash64_2 -13634.01 -40.14 -231.99 (6) +14316.37 +40.23 +218.28 (3) 627 UB, LongNeighbors metrohash64crc_1 -8164.67 -45.69 -225.83 (4) +6929.69 +44.65 +223.68 (3) 632 UB, cyclic collisions 8 byte, BIC, MomentChi2, machine-specific (x64 SSE4.2) metrohash64crc_2 -7971.63 -44.07 -234.54 (7) +8150.65 +43.72 +219.45 (5) 632 UB, cyclic collisions 8 byte, BIC, machine-specific (x64 SSE4.2) metrohash128_1 -15802.66 -72.40 -266.20 (6) +15806.97 +72.30 +260.90 (4) 773 UB, LongNeighbors metrohash128_2 -15576.05 -73.58 -273.15 (6) +15822.60 +72.30 +255.34 (3) 773 UB, LongNeighbors cmetrohash64_1o -14734.93 -39.62 -223.84 (4) +14921.73 +38.95 +213.25 (2) 3506 LongNeighbors, MomentChi2 cmetrohash64_1 -14453.95 -40.43 -239.68 (6) +14151.73 +40.90 +211.89 (2) 652 LongNeighbors, BIC, MomentChi2 cmetrohash64_2 -14292.65 -40.64 -224.73 (4) +14294.26 +40.76 +221.40 (4) 655 LongNeighbors City64noSeed -13900.14 -32.21 -244.86 (4) +14209.19 +31.80 +225.90 (5) 1038 Avalanche, Sparse, TwoBytes, MomentChi2, Seed City64 -14011.88 -45.67 -244.04 (5) +13887.84 +46.32 +239.77 (3) 1120 Sparse, TwoBytes t1ha1_64le -13369.16 -31.55 -242.73 (6) +13442.64 +31.41 +219.58 (3) 517 Avalanche t1ha1_64be -11591.96 -32.69 -244.10 (5) +11586.02 +32.74 +232.55 (3) 555 Avalanche t1ha0_32le -7245.81 -49.24 -258.06 (6) +7401.21 +48.27 +238.99 (3) 509 Sparse, LongNeighbors t1ha0_32be -6754.43 -50.64 -253.15 (7) +6217.37 +50.66 +244.51 (3) 533 Sparse, LongNeighbors t1ha2_stream -13718.38 -82.35 -293.58 (5) +14011.63 +80.72 +275.17 (3) 1665 Sparse, Permutation, LongNeighbors t1ha2_stream128 -13801.39 -96.21 -320.21 (6) +13136.06 +97.80 +306.11 (7) 1665 Sparse, Permutation, LongNeighbors aesnihash -5183.33 -58.52 -322.74 (36) +5579.32 +56.83 +258.71 (5) 1209 fails many tests, machine-specific (x64 AES-NI) falkhash -50838.94 -123.38 -330.16 (6) +50631.69 +123.02 +322.14 (7) 264 Sparse, LongNeighbors, machine-specific (x64 AES-NI) MeowHash -29521.98 -65.83 -287.28 (4) +29969.40 +64.96 +274.29 (4) 1764 Sparse, machine-specific (x64 AES-NI) MeowHash64low -29793.14 -65.24 -285.78 (5) +29485.59 +65.98 +278.05 (3) 1764 Sparse, machine-specific (x64 AES-NI) MeowHash32low -30002.99 -64.81 -297.76 (6) +26944.58 +65.95 +292.79 (9) 1764 Sparse, machine-specific (x64 AES-NI) tifuhash_64 -158.15 -495.22 -555.81 (3) +161.70 +486.01 +526.50 (7) 276 beamsplitter -565.50 -831.53 -944.43 (19) +576.48 +810.57 +926.95 (17) UB floppsyhash -153.44 -569.53 -608.09 (7) +153.68 +573.17 +598.32 (3) 623 chaskey -1150.69 -113.09 -308.01 (5) +1143.05 +113.70 +294.43 (4) 1609 PerlinNoise SipHash -945.64 -146.95 -346.53 (5) +943.53 +147.15 +338.74 (4) 1071 HalfSipHash -1108.77 -82.02 -285.78 (5) +1141.57 +79.65 +263.96 (3) 700 zeroes GoodOAAT -744.66 -85.45 -244.27 (5) +743.81 +85.62 +231.22 (3) 237 pearsonbhash64 -1743.30 -100.63 -280.97 (6) +1794.83 +97.80 +268.90 (8) 683 pearsonbhash128 -1668.94 -105.95 -294.48 (4) +1691.62 +104.57 +272.38 (4) 1134 pearsonbhash256 -1413.41 -124.67 -321.99 (6) +1442.59 +126.04 +309.34 (4) 844 prvhash64_64m -2999.14 -48.44 -361.73 (27) +3077.18 +47.31 +241.92 (3) 349 prvhash64_64 -2968.64 -49.33 -549.32 (24) +3015.08 +48.03 +240.64 (3) 384 prvhash64_128 -3206.91 -69.44 -347.14 (14) +3353.81 +67.64 +266.32 (2) 718 prvhash64s_64 -6553.66 -274.48 -540.62 (16) +6591.34 +273.50 +464.65 (3) 2640 prvhash64s_128 -6477.93 -373.10 -553.80 (14) +6581.40 +333.83 +528.07 (5) 2799 SipHash13 -1813.55 -106.44 -314.29 (5) +1812.75 +106.56 +310.76 (5) 778 0.9% bias discohash1 -4158.02 -200.07 -392.03 (3) +4131.12 +199.00 +398.35 (5) 1294 bad seeds discohash1-128 -3815.35 -236.58 -436.62 (4) +4072.95 +234.17 +438.43 (5) 1294 discohash2 -4058.64 -204.75 -410.22 (3) +3986.52 +207.52 +421.99 (2) 1294 discohash2-128 -4147.52 -232.69 -427.82 (3) +4094.73 +236.61 +433.35 (4) 1294 discoNONG -3664.12 -418.35 -605.05 (5) +3698.45 +399.67 +597.78 (9) bad seeds pearsonhash64 -434.37 -123.30 -229.72 (6) +434.17 +124.14 +230.79 (4) Avalanche, Seed, SSSE3 only. broken MSVC pearsonhash128 -441.53 -119.06 -238.70 (5) +434.23 +121.34 +221.03 (7) Avalanche, Seed, SSSE3 only. broken MSVC pearsonhash256 -430.46 -118.16 -248.71 (6) +444.08 +119.11 +229.75 (4) Avalanche, Seed, SSSE3 only. broken MSVC TSip -4233.52 -53.23 -261.81 (6) +4233.17 +53.31 +249.19 (3) 519 !msvc aesni -31065.90 -30.02 -235.58 (8) +31232.34 +29.21 +230.14 (4) 519 machine-specific (x64 AES-NI) aesni-low -30410.61 -29.75 -236.47 (6) +31221.14 +29.64 +226.18 (3) 519 machine-specific (x64 AES-NI) seahash -8322.53 -58.50 -267.77 (5) +8261.80 +58.94 +256.08 (4) 871 PerlinNoise, !msvc seahash32low -8177.83 -59.45 -292.87 (6) +8266.17 +58.90 +290.21 (16) 871 PerlinNoise, !msvc clhash -17688.81 -69.15 -287.95 (6) +18703.04 +70.19 +282.12 (6) 1809 PerlinNoise, machine-specific (x64 SSE4.2) @@ -1249,297 +1249,297 @@

SMhasher

Murmur3F -7625.10 +7623.44 52.69 -228.96 (5) +221.87 (3) 699 UB fasthash32 -6075.38 -40.68 -262.40 (6) +6128.28 +40.30 +241.64 (4) 566 UB fasthash64 -6173.22 -38.08 -228.68 (6) +5818.92 +38.70 +220.74 (2) 509 UB, Moment Chi2 5159 ! MUM -9353.53 -35.80 -239.36 (6) +9563.99 +34.99 +228.55 (5) 1912 UB, too many bad seeds, machine-specific (32/64 differs) MUMlow -8978.00 -36.15 -267.84 (5) +9261.89 +36.17 +247.66 (4) 1912 UB, 5 bad seeds mirhash -6008.40 -37.79 -237.03 (5) +6139.07 +37.02 +209.47 (3) 1112 2^36 bad seeds, UB, LongNeighbors, machine-specific (32/64 differs) mirhash32low -6057.51 -37.61 -254.30 (8) +6145.39 +36.95 +235.09 (4) 1112 4 bad seeds, UB, Cyclic, LongNeighbors, machine-specific (32/64 differs) mirhashstrict -3545.19 -50.03 -234.09 (6) +3549.01 +49.99 +224.91 (2) 1112 mirhashstrict32low -3566.47 -49.73 -263.25 (4) +3441.35 +50.60 +247.19 (3) 1112 1 bad seed, MomentChi2 9 mx3 -9039.63 -48.63 -236.57 (5) +9034.90 +48.71 +227.89 (2) 734 UB pengyhash -13293.76 -75.49 -286.41 (6) +13428.80 +74.24 +275.42 (5) 421 City32 -5637.89 -53.19 -260.99 (6) +5551.28 +54.40 +261.64 (2) 1319 City64low -13897.36 +13904.10 46.24 -267.69 (5) +260.08 (3) 1120 City128 -14129.60 -87.98 -290.70 (7) +14031.96 +89.09 +290.05 (10) 1841 CityCrc128 -8041.40 -54.69 -257.22 (5) +7916.44 +55.50 +240.79 (2) 295 FarmHash32 -21706.27 -47.69 -271.51 (6) +21755.58 +47.54 +258.35 (3) 11489 machine-specific (x64 SSE4/AVX) FarmHash64 -12965.76 -46.42 -258.29 (6) +12845.53 +47.11 +251.58 (3) 3758 FarmHash128 -14144.18 -69.22 -269.64 (5) +13913.65 +70.25 +263.06 (3) 163 farmhash32_c -21913.08 -47.22 -267.19 (5) +21601.86 +47.38 +273.00 (3) 762 machine-specific (x64 SSE4/AVX) farmhash64_c -12853.81 -46.99 -250.29 (5) +12834.10 +47.23 +246.20 (2) 3688 farmhash128_c -13877.86 -68.19 -271.10 (4) +13753.24 +68.96 +263.76 (3) 1890 metrohash64 -14443.60 -40.32 -225.16 (5) +14741.56 +39.44 +215.76 (2) 624 LongNeighbors metrohash128 -15640.32 -73.22 -269.23 (5) +15634.66 +73.28 +261.23 (4) 624 UB metrohash128crc_1 -7961.55 -78.91 -276.21 (5) +8009.23 +78.72 +281.55 (13) 723 UB, machine-specific (x64 SSE4.2) metrohash128crc_2 -8016.22 -78.59 -274.52 (5) +7878.22 +79.90 +275.22 (4) 723 UB, machine-specific (x64 SSE4.2) xxHash64 -12226.39 -49.20 -236.97 (5) +12108.87 +49.78 +228.83 (2) 1999 Spooky32 -13122.35 -56.13 -260.40 (5) +13108.95 +56.27 +255.36 (3) 2221 UB Spooky64 -13340.58 -55.22 -250.99 (5) +13529.36 +58.76 +236.31 (3) 2221 UB Spooky128 -13119.47 -58.89 -250.41 (6) +11781.35 +58.91 +242.91 (3) 2221 UB SpookyV2_32 -13326.98 -56.54 -261.84 (4) +13529.16 +55.55 +248.37 (4) 2069 SpookyV2_64 -13104.98 -57.54 -252.86 (7) +12678.82 +56.71 +243.21 (4) 2069 SpookyV2_128 -13316.09 -59.19 -252.60 (5) +13512.82 +58.33 +244.56 (5) 2069 t1ha2_atonce -13926.52 -37.70 -245.33 (6) +13854.44 +37.92 +233.54 (2) 541 t1ha2_atonce128 -13854.28 -57.06 -266.53 (4) +14148.42 +55.70 +253.74 (6) 613 LongNeighbors t1ha0_aes_noavx -27527.84 -37.23 -245.10 (6) +27231.59 +37.70 +236.10 (3) 925 LongNeighbors, machine-specific (x86 AES-NI) t1ha0_aes_avx1 -27198.29 -37.67 -245.23 (5) +27691.11 +36.98 +246.83 (3) 843 LongNeighbors, machine-specific (x64 AVX) t1ha0_aes_avx2 -55655.02 -37.25 -258.23 (5) +56919.46 +36.70 +233.14 (2) 792 LongNeighbors, machine-specific (x64 AVX2) @@ -1553,57 +1553,57 @@

SMhasher

xxh3 -20383.53 -30.79 -237.87 (6) +21033.55 +29.48 +226.77 (4) 744 Moment Chi2 14974, BIC xxh3low -20722.94 -30.26 -256.34 (7) +17093.19 +30.57 +242.07 (7) 756 Moment Chi2 1.8e+9 ! xxh128 -18819.68 -32.66 -256.52 (4) +18802.16 +32.37 +234.30 (4) 1012 Moment Chi2 14974 xxh128low -19043.36 -31.99 -250.40 (6) +18833.05 +32.30 +234.68 (3) 1012 Moment Chi2 14974, BIC MeowHash -29521.98 -65.83 -287.28 (4) +29969.40 +64.96 +274.29 (4) 1764 Sparse low32, machine-specific (x64 AES-NI) MeowHash32low -30002.99 -64.81 -297.76 (6) +26944.58 +65.95 +292.79 (9) 1764 Sparse, machine-specific (x64 AES-NI) wyhash -22513.04 -29.01 -228.76 (5) +23254.03 +28.47 +216.10 (3) 474 @@ -1617,121 +1617,121 @@

SMhasher

wyhash32low -22895.72 +22892.78 28.87 -260.96 (6) +242.56 (4) 474 12 bad and broken seeds umash32 -22373.83 -41.98 -257.19 (6) +21427.57 +42.12 +255.55 (5) 1530 umash32_hi -22935.43 -42.16 -257.93 (5) +21483.12 +42.65 +251.09 (4) 1530 umash64 -22695.69 -42.02 -246.91 (5) +21690.08 +41.67 +238.01 (4) 1530 umash128 -13024.01 -42.98 -242.48 (4) +13211.88 +43.37 +237.40 (3) 1530 halftime_hash64 -4765.33 -99.67 -324.58 (4) +4735.63 +99.90 +315.34 (3) 1530 halftime_hash128 -17545.03 -98.17 -322.50 (5) +17534.53 +97.97 +311.10 (4) 1530 halftime_hash256 -18018.00 -99.86 -326.90 (4) +18003.39 +99.46 +315.09 (3) 1530 halftime_hash512 -10894.15 -118.66 -335.38 (5) +10890.15 +118.05 +333.45 (3) 1530 nmhash32 -12785.12 -56.66 -271.67 (4) +12969.62 +55.88 +265.69 (4) 2445 nmhash32x -12702.23 -42.94 -261.02 (5) +12775.08 +42.66 +246.05 (3) 1494 k-hashv32 -9044.40 -53.38 -259.25 (5) +9181.87 +52.76 +245.14 (3) 1280 k-hashv64 -8990.40 -53.01 -243.54 (7) +9035.05 +52.98 +232.38 (2) 1279 komihash -12129.93 -33.38 -237.97 (3) +12191.22 +33.19 +230.67 (3) 1323 polymur -9515.85 -43.20 -247.34 (8) +9676.33 +42.70 +246.53 (3) 1128 diff --git a/doc/tabulation.txt b/doc/tabulation.txt index 7e950dce..da00e4cb 100644 --- a/doc/tabulation.txt +++ b/doc/tabulation.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 2.767 bytes/cycle - 7917.68 MiB/sec @ 3 ghz -Alignment 6 - 2.769 bytes/cycle - 7922.41 MiB/sec @ 3 ghz -Alignment 5 - 2.739 bytes/cycle - 7837.20 MiB/sec @ 3 ghz -Alignment 4 - 2.767 bytes/cycle - 7917.16 MiB/sec @ 3 ghz -Alignment 3 - 2.767 bytes/cycle - 7916.63 MiB/sec @ 3 ghz -Alignment 2 - 2.766 bytes/cycle - 7914.74 MiB/sec @ 3 ghz -Alignment 1 - 2.764 bytes/cycle - 7907.91 MiB/sec @ 3 ghz -Alignment 0 - 2.764 bytes/cycle - 7907.23 MiB/sec @ 3 ghz -Average - 2.763 bytes/cycle - 7905.12 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 34.02 cycles/hash -Small key speed test - 2-byte keys - 35.15 cycles/hash -Small key speed test - 3-byte keys - 37.39 cycles/hash -Small key speed test - 4-byte keys - 33.85 cycles/hash -Small key speed test - 5-byte keys - 35.49 cycles/hash -Small key speed test - 6-byte keys - 35.25 cycles/hash -Small key speed test - 7-byte keys - 37.00 cycles/hash -Small key speed test - 8-byte keys - 33.84 cycles/hash -Small key speed test - 9-byte keys - 37.49 cycles/hash -Small key speed test - 10-byte keys - 36.80 cycles/hash -Small key speed test - 11-byte keys - 39.43 cycles/hash -Small key speed test - 12-byte keys - 36.25 cycles/hash -Small key speed test - 13-byte keys - 39.56 cycles/hash -Small key speed test - 14-byte keys - 38.38 cycles/hash -Small key speed test - 15-byte keys - 40.54 cycles/hash -Small key speed test - 16-byte keys - 36.00 cycles/hash -Small key speed test - 17-byte keys - 40.97 cycles/hash -Small key speed test - 18-byte keys - 40.15 cycles/hash -Small key speed test - 19-byte keys - 42.96 cycles/hash -Small key speed test - 20-byte keys - 38.98 cycles/hash -Small key speed test - 21-byte keys - 42.14 cycles/hash -Small key speed test - 22-byte keys - 41.76 cycles/hash -Small key speed test - 23-byte keys - 43.91 cycles/hash -Small key speed test - 24-byte keys - 38.97 cycles/hash -Small key speed test - 25-byte keys - 44.50 cycles/hash -Small key speed test - 26-byte keys - 43.89 cycles/hash -Small key speed test - 27-byte keys - 43.99 cycles/hash -Small key speed test - 28-byte keys - 43.28 cycles/hash -Small key speed test - 29-byte keys - 45.00 cycles/hash -Small key speed test - 30-byte keys - 44.55 cycles/hash -Small key speed test - 31-byte keys - 47.37 cycles/hash -Average 39.640 cycles/hash +Alignment 7 - 2.754 bytes/cycle - 7879.93 MiB/sec @ 3 ghz +Alignment 6 - 2.750 bytes/cycle - 7867.09 MiB/sec @ 3 ghz +Alignment 5 - 2.750 bytes/cycle - 7867.14 MiB/sec @ 3 ghz +Alignment 4 - 2.750 bytes/cycle - 7867.74 MiB/sec @ 3 ghz +Alignment 3 - 2.750 bytes/cycle - 7866.79 MiB/sec @ 3 ghz +Alignment 2 - 2.763 bytes/cycle - 7906.26 MiB/sec @ 3 ghz +Alignment 1 - 2.753 bytes/cycle - 7875.83 MiB/sec @ 3 ghz +Alignment 0 - 2.751 bytes/cycle - 7869.33 MiB/sec @ 3 ghz +Average - 2.753 bytes/cycle - 7875.01 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 34.20 cycles/hash +Small key speed test - 2-byte keys - 35.27 cycles/hash +Small key speed test - 3-byte keys - 37.00 cycles/hash +Small key speed test - 4-byte keys - 33.97 cycles/hash +Small key speed test - 5-byte keys - 35.89 cycles/hash +Small key speed test - 6-byte keys - 35.46 cycles/hash +Small key speed test - 7-byte keys - 37.65 cycles/hash +Small key speed test - 8-byte keys - 34.10 cycles/hash +Small key speed test - 9-byte keys - 37.92 cycles/hash +Small key speed test - 10-byte keys - 37.00 cycles/hash +Small key speed test - 11-byte keys - 39.95 cycles/hash +Small key speed test - 12-byte keys - 36.81 cycles/hash +Small key speed test - 13-byte keys - 39.99 cycles/hash +Small key speed test - 14-byte keys - 38.92 cycles/hash +Small key speed test - 15-byte keys - 40.99 cycles/hash +Small key speed test - 16-byte keys - 36.80 cycles/hash +Small key speed test - 17-byte keys - 40.99 cycles/hash +Small key speed test - 18-byte keys - 40.25 cycles/hash +Small key speed test - 19-byte keys - 43.15 cycles/hash +Small key speed test - 20-byte keys - 39.00 cycles/hash +Small key speed test - 21-byte keys - 42.30 cycles/hash +Small key speed test - 22-byte keys - 41.91 cycles/hash +Small key speed test - 23-byte keys - 44.00 cycles/hash +Small key speed test - 24-byte keys - 39.12 cycles/hash +Small key speed test - 25-byte keys - 44.86 cycles/hash +Small key speed test - 26-byte keys - 44.19 cycles/hash +Small key speed test - 27-byte keys - 44.79 cycles/hash +Small key speed test - 28-byte keys - 43.70 cycles/hash +Small key speed test - 29-byte keys - 45.57 cycles/hash +Small key speed test - 30-byte keys - 45.02 cycles/hash +Small key speed test - 31-byte keys - 47.65 cycles/hash +Average 39.949 cycles/hash [[[ 'Hashmap' Speed Tests ]]] diff --git a/doc/tabulation32.txt b/doc/tabulation32.txt index 924076a4..9af45baa 100644 --- a/doc/tabulation32.txt +++ b/doc/tabulation32.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 2.477 bytes/cycle - 7087.01 MiB/sec @ 3 ghz -Alignment 6 - 2.477 bytes/cycle - 7086.70 MiB/sec @ 3 ghz -Alignment 5 - 2.476 bytes/cycle - 7083.93 MiB/sec @ 3 ghz -Alignment 4 - 2.478 bytes/cycle - 7091.03 MiB/sec @ 3 ghz -Alignment 3 - 2.477 bytes/cycle - 7086.85 MiB/sec @ 3 ghz -Alignment 2 - 2.479 bytes/cycle - 7092.57 MiB/sec @ 3 ghz -Alignment 1 - 2.479 bytes/cycle - 7092.02 MiB/sec @ 3 ghz -Alignment 0 - 2.478 bytes/cycle - 7090.88 MiB/sec @ 3 ghz -Average - 2.478 bytes/cycle - 7088.87 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 23.00 cycles/hash -Small key speed test - 2-byte keys - 22.64 cycles/hash -Small key speed test - 3-byte keys - 23.00 cycles/hash -Small key speed test - 4-byte keys - 22.58 cycles/hash -Small key speed test - 5-byte keys - 22.00 cycles/hash -Small key speed test - 6-byte keys - 22.51 cycles/hash -Small key speed test - 7-byte keys - 22.00 cycles/hash -Small key speed test - 8-byte keys - 22.00 cycles/hash -Small key speed test - 9-byte keys - 23.00 cycles/hash -Small key speed test - 10-byte keys - 23.00 cycles/hash -Small key speed test - 11-byte keys - 23.00 cycles/hash -Small key speed test - 12-byte keys - 23.98 cycles/hash -Small key speed test - 13-byte keys - 24.00 cycles/hash -Small key speed test - 14-byte keys - 24.00 cycles/hash -Small key speed test - 15-byte keys - 23.99 cycles/hash -Small key speed test - 16-byte keys - 24.00 cycles/hash -Small key speed test - 17-byte keys - 25.00 cycles/hash -Small key speed test - 18-byte keys - 25.23 cycles/hash -Small key speed test - 19-byte keys - 25.78 cycles/hash -Small key speed test - 20-byte keys - 24.98 cycles/hash -Small key speed test - 21-byte keys - 26.00 cycles/hash -Small key speed test - 22-byte keys - 26.00 cycles/hash -Small key speed test - 23-byte keys - 26.00 cycles/hash -Small key speed test - 24-byte keys - 46.00 cycles/hash -Small key speed test - 25-byte keys - 45.99 cycles/hash -Small key speed test - 26-byte keys - 47.20 cycles/hash -Small key speed test - 27-byte keys - 46.48 cycles/hash -Small key speed test - 28-byte keys - 46.00 cycles/hash -Small key speed test - 29-byte keys - 47.00 cycles/hash -Small key speed test - 30-byte keys - 47.00 cycles/hash -Small key speed test - 31-byte keys - 47.27 cycles/hash -Average 29.698 cycles/hash +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 ]]] diff --git a/doc/tifuhash_64.txt b/doc/tifuhash_64.txt index a6cd6756..54723d5c 100644 --- a/doc/tifuhash_64.txt +++ b/doc/tifuhash_64.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 0.013 bytes/cycle - 35.83 MiB/sec @ 3 ghz -Alignment 6 - 0.013 bytes/cycle - 35.83 MiB/sec @ 3 ghz -Alignment 5 - 0.013 bytes/cycle - 35.83 MiB/sec @ 3 ghz -Alignment 4 - 0.013 bytes/cycle - 35.86 MiB/sec @ 3 ghz -Alignment 3 - 0.013 bytes/cycle - 35.83 MiB/sec @ 3 ghz -Alignment 2 - 0.013 bytes/cycle - 35.83 MiB/sec @ 3 ghz -Alignment 1 - 0.013 bytes/cycle - 35.83 MiB/sec @ 3 ghz -Alignment 0 - 0.013 bytes/cycle - 35.83 MiB/sec @ 3 ghz -Average - 0.013 bytes/cycle - 35.83 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 357.97 cycles/hash -Small key speed test - 2-byte keys - 437.00 cycles/hash -Small key speed test - 3-byte keys - 516.98 cycles/hash -Small key speed test - 4-byte keys - 597.43 cycles/hash -Small key speed test - 5-byte keys - 677.00 cycles/hash -Small key speed test - 6-byte keys - 756.00 cycles/hash -Small key speed test - 7-byte keys - 835.85 cycles/hash -Small key speed test - 8-byte keys - 915.00 cycles/hash -Small key speed test - 9-byte keys - 994.98 cycles/hash -Small key speed test - 10-byte keys - 1074.84 cycles/hash -Small key speed test - 11-byte keys - 1154.00 cycles/hash -Small key speed test - 12-byte keys - 1234.00 cycles/hash -Small key speed test - 13-byte keys - 1313.96 cycles/hash -Small key speed test - 14-byte keys - 1393.40 cycles/hash -Small key speed test - 15-byte keys - 1473.00 cycles/hash -Small key speed test - 16-byte keys - 1552.91 cycles/hash -Small key speed test - 17-byte keys - 1632.62 cycles/hash -Small key speed test - 18-byte keys - 1712.29 cycles/hash -Small key speed test - 19-byte keys - 1792.00 cycles/hash -Small key speed test - 20-byte keys - 1871.95 cycles/hash -Small key speed test - 21-byte keys - 1951.47 cycles/hash -Small key speed test - 22-byte keys - 2031.00 cycles/hash -Small key speed test - 23-byte keys - 2110.89 cycles/hash -Small key speed test - 24-byte keys - 2190.45 cycles/hash -Small key speed test - 25-byte keys - 2270.00 cycles/hash -Small key speed test - 26-byte keys - 2349.99 cycles/hash -Small key speed test - 27-byte keys - 2429.91 cycles/hash -Small key speed test - 28-byte keys - 2509.48 cycles/hash -Small key speed test - 29-byte keys - 2589.00 cycles/hash -Small key speed test - 30-byte keys - 2668.88 cycles/hash -Small key speed test - 31-byte keys - 2748.44 cycles/hash -Average 1552.989 cycles/hash +Alignment 7 - 0.056 bytes/cycle - 161.62 MiB/sec @ 3 ghz +Alignment 6 - 0.056 bytes/cycle - 161.62 MiB/sec @ 3 ghz +Alignment 5 - 0.056 bytes/cycle - 161.62 MiB/sec @ 3 ghz +Alignment 4 - 0.057 bytes/cycle - 161.66 MiB/sec @ 3 ghz +Alignment 3 - 0.057 bytes/cycle - 161.68 MiB/sec @ 3 ghz +Alignment 2 - 0.057 bytes/cycle - 161.72 MiB/sec @ 3 ghz +Alignment 1 - 0.057 bytes/cycle - 161.72 MiB/sec @ 3 ghz +Alignment 0 - 0.057 bytes/cycle - 161.92 MiB/sec @ 3 ghz +Average - 0.057 bytes/cycle - 161.70 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 224.55 cycles/hash +Small key speed test - 2-byte keys - 237.21 cycles/hash +Small key speed test - 3-byte keys - 261.73 cycles/hash +Small key speed test - 4-byte keys - 277.45 cycles/hash +Small key speed test - 5-byte keys - 291.43 cycles/hash +Small key speed test - 6-byte keys - 310.35 cycles/hash +Small key speed test - 7-byte keys - 328.31 cycles/hash +Small key speed test - 8-byte keys - 345.28 cycles/hash +Small key speed test - 9-byte keys - 361.20 cycles/hash +Small key speed test - 10-byte keys - 379.11 cycles/hash +Small key speed test - 11-byte keys - 397.12 cycles/hash +Small key speed test - 12-byte keys - 413.42 cycles/hash +Small key speed test - 13-byte keys - 431.10 cycles/hash +Small key speed test - 14-byte keys - 451.00 cycles/hash +Small key speed test - 15-byte keys - 467.54 cycles/hash +Small key speed test - 16-byte keys - 487.04 cycles/hash +Small key speed test - 17-byte keys - 503.47 cycles/hash +Small key speed test - 18-byte keys - 520.41 cycles/hash +Small key speed test - 19-byte keys - 537.81 cycles/hash +Small key speed test - 20-byte keys - 554.51 cycles/hash +Small key speed test - 21-byte keys - 572.75 cycles/hash +Small key speed test - 22-byte keys - 589.75 cycles/hash +Small key speed test - 23-byte keys - 609.83 cycles/hash +Small key speed test - 24-byte keys - 626.33 cycles/hash +Small key speed test - 25-byte keys - 645.59 cycles/hash +Small key speed test - 26-byte keys - 663.25 cycles/hash +Small key speed test - 27-byte keys - 681.16 cycles/hash +Small key speed test - 28-byte keys - 697.72 cycles/hash +Small key speed test - 29-byte keys - 715.97 cycles/hash +Small key speed test - 30-byte keys - 732.52 cycles/hash +Small key speed test - 31-byte keys - 751.34 cycles/hash +Average 486.009 cycles/hash [[[ 'Hashmap' Speed Tests ]]] diff --git a/doc/umash128.txt b/doc/umash128.txt index 297c01b0..7435e0d4 100644 --- a/doc/umash128.txt +++ b/doc/umash128.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 0.823 bytes/cycle - 2354.38 MiB/sec @ 3 ghz -Alignment 6 - 0.823 bytes/cycle - 2354.31 MiB/sec @ 3 ghz -Alignment 5 - 0.823 bytes/cycle - 2354.39 MiB/sec @ 3 ghz -Alignment 4 - 0.823 bytes/cycle - 2354.40 MiB/sec @ 3 ghz -Alignment 3 - 0.823 bytes/cycle - 2354.35 MiB/sec @ 3 ghz -Alignment 2 - 0.823 bytes/cycle - 2354.37 MiB/sec @ 3 ghz -Alignment 1 - 0.823 bytes/cycle - 2354.34 MiB/sec @ 3 ghz -Alignment 0 - 0.830 bytes/cycle - 2374.61 MiB/sec @ 3 ghz -Average - 0.824 bytes/cycle - 2356.89 MiB/sec @ 3 ghz +Alignment 7 - 4.619 bytes/cycle - 13214.95 MiB/sec @ 3 ghz +Alignment 6 - 4.618 bytes/cycle - 13211.90 MiB/sec @ 3 ghz +Alignment 5 - 4.615 bytes/cycle - 13203.34 MiB/sec @ 3 ghz +Alignment 4 - 4.619 bytes/cycle - 13215.76 MiB/sec @ 3 ghz +Alignment 3 - 4.618 bytes/cycle - 13212.23 MiB/sec @ 3 ghz +Alignment 2 - 4.619 bytes/cycle - 13213.69 MiB/sec @ 3 ghz +Alignment 1 - 4.617 bytes/cycle - 13208.59 MiB/sec @ 3 ghz +Alignment 0 - 4.619 bytes/cycle - 13214.60 MiB/sec @ 3 ghz +Average - 4.618 bytes/cycle - 13211.88 MiB/sec @ 3 ghz Small key speed test - 1-byte keys - 32.00 cycles/hash -Small key speed test - 2-byte keys - 34.00 cycles/hash -Small key speed test - 3-byte keys - 34.00 cycles/hash -Small key speed test - 4-byte keys - 34.00 cycles/hash -Small key speed test - 5-byte keys - 45.00 cycles/hash -Small key speed test - 6-byte keys - 45.00 cycles/hash -Small key speed test - 7-byte keys - 45.00 cycles/hash -Small key speed test - 8-byte keys - 33.64 cycles/hash -Small key speed test - 9-byte keys - 82.00 cycles/hash -Small key speed test - 10-byte keys - 82.00 cycles/hash -Small key speed test - 11-byte keys - 82.00 cycles/hash -Small key speed test - 12-byte keys - 82.00 cycles/hash -Small key speed test - 13-byte keys - 82.12 cycles/hash -Small key speed test - 14-byte keys - 82.00 cycles/hash -Small key speed test - 15-byte keys - 82.12 cycles/hash -Small key speed test - 16-byte keys - 82.00 cycles/hash -Small key speed test - 17-byte keys - 97.90 cycles/hash -Small key speed test - 18-byte keys - 97.90 cycles/hash -Small key speed test - 19-byte keys - 97.90 cycles/hash -Small key speed test - 20-byte keys - 99.33 cycles/hash -Small key speed test - 21-byte keys - 98.01 cycles/hash -Small key speed test - 22-byte keys - 97.91 cycles/hash -Small key speed test - 23-byte keys - 97.89 cycles/hash -Small key speed test - 24-byte keys - 97.91 cycles/hash -Small key speed test - 25-byte keys - 97.90 cycles/hash -Small key speed test - 26-byte keys - 97.90 cycles/hash -Small key speed test - 27-byte keys - 97.92 cycles/hash -Small key speed test - 28-byte keys - 97.89 cycles/hash -Small key speed test - 29-byte keys - 97.91 cycles/hash -Small key speed test - 30-byte keys - 97.91 cycles/hash -Small key speed test - 31-byte keys - 97.90 cycles/hash -Average 78.354 cycles/hash +Small key speed test - 2-byte keys - 32.00 cycles/hash +Small key speed test - 3-byte keys - 32.00 cycles/hash +Small key speed test - 4-byte keys - 29.75 cycles/hash +Small key speed test - 5-byte keys - 29.69 cycles/hash +Small key speed test - 6-byte keys - 29.87 cycles/hash +Small key speed test - 7-byte keys - 29.70 cycles/hash +Small key speed test - 8-byte keys - 29.67 cycles/hash +Small key speed test - 9-byte keys - 41.00 cycles/hash +Small key speed test - 10-byte keys - 41.00 cycles/hash +Small key speed test - 11-byte keys - 41.00 cycles/hash +Small key speed test - 12-byte keys - 40.99 cycles/hash +Small key speed test - 13-byte keys - 40.99 cycles/hash +Small key speed test - 14-byte keys - 40.99 cycles/hash +Small key speed test - 15-byte keys - 40.99 cycles/hash +Small key speed test - 16-byte keys - 40.99 cycles/hash +Small key speed test - 17-byte keys - 50.98 cycles/hash +Small key speed test - 18-byte keys - 51.00 cycles/hash +Small key speed test - 19-byte keys - 50.91 cycles/hash +Small key speed test - 20-byte keys - 51.03 cycles/hash +Small key speed test - 21-byte keys - 51.62 cycles/hash +Small key speed test - 22-byte keys - 51.61 cycles/hash +Small key speed test - 23-byte keys - 51.59 cycles/hash +Small key speed test - 24-byte keys - 51.57 cycles/hash +Small key speed test - 25-byte keys - 51.79 cycles/hash +Small key speed test - 26-byte keys - 51.78 cycles/hash +Small key speed test - 27-byte keys - 51.68 cycles/hash +Small key speed test - 28-byte keys - 51.62 cycles/hash +Small key speed test - 29-byte keys - 51.54 cycles/hash +Small key speed test - 30-byte keys - 51.58 cycles/hash +Small key speed test - 31-byte keys - 51.58 cycles/hash +Average 43.371 cycles/hash [[[ 'Hashmap' Speed Tests ]]] diff --git a/doc/umash32.txt b/doc/umash32.txt index fe2bc338..dd5d1845 100644 --- a/doc/umash32.txt +++ b/doc/umash32.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 1.600 bytes/cycle - 4576.96 MiB/sec @ 3 ghz -Alignment 6 - 1.600 bytes/cycle - 4577.02 MiB/sec @ 3 ghz -Alignment 5 - 1.600 bytes/cycle - 4577.08 MiB/sec @ 3 ghz -Alignment 4 - 1.600 bytes/cycle - 4577.00 MiB/sec @ 3 ghz -Alignment 3 - 1.600 bytes/cycle - 4576.97 MiB/sec @ 3 ghz -Alignment 2 - 1.600 bytes/cycle - 4577.12 MiB/sec @ 3 ghz -Alignment 1 - 1.600 bytes/cycle - 4577.16 MiB/sec @ 3 ghz -Alignment 0 - 1.681 bytes/cycle - 4810.60 MiB/sec @ 3 ghz -Average - 1.610 bytes/cycle - 4606.24 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 26.00 cycles/hash -Small key speed test - 2-byte keys - 28.00 cycles/hash -Small key speed test - 3-byte keys - 28.29 cycles/hash -Small key speed test - 4-byte keys - 28.00 cycles/hash -Small key speed test - 5-byte keys - 39.00 cycles/hash -Small key speed test - 6-byte keys - 39.00 cycles/hash -Small key speed test - 7-byte keys - 39.00 cycles/hash -Small key speed test - 8-byte keys - 27.00 cycles/hash -Small key speed test - 9-byte keys - 60.44 cycles/hash -Small key speed test - 10-byte keys - 60.70 cycles/hash -Small key speed test - 11-byte keys - 60.43 cycles/hash -Small key speed test - 12-byte keys - 58.00 cycles/hash -Small key speed test - 13-byte keys - 58.00 cycles/hash -Small key speed test - 14-byte keys - 58.00 cycles/hash -Small key speed test - 15-byte keys - 58.00 cycles/hash -Small key speed test - 16-byte keys - 58.00 cycles/hash -Small key speed test - 17-byte keys - 69.00 cycles/hash -Small key speed test - 18-byte keys - 69.40 cycles/hash -Small key speed test - 19-byte keys - 69.00 cycles/hash -Small key speed test - 20-byte keys - 68.22 cycles/hash -Small key speed test - 21-byte keys - 68.19 cycles/hash -Small key speed test - 22-byte keys - 68.00 cycles/hash -Small key speed test - 23-byte keys - 68.16 cycles/hash -Small key speed test - 24-byte keys - 67.50 cycles/hash -Small key speed test - 25-byte keys - 67.55 cycles/hash -Small key speed test - 26-byte keys - 67.57 cycles/hash -Small key speed test - 27-byte keys - 67.55 cycles/hash -Small key speed test - 28-byte keys - 67.54 cycles/hash -Small key speed test - 29-byte keys - 67.57 cycles/hash -Small key speed test - 30-byte keys - 67.57 cycles/hash -Small key speed test - 31-byte keys - 67.58 cycles/hash -Average 56.330 cycles/hash +Alignment 7 - 7.477 bytes/cycle - 21390.73 MiB/sec @ 3 ghz +Alignment 6 - 7.491 bytes/cycle - 21431.15 MiB/sec @ 3 ghz +Alignment 5 - 7.491 bytes/cycle - 21430.96 MiB/sec @ 3 ghz +Alignment 4 - 7.491 bytes/cycle - 21430.74 MiB/sec @ 3 ghz +Alignment 3 - 7.483 bytes/cycle - 21408.34 MiB/sec @ 3 ghz +Alignment 2 - 7.493 bytes/cycle - 21436.32 MiB/sec @ 3 ghz +Alignment 1 - 7.494 bytes/cycle - 21439.70 MiB/sec @ 3 ghz +Alignment 0 - 7.498 bytes/cycle - 21452.59 MiB/sec @ 3 ghz +Average - 7.489 bytes/cycle - 21427.57 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 30.00 cycles/hash +Small key speed test - 2-byte keys - 30.00 cycles/hash +Small key speed test - 3-byte keys - 30.00 cycles/hash +Small key speed test - 4-byte keys - 29.12 cycles/hash +Small key speed test - 5-byte keys - 29.12 cycles/hash +Small key speed test - 6-byte keys - 29.00 cycles/hash +Small key speed test - 7-byte keys - 29.00 cycles/hash +Small key speed test - 8-byte keys - 29.00 cycles/hash +Small key speed test - 9-byte keys - 39.00 cycles/hash +Small key speed test - 10-byte keys - 39.43 cycles/hash +Small key speed test - 11-byte keys - 39.50 cycles/hash +Small key speed test - 12-byte keys - 39.34 cycles/hash +Small key speed test - 13-byte keys - 39.42 cycles/hash +Small key speed test - 14-byte keys - 39.42 cycles/hash +Small key speed test - 15-byte keys - 39.57 cycles/hash +Small key speed test - 16-byte keys - 39.55 cycles/hash +Small key speed test - 17-byte keys - 50.04 cycles/hash +Small key speed test - 18-byte keys - 49.96 cycles/hash +Small key speed test - 19-byte keys - 50.13 cycles/hash +Small key speed test - 20-byte keys - 49.97 cycles/hash +Small key speed test - 21-byte keys - 50.47 cycles/hash +Small key speed test - 22-byte keys - 50.47 cycles/hash +Small key speed test - 23-byte keys - 50.47 cycles/hash +Small key speed test - 24-byte keys - 50.48 cycles/hash +Small key speed test - 25-byte keys - 50.42 cycles/hash +Small key speed test - 26-byte keys - 50.43 cycles/hash +Small key speed test - 27-byte keys - 50.43 cycles/hash +Small key speed test - 28-byte keys - 50.47 cycles/hash +Small key speed test - 29-byte keys - 50.47 cycles/hash +Small key speed test - 30-byte keys - 50.47 cycles/hash +Small key speed test - 31-byte keys - 50.48 cycles/hash +Average 42.118 cycles/hash [[[ 'Hashmap' Speed Tests ]]] diff --git a/doc/umash32_hi.txt b/doc/umash32_hi.txt index 1e9fd292..5b55af7a 100644 --- a/doc/umash32_hi.txt +++ b/doc/umash32_hi.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 1.637 bytes/cycle - 4684.37 MiB/sec @ 3 ghz -Alignment 6 - 1.637 bytes/cycle - 4684.41 MiB/sec @ 3 ghz -Alignment 5 - 1.637 bytes/cycle - 4684.34 MiB/sec @ 3 ghz -Alignment 4 - 1.637 bytes/cycle - 4684.04 MiB/sec @ 3 ghz -Alignment 3 - 1.637 bytes/cycle - 4684.53 MiB/sec @ 3 ghz -Alignment 2 - 1.637 bytes/cycle - 4684.46 MiB/sec @ 3 ghz -Alignment 1 - 1.637 bytes/cycle - 4684.57 MiB/sec @ 3 ghz -Alignment 0 - 1.700 bytes/cycle - 4865.07 MiB/sec @ 3 ghz -Average - 1.645 bytes/cycle - 4706.97 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 27.00 cycles/hash -Small key speed test - 2-byte keys - 29.00 cycles/hash -Small key speed test - 3-byte keys - 29.00 cycles/hash -Small key speed test - 4-byte keys - 29.00 cycles/hash -Small key speed test - 5-byte keys - 39.00 cycles/hash -Small key speed test - 6-byte keys - 39.00 cycles/hash -Small key speed test - 7-byte keys - 39.00 cycles/hash -Small key speed test - 8-byte keys - 28.00 cycles/hash -Small key speed test - 9-byte keys - 61.00 cycles/hash -Small key speed test - 10-byte keys - 61.00 cycles/hash -Small key speed test - 11-byte keys - 61.00 cycles/hash -Small key speed test - 12-byte keys - 59.00 cycles/hash -Small key speed test - 13-byte keys - 59.00 cycles/hash -Small key speed test - 14-byte keys - 59.00 cycles/hash -Small key speed test - 15-byte keys - 59.00 cycles/hash -Small key speed test - 16-byte keys - 59.00 cycles/hash -Small key speed test - 17-byte keys - 69.88 cycles/hash -Small key speed test - 18-byte keys - 69.86 cycles/hash -Small key speed test - 19-byte keys - 69.88 cycles/hash -Small key speed test - 20-byte keys - 68.82 cycles/hash -Small key speed test - 21-byte keys - 68.87 cycles/hash -Small key speed test - 22-byte keys - 68.88 cycles/hash -Small key speed test - 23-byte keys - 68.87 cycles/hash -Small key speed test - 24-byte keys - 67.72 cycles/hash -Small key speed test - 25-byte keys - 67.11 cycles/hash -Small key speed test - 26-byte keys - 67.13 cycles/hash -Small key speed test - 27-byte keys - 67.14 cycles/hash -Small key speed test - 28-byte keys - 67.22 cycles/hash -Small key speed test - 29-byte keys - 67.00 cycles/hash -Small key speed test - 30-byte keys - 67.14 cycles/hash -Small key speed test - 31-byte keys - 67.14 cycles/hash -Average 56.763 cycles/hash +Alignment 7 - 7.491 bytes/cycle - 21432.29 MiB/sec @ 3 ghz +Alignment 6 - 7.509 bytes/cycle - 21482.14 MiB/sec @ 3 ghz +Alignment 5 - 7.509 bytes/cycle - 21482.35 MiB/sec @ 3 ghz +Alignment 4 - 7.506 bytes/cycle - 21474.84 MiB/sec @ 3 ghz +Alignment 3 - 7.508 bytes/cycle - 21479.13 MiB/sec @ 3 ghz +Alignment 2 - 7.530 bytes/cycle - 21544.38 MiB/sec @ 3 ghz +Alignment 1 - 7.504 bytes/cycle - 21469.69 MiB/sec @ 3 ghz +Alignment 0 - 7.515 bytes/cycle - 21500.13 MiB/sec @ 3 ghz +Average - 7.509 bytes/cycle - 21483.12 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 31.00 cycles/hash +Small key speed test - 2-byte keys - 31.00 cycles/hash +Small key speed test - 3-byte keys - 31.00 cycles/hash +Small key speed test - 4-byte keys - 30.00 cycles/hash +Small key speed test - 5-byte keys - 29.86 cycles/hash +Small key speed test - 6-byte keys - 29.86 cycles/hash +Small key speed test - 7-byte keys - 30.00 cycles/hash +Small key speed test - 8-byte keys - 30.00 cycles/hash +Small key speed test - 9-byte keys - 40.26 cycles/hash +Small key speed test - 10-byte keys - 40.00 cycles/hash +Small key speed test - 11-byte keys - 40.46 cycles/hash +Small key speed test - 12-byte keys - 40.00 cycles/hash +Small key speed test - 13-byte keys - 40.30 cycles/hash +Small key speed test - 14-byte keys - 40.43 cycles/hash +Small key speed test - 15-byte keys - 40.43 cycles/hash +Small key speed test - 16-byte keys - 40.59 cycles/hash +Small key speed test - 17-byte keys - 50.06 cycles/hash +Small key speed test - 18-byte keys - 50.43 cycles/hash +Small key speed test - 19-byte keys - 50.20 cycles/hash +Small key speed test - 20-byte keys - 50.37 cycles/hash +Small key speed test - 21-byte keys - 50.52 cycles/hash +Small key speed test - 22-byte keys - 50.53 cycles/hash +Small key speed test - 23-byte keys - 50.53 cycles/hash +Small key speed test - 24-byte keys - 50.53 cycles/hash +Small key speed test - 25-byte keys - 50.52 cycles/hash +Small key speed test - 26-byte keys - 50.52 cycles/hash +Small key speed test - 27-byte keys - 50.52 cycles/hash +Small key speed test - 28-byte keys - 50.57 cycles/hash +Small key speed test - 29-byte keys - 50.57 cycles/hash +Small key speed test - 30-byte keys - 50.57 cycles/hash +Small key speed test - 31-byte keys - 50.61 cycles/hash +Average 42.652 cycles/hash [[[ 'Hashmap' Speed Tests ]]] diff --git a/doc/umash64.txt b/doc/umash64.txt index 8bd53c48..f8fc3fb2 100644 --- a/doc/umash64.txt +++ b/doc/umash64.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 1.552 bytes/cycle - 4439.27 MiB/sec @ 3 ghz -Alignment 6 - 1.552 bytes/cycle - 4439.10 MiB/sec @ 3 ghz -Alignment 5 - 1.552 bytes/cycle - 4439.55 MiB/sec @ 3 ghz -Alignment 4 - 1.552 bytes/cycle - 4438.99 MiB/sec @ 3 ghz -Alignment 3 - 1.552 bytes/cycle - 4439.19 MiB/sec @ 3 ghz -Alignment 2 - 1.552 bytes/cycle - 4439.13 MiB/sec @ 3 ghz -Alignment 1 - 1.552 bytes/cycle - 4439.79 MiB/sec @ 3 ghz -Alignment 0 - 1.630 bytes/cycle - 4663.68 MiB/sec @ 3 ghz -Average - 1.561 bytes/cycle - 4467.34 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 27.00 cycles/hash -Small key speed test - 2-byte keys - 29.00 cycles/hash -Small key speed test - 3-byte keys - 29.00 cycles/hash +Alignment 7 - 7.556 bytes/cycle - 21618.38 MiB/sec @ 3 ghz +Alignment 6 - 7.579 bytes/cycle - 21684.10 MiB/sec @ 3 ghz +Alignment 5 - 7.586 bytes/cycle - 21704.24 MiB/sec @ 3 ghz +Alignment 4 - 7.585 bytes/cycle - 21700.85 MiB/sec @ 3 ghz +Alignment 3 - 7.584 bytes/cycle - 21697.64 MiB/sec @ 3 ghz +Alignment 2 - 7.585 bytes/cycle - 21701.71 MiB/sec @ 3 ghz +Alignment 1 - 7.583 bytes/cycle - 21695.57 MiB/sec @ 3 ghz +Alignment 0 - 7.591 bytes/cycle - 21718.12 MiB/sec @ 3 ghz +Average - 7.581 bytes/cycle - 21690.08 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 30.00 cycles/hash +Small key speed test - 2-byte keys - 30.00 cycles/hash +Small key speed test - 3-byte keys - 30.00 cycles/hash Small key speed test - 4-byte keys - 29.00 cycles/hash -Small key speed test - 5-byte keys - 40.13 cycles/hash -Small key speed test - 6-byte keys - 40.00 cycles/hash -Small key speed test - 7-byte keys - 40.00 cycles/hash -Small key speed test - 8-byte keys - 28.00 cycles/hash -Small key speed test - 9-byte keys - 62.81 cycles/hash -Small key speed test - 10-byte keys - 62.80 cycles/hash -Small key speed test - 11-byte keys - 62.80 cycles/hash -Small key speed test - 12-byte keys - 60.00 cycles/hash -Small key speed test - 13-byte keys - 60.00 cycles/hash -Small key speed test - 14-byte keys - 60.00 cycles/hash -Small key speed test - 15-byte keys - 60.00 cycles/hash -Small key speed test - 16-byte keys - 60.00 cycles/hash -Small key speed test - 17-byte keys - 71.50 cycles/hash -Small key speed test - 18-byte keys - 71.50 cycles/hash -Small key speed test - 19-byte keys - 71.50 cycles/hash -Small key speed test - 20-byte keys - 70.00 cycles/hash -Small key speed test - 21-byte keys - 70.00 cycles/hash -Small key speed test - 22-byte keys - 70.00 cycles/hash -Small key speed test - 23-byte keys - 70.00 cycles/hash -Small key speed test - 24-byte keys - 70.00 cycles/hash -Small key speed test - 25-byte keys - 70.00 cycles/hash -Small key speed test - 26-byte keys - 70.00 cycles/hash -Small key speed test - 27-byte keys - 70.00 cycles/hash -Small key speed test - 28-byte keys - 70.00 cycles/hash -Small key speed test - 29-byte keys - 70.00 cycles/hash -Small key speed test - 30-byte keys - 70.00 cycles/hash -Small key speed test - 31-byte keys - 70.00 cycles/hash -Average 58.228 cycles/hash +Small key speed test - 5-byte keys - 29.00 cycles/hash +Small key speed test - 6-byte keys - 29.00 cycles/hash +Small key speed test - 7-byte keys - 29.00 cycles/hash +Small key speed test - 8-byte keys - 29.00 cycles/hash +Small key speed test - 9-byte keys - 39.00 cycles/hash +Small key speed test - 10-byte keys - 39.00 cycles/hash +Small key speed test - 11-byte keys - 39.00 cycles/hash +Small key speed test - 12-byte keys - 39.00 cycles/hash +Small key speed test - 13-byte keys - 39.00 cycles/hash +Small key speed test - 14-byte keys - 39.00 cycles/hash +Small key speed test - 15-byte keys - 39.00 cycles/hash +Small key speed test - 16-byte keys - 39.00 cycles/hash +Small key speed test - 17-byte keys - 49.50 cycles/hash +Small key speed test - 18-byte keys - 49.50 cycles/hash +Small key speed test - 19-byte keys - 49.54 cycles/hash +Small key speed test - 20-byte keys - 49.50 cycles/hash +Small key speed test - 21-byte keys - 49.77 cycles/hash +Small key speed test - 22-byte keys - 49.72 cycles/hash +Small key speed test - 23-byte keys - 49.73 cycles/hash +Small key speed test - 24-byte keys - 49.75 cycles/hash +Small key speed test - 25-byte keys - 49.64 cycles/hash +Small key speed test - 26-byte keys - 49.61 cycles/hash +Small key speed test - 27-byte keys - 49.66 cycles/hash +Small key speed test - 28-byte keys - 49.71 cycles/hash +Small key speed test - 29-byte keys - 49.78 cycles/hash +Small key speed test - 30-byte keys - 49.74 cycles/hash +Small key speed test - 31-byte keys - 49.75 cycles/hash +Average 41.674 cycles/hash [[[ 'Hashmap' Speed Tests ]]] diff --git a/doc/wyhash.txt b/doc/wyhash.txt index 45081cdf..692be1c1 100644 --- a/doc/wyhash.txt +++ b/doc/wyhash.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 7.920 bytes/cycle - 22659.22 MiB/sec @ 3 ghz -Alignment 6 - 7.950 bytes/cycle - 22744.66 MiB/sec @ 3 ghz -Alignment 5 - 7.950 bytes/cycle - 22745.63 MiB/sec @ 3 ghz -Alignment 4 - 7.967 bytes/cycle - 22792.86 MiB/sec @ 3 ghz -Alignment 3 - 7.970 bytes/cycle - 22803.19 MiB/sec @ 3 ghz -Alignment 2 - 7.954 bytes/cycle - 22757.77 MiB/sec @ 3 ghz -Alignment 1 - 7.933 bytes/cycle - 22695.65 MiB/sec @ 3 ghz -Alignment 0 - 8.090 bytes/cycle - 23147.02 MiB/sec @ 3 ghz -Average - 7.967 bytes/cycle - 22793.25 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 27.00 cycles/hash -Small key speed test - 2-byte keys - 27.00 cycles/hash +Alignment 7 - 8.095 bytes/cycle - 23159.36 MiB/sec @ 3 ghz +Alignment 6 - 8.105 bytes/cycle - 23188.40 MiB/sec @ 3 ghz +Alignment 5 - 8.109 bytes/cycle - 23199.98 MiB/sec @ 3 ghz +Alignment 4 - 8.113 bytes/cycle - 23210.56 MiB/sec @ 3 ghz +Alignment 3 - 8.111 bytes/cycle - 23204.98 MiB/sec @ 3 ghz +Alignment 2 - 8.110 bytes/cycle - 23203.64 MiB/sec @ 3 ghz +Alignment 1 - 8.114 bytes/cycle - 23215.58 MiB/sec @ 3 ghz +Alignment 0 - 8.266 bytes/cycle - 23649.72 MiB/sec @ 3 ghz +Average - 8.128 bytes/cycle - 23254.03 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 26.85 cycles/hash +Small key speed test - 2-byte keys - 26.98 cycles/hash Small key speed test - 3-byte keys - 27.00 cycles/hash -Small key speed test - 4-byte keys - 28.00 cycles/hash -Small key speed test - 5-byte keys - 28.00 cycles/hash -Small key speed test - 6-byte keys - 28.00 cycles/hash -Small key speed test - 7-byte keys - 28.00 cycles/hash -Small key speed test - 8-byte keys - 28.00 cycles/hash -Small key speed test - 9-byte keys - 28.00 cycles/hash -Small key speed test - 10-byte keys - 28.00 cycles/hash -Small key speed test - 11-byte keys - 28.00 cycles/hash -Small key speed test - 12-byte keys - 28.00 cycles/hash -Small key speed test - 13-byte keys - 28.00 cycles/hash -Small key speed test - 14-byte keys - 28.00 cycles/hash -Small key speed test - 15-byte keys - 28.00 cycles/hash -Small key speed test - 16-byte keys - 28.00 cycles/hash -Small key speed test - 17-byte keys - 30.00 cycles/hash -Small key speed test - 18-byte keys - 30.00 cycles/hash -Small key speed test - 19-byte keys - 30.00 cycles/hash -Small key speed test - 20-byte keys - 30.00 cycles/hash -Small key speed test - 21-byte keys - 30.00 cycles/hash -Small key speed test - 22-byte keys - 30.00 cycles/hash -Small key speed test - 23-byte keys - 30.00 cycles/hash -Small key speed test - 24-byte keys - 30.00 cycles/hash -Small key speed test - 25-byte keys - 30.00 cycles/hash -Small key speed test - 26-byte keys - 30.00 cycles/hash -Small key speed test - 27-byte keys - 30.00 cycles/hash -Small key speed test - 28-byte keys - 30.00 cycles/hash -Small key speed test - 29-byte keys - 30.00 cycles/hash -Small key speed test - 30-byte keys - 30.00 cycles/hash -Small key speed test - 31-byte keys - 30.00 cycles/hash -Average 28.871 cycles/hash +Small key speed test - 4-byte keys - 27.41 cycles/hash +Small key speed test - 5-byte keys - 27.50 cycles/hash +Small key speed test - 6-byte keys - 27.47 cycles/hash +Small key speed test - 7-byte keys - 27.45 cycles/hash +Small key speed test - 8-byte keys - 27.48 cycles/hash +Small key speed test - 9-byte keys - 27.34 cycles/hash +Small key speed test - 10-byte keys - 27.51 cycles/hash +Small key speed test - 11-byte keys - 27.47 cycles/hash +Small key speed test - 12-byte keys - 27.33 cycles/hash +Small key speed test - 13-byte keys - 27.45 cycles/hash +Small key speed test - 14-byte keys - 27.53 cycles/hash +Small key speed test - 15-byte keys - 27.52 cycles/hash +Small key speed test - 16-byte keys - 27.52 cycles/hash +Small key speed test - 17-byte keys - 29.00 cycles/hash +Small key speed test - 18-byte keys - 29.00 cycles/hash +Small key speed test - 19-byte keys - 29.00 cycles/hash +Small key speed test - 20-byte keys - 29.17 cycles/hash +Small key speed test - 21-byte keys - 29.81 cycles/hash +Small key speed test - 22-byte keys - 29.83 cycles/hash +Small key speed test - 23-byte keys - 29.82 cycles/hash +Small key speed test - 24-byte keys - 29.82 cycles/hash +Small key speed test - 25-byte keys - 29.91 cycles/hash +Small key speed test - 26-byte keys - 29.89 cycles/hash +Small key speed test - 27-byte keys - 29.91 cycles/hash +Small key speed test - 28-byte keys - 29.93 cycles/hash +Small key speed test - 29-byte keys - 29.92 cycles/hash +Small key speed test - 30-byte keys - 29.93 cycles/hash +Small key speed test - 31-byte keys - 29.93 cycles/hash +Average 28.473 cycles/hash [[[ 'Hashmap' Speed Tests ]]] diff --git a/doc/wyhash32low.txt b/doc/wyhash32low.txt index 81385d20..8ca6a709 100644 --- a/doc/wyhash32low.txt +++ b/doc/wyhash32low.txt @@ -10,21 +10,21 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 7.953 bytes/cycle - 22753.12 MiB/sec @ 3 ghz -Alignment 6 - 7.966 bytes/cycle - 22791.57 MiB/sec @ 3 ghz -Alignment 5 - 7.969 bytes/cycle - 22800.77 MiB/sec @ 3 ghz -Alignment 4 - 7.964 bytes/cycle - 22785.34 MiB/sec @ 3 ghz -Alignment 3 - 7.916 bytes/cycle - 22646.79 MiB/sec @ 3 ghz -Alignment 2 - 7.969 bytes/cycle - 22799.34 MiB/sec @ 3 ghz -Alignment 1 - 7.954 bytes/cycle - 22757.07 MiB/sec @ 3 ghz -Alignment 0 - 8.119 bytes/cycle - 23227.63 MiB/sec @ 3 ghz -Average - 7.976 bytes/cycle - 22820.20 MiB/sec @ 3 ghz +Alignment 7 - 7.952 bytes/cycle - 22750.63 MiB/sec @ 3 ghz +Alignment 6 - 7.984 bytes/cycle - 22842.86 MiB/sec @ 3 ghz +Alignment 5 - 7.987 bytes/cycle - 22852.13 MiB/sec @ 3 ghz +Alignment 4 - 7.982 bytes/cycle - 22836.66 MiB/sec @ 3 ghz +Alignment 3 - 7.989 bytes/cycle - 22856.78 MiB/sec @ 3 ghz +Alignment 2 - 7.991 bytes/cycle - 22861.48 MiB/sec @ 3 ghz +Alignment 1 - 7.986 bytes/cycle - 22847.93 MiB/sec @ 3 ghz +Alignment 0 - 8.142 bytes/cycle - 23293.78 MiB/sec @ 3 ghz +Average - 8.002 bytes/cycle - 22892.78 MiB/sec @ 3 ghz Small key speed test - 1-byte keys - 27.00 cycles/hash Small key speed test - 2-byte keys - 27.00 cycles/hash Small key speed test - 3-byte keys - 27.00 cycles/hash Small key speed test - 4-byte keys - 28.00 cycles/hash -Small key speed test - 5-byte keys - 28.00 cycles/hash +Small key speed test - 5-byte keys - 27.99 cycles/hash Small key speed test - 6-byte keys - 28.00 cycles/hash Small key speed test - 7-byte keys - 28.00 cycles/hash Small key speed test - 8-byte keys - 28.00 cycles/hash @@ -34,24 +34,24 @@ Small key speed test - 11-byte keys - 28.00 cycles/hash Small key speed test - 12-byte keys - 28.00 cycles/hash Small key speed test - 13-byte keys - 28.00 cycles/hash Small key speed test - 14-byte keys - 28.00 cycles/hash -Small key speed test - 15-byte keys - 28.00 cycles/hash +Small key speed test - 15-byte keys - 27.99 cycles/hash Small key speed test - 16-byte keys - 28.00 cycles/hash Small key speed test - 17-byte keys - 30.00 cycles/hash Small key speed test - 18-byte keys - 30.00 cycles/hash Small key speed test - 19-byte keys - 30.00 cycles/hash Small key speed test - 20-byte keys - 30.00 cycles/hash Small key speed test - 21-byte keys - 30.00 cycles/hash -Small key speed test - 22-byte keys - 29.97 cycles/hash -Small key speed test - 23-byte keys - 29.97 cycles/hash -Small key speed test - 24-byte keys - 29.90 cycles/hash -Small key speed test - 25-byte keys - 29.91 cycles/hash +Small key speed test - 22-byte keys - 30.00 cycles/hash +Small key speed test - 23-byte keys - 30.00 cycles/hash +Small key speed test - 24-byte keys - 30.00 cycles/hash +Small key speed test - 25-byte keys - 30.00 cycles/hash Small key speed test - 26-byte keys - 30.00 cycles/hash -Small key speed test - 27-byte keys - 29.91 cycles/hash +Small key speed test - 27-byte keys - 30.00 cycles/hash Small key speed test - 28-byte keys - 30.00 cycles/hash -Small key speed test - 29-byte keys - 29.98 cycles/hash -Small key speed test - 30-byte keys - 29.99 cycles/hash +Small key speed test - 29-byte keys - 30.00 cycles/hash +Small key speed test - 30-byte keys - 30.00 cycles/hash Small key speed test - 31-byte keys - 30.00 cycles/hash -Average 28.859 cycles/hash +Average 28.869 cycles/hash [[[ 'Hashmap' Speed Tests ]]] diff --git a/doc/x17.txt b/doc/x17.txt index 74a0fe02..441cc4e4 100644 --- a/doc/x17.txt +++ b/doc/x17.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 0.185 bytes/cycle - 527.90 MiB/sec @ 3 ghz -Alignment 6 - 0.185 bytes/cycle - 527.90 MiB/sec @ 3 ghz -Alignment 5 - 0.185 bytes/cycle - 527.90 MiB/sec @ 3 ghz -Alignment 4 - 0.185 bytes/cycle - 527.90 MiB/sec @ 3 ghz -Alignment 3 - 0.185 bytes/cycle - 527.90 MiB/sec @ 3 ghz -Alignment 2 - 0.185 bytes/cycle - 527.90 MiB/sec @ 3 ghz -Alignment 1 - 0.185 bytes/cycle - 527.90 MiB/sec @ 3 ghz -Alignment 0 - 0.185 bytes/cycle - 527.90 MiB/sec @ 3 ghz -Average - 0.185 bytes/cycle - 527.90 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 15.00 cycles/hash +Alignment 7 - 0.234 bytes/cycle - 669.70 MiB/sec @ 3 ghz +Alignment 6 - 0.266 bytes/cycle - 760.16 MiB/sec @ 3 ghz +Alignment 5 - 0.266 bytes/cycle - 759.95 MiB/sec @ 3 ghz +Alignment 4 - 0.266 bytes/cycle - 760.00 MiB/sec @ 3 ghz +Alignment 3 - 0.266 bytes/cycle - 760.13 MiB/sec @ 3 ghz +Alignment 2 - 0.266 bytes/cycle - 759.88 MiB/sec @ 3 ghz +Alignment 1 - 0.266 bytes/cycle - 760.05 MiB/sec @ 3 ghz +Alignment 0 - 0.266 bytes/cycle - 760.11 MiB/sec @ 3 ghz +Average - 0.262 bytes/cycle - 748.75 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 18.00 cycles/hash Small key speed test - 2-byte keys - 21.00 cycles/hash -Small key speed test - 3-byte keys - 26.00 cycles/hash -Small key speed test - 4-byte keys - 31.00 cycles/hash -Small key speed test - 5-byte keys - 37.00 cycles/hash -Small key speed test - 6-byte keys - 42.00 cycles/hash -Small key speed test - 7-byte keys - 48.00 cycles/hash -Small key speed test - 8-byte keys - 53.00 cycles/hash -Small key speed test - 9-byte keys - 59.00 cycles/hash -Small key speed test - 10-byte keys - 64.00 cycles/hash -Small key speed test - 11-byte keys - 69.00 cycles/hash -Small key speed test - 12-byte keys - 75.00 cycles/hash -Small key speed test - 13-byte keys - 80.00 cycles/hash -Small key speed test - 14-byte keys - 86.00 cycles/hash -Small key speed test - 15-byte keys - 91.00 cycles/hash -Small key speed test - 16-byte keys - 97.00 cycles/hash -Small key speed test - 17-byte keys - 102.00 cycles/hash -Small key speed test - 18-byte keys - 107.96 cycles/hash -Small key speed test - 19-byte keys - 113.00 cycles/hash -Small key speed test - 20-byte keys - 118.00 cycles/hash -Small key speed test - 21-byte keys - 124.00 cycles/hash -Small key speed test - 22-byte keys - 129.00 cycles/hash -Small key speed test - 23-byte keys - 135.00 cycles/hash -Small key speed test - 24-byte keys - 140.00 cycles/hash -Small key speed test - 25-byte keys - 145.83 cycles/hash -Small key speed test - 26-byte keys - 151.00 cycles/hash -Small key speed test - 27-byte keys - 156.00 cycles/hash -Small key speed test - 28-byte keys - 162.00 cycles/hash -Small key speed test - 29-byte keys - 167.00 cycles/hash -Small key speed test - 30-byte keys - 173.00 cycles/hash -Small key speed test - 31-byte keys - 178.00 cycles/hash -Average 96.638 cycles/hash +Small key speed test - 3-byte keys - 25.00 cycles/hash +Small key speed test - 4-byte keys - 28.94 cycles/hash +Small key speed test - 5-byte keys - 33.00 cycles/hash +Small key speed test - 6-byte keys - 36.43 cycles/hash +Small key speed test - 7-byte keys - 40.00 cycles/hash +Small key speed test - 8-byte keys - 44.00 cycles/hash +Small key speed test - 9-byte keys - 48.00 cycles/hash +Small key speed test - 10-byte keys - 51.91 cycles/hash +Small key speed test - 11-byte keys - 55.00 cycles/hash +Small key speed test - 12-byte keys - 59.43 cycles/hash +Small key speed test - 13-byte keys - 63.00 cycles/hash +Small key speed test - 14-byte keys - 66.42 cycles/hash +Small key speed test - 15-byte keys - 70.00 cycles/hash +Small key speed test - 16-byte keys - 74.00 cycles/hash +Small key speed test - 17-byte keys - 78.00 cycles/hash +Small key speed test - 18-byte keys - 81.99 cycles/hash +Small key speed test - 19-byte keys - 85.24 cycles/hash +Small key speed test - 20-byte keys - 88.98 cycles/hash +Small key speed test - 21-byte keys - 92.98 cycles/hash +Small key speed test - 22-byte keys - 96.96 cycles/hash +Small key speed test - 23-byte keys - 100.00 cycles/hash +Small key speed test - 24-byte keys - 104.00 cycles/hash +Small key speed test - 25-byte keys - 108.03 cycles/hash +Small key speed test - 26-byte keys - 111.93 cycles/hash +Small key speed test - 27-byte keys - 115.48 cycles/hash +Small key speed test - 28-byte keys - 119.20 cycles/hash +Small key speed test - 29-byte keys - 123.20 cycles/hash +Small key speed test - 30-byte keys - 127.12 cycles/hash +Small key speed test - 31-byte keys - 130.67 cycles/hash +Average 74.126 cycles/hash [[[ 'Hashmap' Speed Tests (when inlined) ]]] diff --git a/doc/xxHash32.txt b/doc/xxHash32.txt index 2f52334d..9aed249e 100644 --- a/doc/xxHash32.txt +++ b/doc/xxHash32.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 2.100 bytes/cycle - 6007.70 MiB/sec @ 3 ghz -Alignment 6 - 2.100 bytes/cycle - 6007.36 MiB/sec @ 3 ghz -Alignment 5 - 2.100 bytes/cycle - 6006.92 MiB/sec @ 3 ghz -Alignment 4 - 2.130 bytes/cycle - 6095.23 MiB/sec @ 3 ghz -Alignment 3 - 2.110 bytes/cycle - 6038.16 MiB/sec @ 3 ghz -Alignment 2 - 2.111 bytes/cycle - 6038.84 MiB/sec @ 3 ghz -Alignment 1 - 2.111 bytes/cycle - 6039.04 MiB/sec @ 3 ghz -Alignment 0 - 2.131 bytes/cycle - 6097.73 MiB/sec @ 3 ghz -Average - 2.112 bytes/cycle - 6041.37 MiB/sec @ 3 ghz +Alignment 7 - 2.041 bytes/cycle - 5839.54 MiB/sec @ 3 ghz +Alignment 6 - 2.064 bytes/cycle - 5905.74 MiB/sec @ 3 ghz +Alignment 5 - 2.045 bytes/cycle - 5850.72 MiB/sec @ 3 ghz +Alignment 4 - 2.107 bytes/cycle - 6028.65 MiB/sec @ 3 ghz +Alignment 3 - 2.021 bytes/cycle - 5781.65 MiB/sec @ 3 ghz +Alignment 2 - 2.023 bytes/cycle - 5786.92 MiB/sec @ 3 ghz +Alignment 1 - 2.020 bytes/cycle - 5780.23 MiB/sec @ 3 ghz +Alignment 0 - 2.079 bytes/cycle - 5947.90 MiB/sec @ 3 ghz +Average - 2.050 bytes/cycle - 5865.17 MiB/sec @ 3 ghz Small key speed test - 1-byte keys - 32.00 cycles/hash -Small key speed test - 2-byte keys - 36.00 cycles/hash -Small key speed test - 3-byte keys - 41.00 cycles/hash +Small key speed test - 2-byte keys - 37.00 cycles/hash +Small key speed test - 3-byte keys - 42.00 cycles/hash Small key speed test - 4-byte keys - 32.00 cycles/hash -Small key speed test - 5-byte keys - 36.00 cycles/hash -Small key speed test - 6-byte keys - 41.00 cycles/hash -Small key speed test - 7-byte keys - 45.00 cycles/hash -Small key speed test - 8-byte keys - 36.00 cycles/hash -Small key speed test - 9-byte keys - 41.00 cycles/hash -Small key speed test - 10-byte keys - 45.00 cycles/hash -Small key speed test - 11-byte keys - 50.00 cycles/hash -Small key speed test - 12-byte keys - 41.00 cycles/hash -Small key speed test - 13-byte keys - 45.00 cycles/hash -Small key speed test - 14-byte keys - 50.00 cycles/hash -Small key speed test - 15-byte keys - 54.00 cycles/hash -Small key speed test - 16-byte keys - 39.00 cycles/hash -Small key speed test - 17-byte keys - 44.00 cycles/hash -Small key speed test - 18-byte keys - 48.00 cycles/hash -Small key speed test - 19-byte keys - 52.00 cycles/hash -Small key speed test - 20-byte keys - 44.13 cycles/hash -Small key speed test - 21-byte keys - 48.42 cycles/hash -Small key speed test - 22-byte keys - 52.00 cycles/hash -Small key speed test - 23-byte keys - 56.00 cycles/hash -Small key speed test - 24-byte keys - 48.00 cycles/hash -Small key speed test - 25-byte keys - 51.84 cycles/hash -Small key speed test - 26-byte keys - 56.00 cycles/hash -Small key speed test - 27-byte keys - 60.42 cycles/hash -Small key speed test - 28-byte keys - 52.00 cycles/hash -Small key speed test - 29-byte keys - 56.00 cycles/hash -Small key speed test - 30-byte keys - 61.00 cycles/hash -Small key speed test - 31-byte keys - 65.00 cycles/hash -Average 47.058 cycles/hash +Small key speed test - 5-byte keys - 37.00 cycles/hash +Small key speed test - 6-byte keys - 42.00 cycles/hash +Small key speed test - 7-byte keys - 47.00 cycles/hash +Small key speed test - 8-byte keys - 37.00 cycles/hash +Small key speed test - 9-byte keys - 43.00 cycles/hash +Small key speed test - 10-byte keys - 46.87 cycles/hash +Small key speed test - 11-byte keys - 52.00 cycles/hash +Small key speed test - 12-byte keys - 42.86 cycles/hash +Small key speed test - 13-byte keys - 47.79 cycles/hash +Small key speed test - 14-byte keys - 51.00 cycles/hash +Small key speed test - 15-byte keys - 56.94 cycles/hash +Small key speed test - 16-byte keys - 39.26 cycles/hash +Small key speed test - 17-byte keys - 45.56 cycles/hash +Small key speed test - 18-byte keys - 49.20 cycles/hash +Small key speed test - 19-byte keys - 54.94 cycles/hash +Small key speed test - 20-byte keys - 45.18 cycles/hash +Small key speed test - 21-byte keys - 50.99 cycles/hash +Small key speed test - 22-byte keys - 54.00 cycles/hash +Small key speed test - 23-byte keys - 59.98 cycles/hash +Small key speed test - 24-byte keys - 51.00 cycles/hash +Small key speed test - 25-byte keys - 55.71 cycles/hash +Small key speed test - 26-byte keys - 59.16 cycles/hash +Small key speed test - 27-byte keys - 64.00 cycles/hash +Small key speed test - 28-byte keys - 54.98 cycles/hash +Small key speed test - 29-byte keys - 59.99 cycles/hash +Small key speed test - 30-byte keys - 64.82 cycles/hash +Small key speed test - 31-byte keys - 69.98 cycles/hash +Average 49.200 cycles/hash [[[ 'Hashmap' Speed Tests (when inlined) ]]] diff --git a/doc/xxHash64.txt b/doc/xxHash64.txt index 232602a6..a28e1834 100644 --- a/doc/xxHash64.txt +++ b/doc/xxHash64.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 3.113 bytes/cycle - 8907.17 MiB/sec @ 3 ghz -Alignment 6 - 3.113 bytes/cycle - 8906.83 MiB/sec @ 3 ghz -Alignment 5 - 3.113 bytes/cycle - 8906.56 MiB/sec @ 3 ghz -Alignment 4 - 3.113 bytes/cycle - 8907.00 MiB/sec @ 3 ghz -Alignment 3 - 3.113 bytes/cycle - 8907.00 MiB/sec @ 3 ghz -Alignment 2 - 3.113 bytes/cycle - 8907.23 MiB/sec @ 3 ghz -Alignment 1 - 3.113 bytes/cycle - 8906.81 MiB/sec @ 3 ghz -Alignment 0 - 3.193 bytes/cycle - 9134.13 MiB/sec @ 3 ghz -Average - 3.123 bytes/cycle - 8935.34 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 31.00 cycles/hash -Small key speed test - 2-byte keys - 36.00 cycles/hash -Small key speed test - 3-byte keys - 41.00 cycles/hash -Small key speed test - 4-byte keys - 32.00 cycles/hash -Small key speed test - 5-byte keys - 37.00 cycles/hash +Alignment 7 - 4.232 bytes/cycle - 12107.75 MiB/sec @ 3 ghz +Alignment 6 - 4.231 bytes/cycle - 12104.68 MiB/sec @ 3 ghz +Alignment 5 - 4.231 bytes/cycle - 12103.72 MiB/sec @ 3 ghz +Alignment 4 - 4.231 bytes/cycle - 12103.91 MiB/sec @ 3 ghz +Alignment 3 - 4.231 bytes/cycle - 12106.37 MiB/sec @ 3 ghz +Alignment 2 - 4.231 bytes/cycle - 12103.85 MiB/sec @ 3 ghz +Alignment 1 - 4.231 bytes/cycle - 12104.16 MiB/sec @ 3 ghz +Alignment 0 - 4.242 bytes/cycle - 12136.54 MiB/sec @ 3 ghz +Average - 4.232 bytes/cycle - 12108.87 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 32.63 cycles/hash +Small key speed test - 2-byte keys - 37.00 cycles/hash +Small key speed test - 3-byte keys - 42.26 cycles/hash +Small key speed test - 4-byte keys - 33.67 cycles/hash +Small key speed test - 5-byte keys - 38.00 cycles/hash Small key speed test - 6-byte keys - 43.00 cycles/hash -Small key speed test - 7-byte keys - 46.00 cycles/hash -Small key speed test - 8-byte keys - 47.00 cycles/hash -Small key speed test - 9-byte keys - 52.00 cycles/hash -Small key speed test - 10-byte keys - 55.00 cycles/hash -Small key speed test - 11-byte keys - 63.00 cycles/hash -Small key speed test - 12-byte keys - 52.00 cycles/hash -Small key speed test - 13-byte keys - 57.00 cycles/hash -Small key speed test - 14-byte keys - 63.00 cycles/hash -Small key speed test - 15-byte keys - 66.99 cycles/hash -Small key speed test - 16-byte keys - 52.00 cycles/hash -Small key speed test - 17-byte keys - 58.00 cycles/hash -Small key speed test - 18-byte keys - 61.26 cycles/hash -Small key speed test - 19-byte keys - 69.00 cycles/hash -Small key speed test - 20-byte keys - 58.00 cycles/hash -Small key speed test - 21-byte keys - 63.00 cycles/hash -Small key speed test - 22-byte keys - 69.00 cycles/hash -Small key speed test - 23-byte keys - 72.00 cycles/hash -Small key speed test - 24-byte keys - 58.26 cycles/hash -Small key speed test - 25-byte keys - 63.78 cycles/hash -Small key speed test - 26-byte keys - 67.00 cycles/hash -Small key speed test - 27-byte keys - 75.00 cycles/hash -Small key speed test - 28-byte keys - 64.00 cycles/hash -Small key speed test - 29-byte keys - 68.00 cycles/hash -Small key speed test - 30-byte keys - 75.00 cycles/hash -Small key speed test - 31-byte keys - 78.00 cycles/hash -Average 57.203 cycles/hash +Small key speed test - 7-byte keys - 48.00 cycles/hash +Small key speed test - 8-byte keys - 37.00 cycles/hash +Small key speed test - 9-byte keys - 42.11 cycles/hash +Small key speed test - 10-byte keys - 48.00 cycles/hash +Small key speed test - 11-byte keys - 50.99 cycles/hash +Small key speed test - 12-byte keys - 43.00 cycles/hash +Small key speed test - 13-byte keys - 47.99 cycles/hash +Small key speed test - 14-byte keys - 52.00 cycles/hash +Small key speed test - 15-byte keys - 57.00 cycles/hash +Small key speed test - 16-byte keys - 43.00 cycles/hash +Small key speed test - 17-byte keys - 47.83 cycles/hash +Small key speed test - 18-byte keys - 52.98 cycles/hash +Small key speed test - 19-byte keys - 58.00 cycles/hash +Small key speed test - 20-byte keys - 48.00 cycles/hash +Small key speed test - 21-byte keys - 53.00 cycles/hash +Small key speed test - 22-byte keys - 58.21 cycles/hash +Small key speed test - 23-byte keys - 63.29 cycles/hash +Small key speed test - 24-byte keys - 48.99 cycles/hash +Small key speed test - 25-byte keys - 53.99 cycles/hash +Small key speed test - 26-byte keys - 57.00 cycles/hash +Small key speed test - 27-byte keys - 62.00 cycles/hash +Small key speed test - 28-byte keys - 53.99 cycles/hash +Small key speed test - 29-byte keys - 59.00 cycles/hash +Small key speed test - 30-byte keys - 63.00 cycles/hash +Small key speed test - 31-byte keys - 68.13 cycles/hash +Average 49.776 cycles/hash [[[ 'Hashmap' Speed Tests (when inlined) ]]] diff --git a/doc/xxh128.txt b/doc/xxh128.txt index 16ca2170..81fdb3f5 100644 --- a/doc/xxh128.txt +++ b/doc/xxh128.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 6.587 bytes/cycle - 18846.00 MiB/sec @ 3 ghz -Alignment 6 - 6.594 bytes/cycle - 18865.70 MiB/sec @ 3 ghz -Alignment 5 - 6.605 bytes/cycle - 18896.26 MiB/sec @ 3 ghz -Alignment 4 - 6.612 bytes/cycle - 18918.34 MiB/sec @ 3 ghz -Alignment 3 - 6.607 bytes/cycle - 18901.85 MiB/sec @ 3 ghz -Alignment 2 - 6.610 bytes/cycle - 18912.65 MiB/sec @ 3 ghz -Alignment 1 - 6.616 bytes/cycle - 18928.86 MiB/sec @ 3 ghz -Alignment 0 - 6.887 bytes/cycle - 19703.26 MiB/sec @ 3 ghz -Average - 6.640 bytes/cycle - 18996.62 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 28.00 cycles/hash -Small key speed test - 2-byte keys - 28.00 cycles/hash -Small key speed test - 3-byte keys - 28.00 cycles/hash -Small key speed test - 4-byte keys - 31.69 cycles/hash -Small key speed test - 5-byte keys - 31.59 cycles/hash -Small key speed test - 6-byte keys - 31.70 cycles/hash -Small key speed test - 7-byte keys - 31.95 cycles/hash +Alignment 7 - 6.538 bytes/cycle - 18704.08 MiB/sec @ 3 ghz +Alignment 6 - 6.535 bytes/cycle - 18698.18 MiB/sec @ 3 ghz +Alignment 5 - 6.535 bytes/cycle - 18695.87 MiB/sec @ 3 ghz +Alignment 4 - 6.539 bytes/cycle - 18707.60 MiB/sec @ 3 ghz +Alignment 3 - 6.535 bytes/cycle - 18696.71 MiB/sec @ 3 ghz +Alignment 2 - 6.536 bytes/cycle - 18698.36 MiB/sec @ 3 ghz +Alignment 1 - 6.536 bytes/cycle - 18699.80 MiB/sec @ 3 ghz +Alignment 0 - 6.822 bytes/cycle - 19516.65 MiB/sec @ 3 ghz +Average - 6.572 bytes/cycle - 18802.16 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 28.52 cycles/hash +Small key speed test - 2-byte keys - 28.71 cycles/hash +Small key speed test - 3-byte keys - 28.54 cycles/hash +Small key speed test - 4-byte keys - 32.00 cycles/hash +Small key speed test - 5-byte keys - 32.00 cycles/hash +Small key speed test - 6-byte keys - 32.00 cycles/hash +Small key speed test - 7-byte keys - 32.00 cycles/hash Small key speed test - 8-byte keys - 32.00 cycles/hash -Small key speed test - 9-byte keys - 34.00 cycles/hash -Small key speed test - 10-byte keys - 34.00 cycles/hash -Small key speed test - 11-byte keys - 34.00 cycles/hash -Small key speed test - 12-byte keys - 34.00 cycles/hash -Small key speed test - 13-byte keys - 34.00 cycles/hash -Small key speed test - 14-byte keys - 34.00 cycles/hash -Small key speed test - 15-byte keys - 34.00 cycles/hash -Small key speed test - 16-byte keys - 34.00 cycles/hash +Small key speed test - 9-byte keys - 34.70 cycles/hash +Small key speed test - 10-byte keys - 34.66 cycles/hash +Small key speed test - 11-byte keys - 34.63 cycles/hash +Small key speed test - 12-byte keys - 34.69 cycles/hash +Small key speed test - 13-byte keys - 34.63 cycles/hash +Small key speed test - 14-byte keys - 34.71 cycles/hash +Small key speed test - 15-byte keys - 34.68 cycles/hash +Small key speed test - 16-byte keys - 34.65 cycles/hash Small key speed test - 17-byte keys - 32.00 cycles/hash Small key speed test - 18-byte keys - 32.00 cycles/hash Small key speed test - 19-byte keys - 32.00 cycles/hash Small key speed test - 20-byte keys - 32.00 cycles/hash -Small key speed test - 21-byte keys - 32.98 cycles/hash -Small key speed test - 22-byte keys - 32.99 cycles/hash -Small key speed test - 23-byte keys - 32.98 cycles/hash -Small key speed test - 24-byte keys - 32.97 cycles/hash -Small key speed test - 25-byte keys - 33.00 cycles/hash -Small key speed test - 26-byte keys - 33.00 cycles/hash -Small key speed test - 27-byte keys - 33.00 cycles/hash -Small key speed test - 28-byte keys - 32.79 cycles/hash -Small key speed test - 29-byte keys - 32.79 cycles/hash -Small key speed test - 30-byte keys - 32.65 cycles/hash -Small key speed test - 31-byte keys - 32.78 cycles/hash -Average 32.415 cycles/hash +Small key speed test - 21-byte keys - 32.00 cycles/hash +Small key speed test - 22-byte keys - 32.00 cycles/hash +Small key speed test - 23-byte keys - 32.00 cycles/hash +Small key speed test - 24-byte keys - 32.00 cycles/hash +Small key speed test - 25-byte keys - 32.00 cycles/hash +Small key speed test - 26-byte keys - 32.11 cycles/hash +Small key speed test - 27-byte keys - 32.21 cycles/hash +Small key speed test - 28-byte keys - 32.00 cycles/hash +Small key speed test - 29-byte keys - 32.00 cycles/hash +Small key speed test - 30-byte keys - 32.00 cycles/hash +Small key speed test - 31-byte keys - 32.00 cycles/hash +Average 32.369 cycles/hash [[[ 'Hashmap' Speed Tests ]]] diff --git a/doc/xxh128low.txt b/doc/xxh128low.txt index 16c3f7af..2feb861c 100644 --- a/doc/xxh128low.txt +++ b/doc/xxh128low.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 6.551 bytes/cycle - 18743.10 MiB/sec @ 3 ghz -Alignment 6 - 6.590 bytes/cycle - 18854.22 MiB/sec @ 3 ghz -Alignment 5 - 6.595 bytes/cycle - 18867.83 MiB/sec @ 3 ghz -Alignment 4 - 6.609 bytes/cycle - 18908.77 MiB/sec @ 3 ghz -Alignment 3 - 6.606 bytes/cycle - 18900.42 MiB/sec @ 3 ghz -Alignment 2 - 6.611 bytes/cycle - 18913.96 MiB/sec @ 3 ghz -Alignment 1 - 6.614 bytes/cycle - 18923.16 MiB/sec @ 3 ghz -Alignment 0 - 6.919 bytes/cycle - 19795.42 MiB/sec @ 3 ghz -Average - 6.637 bytes/cycle - 18988.36 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 29.00 cycles/hash -Small key speed test - 2-byte keys - 29.00 cycles/hash -Small key speed test - 3-byte keys - 29.00 cycles/hash -Small key speed test - 4-byte keys - 31.00 cycles/hash -Small key speed test - 5-byte keys - 31.00 cycles/hash +Alignment 7 - 6.545 bytes/cycle - 18726.62 MiB/sec @ 3 ghz +Alignment 6 - 6.546 bytes/cycle - 18728.08 MiB/sec @ 3 ghz +Alignment 5 - 6.547 bytes/cycle - 18732.31 MiB/sec @ 3 ghz +Alignment 4 - 6.545 bytes/cycle - 18726.65 MiB/sec @ 3 ghz +Alignment 3 - 6.546 bytes/cycle - 18729.19 MiB/sec @ 3 ghz +Alignment 2 - 6.545 bytes/cycle - 18724.05 MiB/sec @ 3 ghz +Alignment 1 - 6.548 bytes/cycle - 18734.41 MiB/sec @ 3 ghz +Alignment 0 - 6.838 bytes/cycle - 19563.10 MiB/sec @ 3 ghz +Average - 6.583 bytes/cycle - 18833.05 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 29.90 cycles/hash +Small key speed test - 2-byte keys - 29.82 cycles/hash +Small key speed test - 3-byte keys - 29.83 cycles/hash +Small key speed test - 4-byte keys - 31.14 cycles/hash +Small key speed test - 5-byte keys - 31.17 cycles/hash Small key speed test - 6-byte keys - 31.00 cycles/hash Small key speed test - 7-byte keys - 31.00 cycles/hash -Small key speed test - 8-byte keys - 31.00 cycles/hash -Small key speed test - 9-byte keys - 34.00 cycles/hash +Small key speed test - 8-byte keys - 31.18 cycles/hash +Small key speed test - 9-byte keys - 34.29 cycles/hash Small key speed test - 10-byte keys - 34.00 cycles/hash Small key speed test - 11-byte keys - 34.00 cycles/hash -Small key speed test - 12-byte keys - 34.00 cycles/hash -Small key speed test - 13-byte keys - 34.00 cycles/hash -Small key speed test - 14-byte keys - 34.00 cycles/hash -Small key speed test - 15-byte keys - 34.00 cycles/hash -Small key speed test - 16-byte keys - 34.00 cycles/hash -Small key speed test - 17-byte keys - 31.70 cycles/hash -Small key speed test - 18-byte keys - 31.59 cycles/hash -Small key speed test - 19-byte keys - 31.96 cycles/hash -Small key speed test - 20-byte keys - 31.77 cycles/hash -Small key speed test - 21-byte keys - 32.00 cycles/hash -Small key speed test - 22-byte keys - 32.32 cycles/hash -Small key speed test - 23-byte keys - 32.00 cycles/hash +Small key speed test - 12-byte keys - 34.30 cycles/hash +Small key speed test - 13-byte keys - 34.24 cycles/hash +Small key speed test - 14-byte keys - 34.33 cycles/hash +Small key speed test - 15-byte keys - 34.21 cycles/hash +Small key speed test - 16-byte keys - 34.33 cycles/hash +Small key speed test - 17-byte keys - 32.00 cycles/hash +Small key speed test - 18-byte keys - 32.00 cycles/hash +Small key speed test - 19-byte keys - 32.00 cycles/hash +Small key speed test - 20-byte keys - 32.00 cycles/hash +Small key speed test - 21-byte keys - 32.45 cycles/hash +Small key speed test - 22-byte keys - 32.46 cycles/hash +Small key speed test - 23-byte keys - 32.49 cycles/hash Small key speed test - 24-byte keys - 32.00 cycles/hash Small key speed test - 25-byte keys - 32.00 cycles/hash -Small key speed test - 26-byte keys - 32.00 cycles/hash -Small key speed test - 27-byte keys - 32.00 cycles/hash +Small key speed test - 26-byte keys - 32.46 cycles/hash +Small key speed test - 27-byte keys - 32.42 cycles/hash Small key speed test - 28-byte keys - 32.00 cycles/hash Small key speed test - 29-byte keys - 32.00 cycles/hash Small key speed test - 30-byte keys - 32.00 cycles/hash -Small key speed test - 31-byte keys - 32.00 cycles/hash -Average 32.043 cycles/hash +Small key speed test - 31-byte keys - 32.12 cycles/hash +Average 32.295 cycles/hash [[[ 'Hashmap' Speed Tests ]]] diff --git a/doc/xxh3.txt b/doc/xxh3.txt index 93a3fa38..7bb9a371 100644 --- a/doc/xxh3.txt +++ b/doc/xxh3.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 7.105 bytes/cycle - 20327.27 MiB/sec @ 3 ghz -Alignment 6 - 7.111 bytes/cycle - 20345.45 MiB/sec @ 3 ghz -Alignment 5 - 7.110 bytes/cycle - 20342.80 MiB/sec @ 3 ghz -Alignment 4 - 7.063 bytes/cycle - 20207.84 MiB/sec @ 3 ghz -Alignment 3 - 7.090 bytes/cycle - 20285.93 MiB/sec @ 3 ghz -Alignment 2 - 7.249 bytes/cycle - 20739.79 MiB/sec @ 3 ghz -Alignment 1 - 7.245 bytes/cycle - 20729.08 MiB/sec @ 3 ghz -Alignment 0 - 6.709 bytes/cycle - 19195.72 MiB/sec @ 3 ghz -Average - 7.085 bytes/cycle - 20271.74 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 33.45 cycles/hash -Small key speed test - 2-byte keys - 28.16 cycles/hash +Alignment 7 - 7.311 bytes/cycle - 20916.03 MiB/sec @ 3 ghz +Alignment 6 - 7.304 bytes/cycle - 20896.80 MiB/sec @ 3 ghz +Alignment 5 - 7.300 bytes/cycle - 20886.44 MiB/sec @ 3 ghz +Alignment 4 - 7.307 bytes/cycle - 20904.34 MiB/sec @ 3 ghz +Alignment 3 - 7.304 bytes/cycle - 20896.41 MiB/sec @ 3 ghz +Alignment 2 - 7.303 bytes/cycle - 20893.96 MiB/sec @ 3 ghz +Alignment 1 - 7.307 bytes/cycle - 20904.82 MiB/sec @ 3 ghz +Alignment 0 - 7.679 bytes/cycle - 21969.56 MiB/sec @ 3 ghz +Average - 7.352 bytes/cycle - 21033.55 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 28.00 cycles/hash +Small key speed test - 2-byte keys - 28.00 cycles/hash Small key speed test - 3-byte keys - 28.00 cycles/hash -Small key speed test - 4-byte keys - 33.23 cycles/hash -Small key speed test - 5-byte keys - 29.61 cycles/hash -Small key speed test - 6-byte keys - 28.99 cycles/hash -Small key speed test - 7-byte keys - 29.00 cycles/hash -Small key speed test - 8-byte keys - 33.10 cycles/hash -Small key speed test - 9-byte keys - 35.00 cycles/hash -Small key speed test - 10-byte keys - 35.25 cycles/hash -Small key speed test - 11-byte keys - 35.26 cycles/hash -Small key speed test - 12-byte keys - 35.00 cycles/hash -Small key speed test - 13-byte keys - 35.25 cycles/hash -Small key speed test - 14-byte keys - 35.30 cycles/hash -Small key speed test - 15-byte keys - 35.26 cycles/hash -Small key speed test - 16-byte keys - 35.06 cycles/hash +Small key speed test - 4-byte keys - 28.00 cycles/hash +Small key speed test - 5-byte keys - 28.00 cycles/hash +Small key speed test - 6-byte keys - 28.00 cycles/hash +Small key speed test - 7-byte keys - 28.32 cycles/hash +Small key speed test - 8-byte keys - 28.21 cycles/hash +Small key speed test - 9-byte keys - 28.65 cycles/hash +Small key speed test - 10-byte keys - 28.71 cycles/hash +Small key speed test - 11-byte keys - 28.69 cycles/hash +Small key speed test - 12-byte keys - 28.64 cycles/hash +Small key speed test - 13-byte keys - 28.68 cycles/hash +Small key speed test - 14-byte keys - 28.72 cycles/hash +Small key speed test - 15-byte keys - 28.65 cycles/hash +Small key speed test - 16-byte keys - 28.68 cycles/hash Small key speed test - 17-byte keys - 30.00 cycles/hash Small key speed test - 18-byte keys - 30.00 cycles/hash Small key speed test - 19-byte keys - 30.00 cycles/hash Small key speed test - 20-byte keys - 30.00 cycles/hash -Small key speed test - 21-byte keys - 31.89 cycles/hash -Small key speed test - 22-byte keys - 34.53 cycles/hash -Small key speed test - 23-byte keys - 32.65 cycles/hash -Small key speed test - 24-byte keys - 31.17 cycles/hash -Small key speed test - 25-byte keys - 36.68 cycles/hash -Small key speed test - 26-byte keys - 39.80 cycles/hash -Small key speed test - 27-byte keys - 38.78 cycles/hash -Small key speed test - 28-byte keys - 31.94 cycles/hash -Small key speed test - 29-byte keys - 31.97 cycles/hash -Small key speed test - 30-byte keys - 31.98 cycles/hash -Small key speed test - 31-byte keys - 31.99 cycles/hash -Average 32.849 cycles/hash +Small key speed test - 21-byte keys - 31.00 cycles/hash +Small key speed test - 22-byte keys - 31.00 cycles/hash +Small key speed test - 23-byte keys - 31.00 cycles/hash +Small key speed test - 24-byte keys - 30.59 cycles/hash +Small key speed test - 25-byte keys - 31.00 cycles/hash +Small key speed test - 26-byte keys - 31.00 cycles/hash +Small key speed test - 27-byte keys - 31.00 cycles/hash +Small key speed test - 28-byte keys - 30.85 cycles/hash +Small key speed test - 29-byte keys - 30.88 cycles/hash +Small key speed test - 30-byte keys - 30.88 cycles/hash +Small key speed test - 31-byte keys - 30.89 cycles/hash +Average 29.485 cycles/hash [[[ 'Hashmap' Speed Tests ]]] diff --git a/doc/xxh3low.txt b/doc/xxh3low.txt index e3d7bde2..17352f38 100644 --- a/doc/xxh3low.txt +++ b/doc/xxh3low.txt @@ -10,48 +10,48 @@ Running AppendedZeroesTest .......... PASS [[[ Speed Tests ]]] Bulk speed test - 262144-byte keys -Alignment 7 - 5.685 bytes/cycle - 16265.00 MiB/sec @ 3 ghz -Alignment 6 - 5.685 bytes/cycle - 16263.54 MiB/sec @ 3 ghz -Alignment 5 - 5.685 bytes/cycle - 16265.14 MiB/sec @ 3 ghz -Alignment 4 - 5.692 bytes/cycle - 16286.19 MiB/sec @ 3 ghz -Alignment 3 - 5.685 bytes/cycle - 16265.35 MiB/sec @ 3 ghz -Alignment 2 - 5.684 bytes/cycle - 16262.11 MiB/sec @ 3 ghz -Alignment 1 - 5.684 bytes/cycle - 16260.91 MiB/sec @ 3 ghz -Alignment 0 - 6.240 bytes/cycle - 17854.13 MiB/sec @ 3 ghz -Average - 5.755 bytes/cycle - 16465.30 MiB/sec @ 3 ghz - -Small key speed test - 1-byte keys - 26.00 cycles/hash -Small key speed test - 2-byte keys - 26.00 cycles/hash -Small key speed test - 3-byte keys - 26.00 cycles/hash -Small key speed test - 4-byte keys - 29.00 cycles/hash -Small key speed test - 5-byte keys - 39.00 cycles/hash -Small key speed test - 6-byte keys - 39.00 cycles/hash -Small key speed test - 7-byte keys - 39.00 cycles/hash -Small key speed test - 8-byte keys - 29.58 cycles/hash -Small key speed test - 9-byte keys - 37.25 cycles/hash -Small key speed test - 10-byte keys - 37.19 cycles/hash -Small key speed test - 11-byte keys - 37.42 cycles/hash -Small key speed test - 12-byte keys - 37.00 cycles/hash -Small key speed test - 13-byte keys - 37.00 cycles/hash -Small key speed test - 14-byte keys - 37.00 cycles/hash -Small key speed test - 15-byte keys - 37.00 cycles/hash -Small key speed test - 16-byte keys - 37.00 cycles/hash -Small key speed test - 17-byte keys - 41.00 cycles/hash -Small key speed test - 18-byte keys - 41.00 cycles/hash -Small key speed test - 19-byte keys - 41.00 cycles/hash -Small key speed test - 20-byte keys - 39.99 cycles/hash -Small key speed test - 21-byte keys - 39.84 cycles/hash -Small key speed test - 22-byte keys - 39.95 cycles/hash -Small key speed test - 23-byte keys - 39.86 cycles/hash -Small key speed test - 24-byte keys - 39.63 cycles/hash -Small key speed test - 25-byte keys - 39.67 cycles/hash -Small key speed test - 26-byte keys - 39.67 cycles/hash -Small key speed test - 27-byte keys - 39.65 cycles/hash -Small key speed test - 28-byte keys - 39.63 cycles/hash -Small key speed test - 29-byte keys - 39.68 cycles/hash -Small key speed test - 30-byte keys - 39.65 cycles/hash -Small key speed test - 31-byte keys - 39.68 cycles/hash -Average 37.108 cycles/hash +Alignment 7 - 5.936 bytes/cycle - 16982.41 MiB/sec @ 3 ghz +Alignment 6 - 5.937 bytes/cycle - 16986.28 MiB/sec @ 3 ghz +Alignment 5 - 5.938 bytes/cycle - 16987.99 MiB/sec @ 3 ghz +Alignment 4 - 5.940 bytes/cycle - 16995.51 MiB/sec @ 3 ghz +Alignment 3 - 5.937 bytes/cycle - 16986.17 MiB/sec @ 3 ghz +Alignment 2 - 5.937 bytes/cycle - 16986.53 MiB/sec @ 3 ghz +Alignment 1 - 5.937 bytes/cycle - 16986.02 MiB/sec @ 3 ghz +Alignment 0 - 6.234 bytes/cycle - 17834.64 MiB/sec @ 3 ghz +Average - 5.975 bytes/cycle - 17093.19 MiB/sec @ 3 ghz + +Small key speed test - 1-byte keys - 29.00 cycles/hash +Small key speed test - 2-byte keys - 29.00 cycles/hash +Small key speed test - 3-byte keys - 29.00 cycles/hash +Small key speed test - 4-byte keys - 29.49 cycles/hash +Small key speed test - 5-byte keys - 29.00 cycles/hash +Small key speed test - 6-byte keys - 29.00 cycles/hash +Small key speed test - 7-byte keys - 29.47 cycles/hash +Small key speed test - 8-byte keys - 29.33 cycles/hash +Small key speed test - 9-byte keys - 29.89 cycles/hash +Small key speed test - 10-byte keys - 29.88 cycles/hash +Small key speed test - 11-byte keys - 29.83 cycles/hash +Small key speed test - 12-byte keys - 29.77 cycles/hash +Small key speed test - 13-byte keys - 29.75 cycles/hash +Small key speed test - 14-byte keys - 29.74 cycles/hash +Small key speed test - 15-byte keys - 29.73 cycles/hash +Small key speed test - 16-byte keys - 29.73 cycles/hash +Small key speed test - 17-byte keys - 31.00 cycles/hash +Small key speed test - 18-byte keys - 31.00 cycles/hash +Small key speed test - 19-byte keys - 31.00 cycles/hash +Small key speed test - 20-byte keys - 31.00 cycles/hash +Small key speed test - 21-byte keys - 32.00 cycles/hash +Small key speed test - 22-byte keys - 32.00 cycles/hash +Small key speed test - 23-byte keys - 32.00 cycles/hash +Small key speed test - 24-byte keys - 31.90 cycles/hash +Small key speed test - 25-byte keys - 32.00 cycles/hash +Small key speed test - 26-byte keys - 32.00 cycles/hash +Small key speed test - 27-byte keys - 32.00 cycles/hash +Small key speed test - 28-byte keys - 31.99 cycles/hash +Small key speed test - 29-byte keys - 31.99 cycles/hash +Small key speed test - 30-byte keys - 32.00 cycles/hash +Small key speed test - 31-byte keys - 32.00 cycles/hash +Average 30.565 cycles/hash [[[ 'Hashmap' Speed Tests ]]]