diff --git a/mbo/hash/README.md b/mbo/hash/README.md index c66c58d..dee2263 100644 --- a/mbo/hash/README.md +++ b/mbo/hash/README.md @@ -306,195 +306,259 @@ Everything between the markers is generated per machine by `publish` from the committed bundles - regenerate it, don't hand-edit: - + -### AMD Ryzen 9 9950X 16-Core Processor · Linux · x86_64 · 10-core · gcc-15 · 80a4c8a8 +### AMD Ryzen 9 9950X 16-Core Processor · Linux · x86_64 · 10-core · gcc-15 · 29b54ccd - + -![mbo/hash 64-bit latency, AMD Ryzen 9 9950X 16-Core Processor · Linux · x86_64 · 10-core · gcc-15 · 80a4c8a8](measurements/charts/linux-x86-64-amd-ryzen-9-9950x-16-core-processor_gcc-15_latency64.svg) +![mbo/hash 64-bit latency, AMD Ryzen 9 9950X 16-Core Processor · Linux · x86_64 · 10-core · gcc-15 · 29b54ccd](measurements/charts/linux-x86-64-amd-ryzen-9-9950x-16-core-processor_gcc-15_latency64.svg) #### 64-bit latency (ns/hash at exact length, mean of the 3 best of 9 reps; lower is better) -| Length | mumbo | rapidhash | xxh3 | xxh64 | murmur3 | siphash24 | fnv1a | dumbo | -| -----: | ----: | --------: | -------: | ----: | ------: | --------: | -------: | ----: | -| 1 B | 1.38 | 1.70 | 1.08 | 1.49 | 2.37 | 5.33 | **0.36** | 1.12 | -| 3 B | 1.47 | 1.65 | 1.08 | 2.10 | 2.83 | 5.99 | **0.72** | 1.56 | -| 5 B | 1.29 | 1.65 | **0.98** | 1.93 | 2.57 | 5.20 | 1.26 | 1.25 | -| 7 B | 1.29 | 1.70 | **0.99** | 2.59 | 2.57 | 5.15 | 1.55 | 1.25 | -| 8 B | 1.31 | 1.46 | **0.98** | 1.93 | 2.57 | 6.48 | 1.78 | 1.25 | -| 11 B | 1.30 | 1.46 | **0.79** | 2.99 | 3.38 | 7.67 | 2.55 | 1.90 | -| 15 B | 1.29 | 1.46 | **0.79** | 3.53 | 2.98 | 7.15 | 3.72 | 1.40 | -| 16 B | 1.29 | 1.47 | **0.79** | 2.36 | 2.76 | 8.00 | 4.04 | 1.40 | -| 19 B | 1.83 | 1.83 | **1.62** | 3.47 | 3.85 | 8.59 | 4.99 | 2.26 | -| 22 B | 1.86 | 1.83 | **1.62** | 3.63 | 3.54 | 8.19 | 6.09 | 1.78 | -| 27 B | 1.83 | 1.83 | **1.62** | 4.04 | 4.49 | 10.05 | 8.10 | 2.66 | -| 32 B | 1.84 | 1.83 | **1.62** | 4.20 | 3.66 | 11.22 | 10.21 | 2.24 | -| 38 B | 2.02 | **2.01** | 2.51 | 5.81 | 4.47 | 11.27 | 12.71 | 2.68 | -| 47 B | 2.02 | **2.01** | 2.54 | 7.07 | 4.91 | 12.88 | 18.22 | 3.27 | -| 48 B | 2.02 | **2.01** | 2.51 | 5.63 | 4.65 | 14.46 | 18.86 | 3.24 | -| 63 B | 2.29 | **2.19** | 2.51 | 8.59 | 5.76 | 16.16 | 26.38 | 4.23 | -| 64 B | 2.29 | **2.18** | 2.51 | 5.24 | 5.58 | 17.69 | 26.84 | 4.24 | -| 127 B | 4.19 | **3.86** | 4.34 | 11.13 | 9.50 | 29.09 | 67.19 | 9.19 | -| 128 B | 9.98 | **3.85** | 4.31 | 7.14 | 9.48 | 30.60 | 67.82 | 9.17 | -| 256 B | 11.85 | **5.85** | 55.39 | 11.11 | 18.18 | 56.41 | 163.2 | 21.87 | -| 1 KiB | 34.91 | **19.25** | 98.66 | 34.75 | 72.44 | 213.9 | 708.3 | 116.9 | -| 4 KiB | 133.5 | **72.43** | 320.9 | 130.3 | 293.2 | 834.5 | 2886 | 527.5 | - -![mbo/hash 64-bit throughput (Short), AMD Ryzen 9 9950X 16-Core Processor · Linux · x86_64 · 10-core · gcc-15 · 80a4c8a8](measurements/charts/linux-x86-64-amd-ryzen-9-9950x-16-core-processor_gcc-15_throughput64_Short.svg) +| Length | mumbo | rapidhash | xxh3 | xxh64 | murmur3 | siphash24 | fnv1a | dumbo | +| -----: | -------: | --------: | -------: | ----: | ------: | --------: | -------: | ----: | +| 1 B | 1.38 | 1.65 | 1.08 | 1.50 | 2.37 | 5.33 | **0.36** | 1.12 | +| 3 B | 1.47 | 1.65 | 1.08 | 2.09 | 2.83 | 6.01 | **0.72** | 1.56 | +| 5 B | 1.29 | 1.64 | **0.99** | 1.93 | 2.57 | 5.17 | 1.17 | 1.25 | +| 7 B | 1.29 | 1.64 | **0.99** | 2.59 | 2.57 | 5.18 | 1.55 | 1.25 | +| 8 B | 1.29 | 1.47 | **0.98** | 1.93 | 2.57 | 6.49 | 1.77 | 1.25 | +| 11 B | 1.29 | 1.46 | **0.79** | 3.00 | 3.38 | 7.68 | 2.55 | 1.90 | +| 15 B | 1.30 | 1.46 | **0.79** | 3.53 | 2.99 | 7.16 | 3.71 | 1.40 | +| 16 B | 1.30 | 1.47 | **0.79** | 2.35 | 2.77 | 8.02 | 4.05 | 1.40 | +| 19 B | 1.83 | 1.83 | **1.62** | 3.48 | 3.85 | 8.61 | 4.99 | 2.26 | +| 22 B | 1.83 | 1.83 | **1.62** | 3.63 | 3.53 | 8.21 | 6.08 | 1.78 | +| 27 B | 1.83 | 1.83 | **1.62** | 4.04 | 4.49 | 10.07 | 8.11 | 2.66 | +| 32 B | 1.82 | 1.83 | **1.62** | 4.20 | 3.66 | 11.22 | 10.22 | 2.24 | +| 38 B | 2.02 | **2.01** | 2.51 | 5.81 | 4.48 | 11.26 | 12.73 | 2.67 | +| 47 B | **2.01** | 2.01 | 2.51 | 7.07 | 4.91 | 12.89 | 18.05 | 3.30 | +| 48 B | **2.01** | 2.01 | 2.51 | 5.64 | 4.65 | 14.46 | 18.75 | 3.25 | +| 63 B | 2.29 | **2.19** | 2.51 | 8.56 | 5.76 | 16.16 | 26.50 | 4.26 | +| 64 B | 2.29 | **2.19** | 2.51 | 5.24 | 5.57 | 17.67 | 26.93 | 4.29 | +| 127 B | 4.18 | **3.85** | 4.35 | 11.14 | 9.50 | 29.07 | 67.30 | 9.19 | +| 128 B | 10.12 | **3.86** | 4.32 | 7.14 | 9.49 | 30.60 | 67.81 | 9.18 | +| 256 B | 11.84 | **5.86** | 54.94 | 11.11 | 18.17 | 56.42 | 163.2 | 21.92 | +| 1 KiB | 34.92 | **19.27** | 98.31 | 34.76 | 72.38 | 214.0 | 708.6 | 116.9 | +| 4 KiB | 133.2 | **72.64** | 319.1 | 130.4 | 293.3 | 834.4 | 2889 | 527.8 | + +![mbo/hash 64-bit throughput (Short), AMD Ryzen 9 9950X 16-Core Processor · Linux · x86_64 · 10-core · gcc-15 · 29b54ccd](measurements/charts/linux-x86-64-amd-ryzen-9-9950x-16-core-processor_gcc-15_throughput64_Short.svg) #### 64-bit throughput, Short lengths (GiB/s over lengths <= max, mean of the 3 best of 9 reps; higher is better) | max len | mumbo | rapidhash | xxh3 | xxh64 | murmur3 | siphash24 | fnv1a | dumbo | | ------: | ----: | --------: | -------: | ----: | ------: | --------: | ----: | ----: | -| 8 B | 2.41 | 2.04 | **3.12** | 1.65 | 1.29 | 0.63 | 2.92 | 2.60 | -| 12 B | 4.27 | 3.73 | **5.75** | 2.51 | 2.05 | 0.98 | 3.02 | 3.80 | -| 16 B | 6.09 | 5.17 | **8.38** | 3.19 | 2.88 | 1.33 | 3.12 | 5.39 | -| 23 B | 7.27 | 6.37 | **9.13** | 3.84 | 3.51 | 1.61 | 2.98 | 6.31 | -| 31 B | 8.61 | 7.75 | **10.6** | 4.46 | 4.11 | 1.87 | 2.96 | 7.20 | -| 38 B | 8.26 | 7.69 | **10.1** | 4.37 | 4.08 | 1.84 | 2.82 | 7.04 | -| 53 B | 9.11 | 8.59 | **10.9** | 4.66 | 4.46 | 2.00 | 2.77 | 7.52 | -| 80 B | 9.14 | 8.58 | **10.9** | 4.70 | 4.47 | 2.00 | 2.74 | 7.47 | -| 128 B | 9.15 | 8.57 | **10.9** | 4.73 | 4.47 | 2.00 | 2.74 | 7.47 | - -![mbo/hash 64-bit throughput (Web), AMD Ryzen 9 9950X 16-Core Processor · Linux · x86_64 · 10-core · gcc-15 · 80a4c8a8](measurements/charts/linux-x86-64-amd-ryzen-9-9950x-16-core-processor_gcc-15_throughput64_Web.svg) +| 8 B | 2.41 | 2.26 | **3.12** | 1.65 | 1.29 | 0.63 | 2.92 | 2.60 | +| 12 B | 4.25 | 4.13 | **5.75** | 2.50 | 2.05 | 0.98 | 3.02 | 3.79 | +| 16 B | 6.16 | 6.03 | **8.37** | 3.19 | 2.89 | 1.33 | 3.12 | 5.37 | +| 23 B | 7.25 | 7.03 | **9.19** | 3.83 | 3.51 | 1.61 | 2.98 | 6.30 | +| 31 B | 8.63 | 8.54 | **10.5** | 4.46 | 4.12 | 1.87 | 2.97 | 7.16 | +| 38 B | 8.25 | 8.47 | **10.1** | 4.36 | 4.08 | 1.84 | 2.82 | 7.03 | +| 53 B | 9.17 | 9.45 | **10.9** | 4.65 | 4.47 | 2.00 | 2.77 | 7.47 | +| 80 B | 9.19 | 9.44 | **10.9** | 4.70 | 4.47 | 2.00 | 2.73 | 7.44 | +| 128 B | 9.15 | 9.42 | **10.9** | 4.72 | 4.47 | 2.00 | 2.74 | 7.46 | + +![mbo/hash 64-bit throughput (Web), AMD Ryzen 9 9950X 16-Core Processor · Linux · x86_64 · 10-core · gcc-15 · 29b54ccd](measurements/charts/linux-x86-64-amd-ryzen-9-9950x-16-core-processor_gcc-15_throughput64_Web.svg) #### 64-bit throughput, Web lengths (GiB/s over lengths <= max, mean of the 3 best of 9 reps; higher is better) | max len | mumbo | rapidhash | xxh3 | xxh64 | murmur3 | siphash24 | fnv1a | dumbo | | ------: | ----: | --------: | -------: | ----: | ------: | --------: | ----: | ----: | -| 15 B | 4.82 | 4.21 | **6.54** | 2.80 | 2.39 | 1.14 | 3.26 | 4.53 | -| 28 B | 7.85 | 7.15 | **9.26** | 4.27 | 3.81 | 1.74 | 2.81 | 6.62 | -| 45 B | 11.9 | 11.8 | **12.0** | 5.42 | 5.65 | 2.43 | 2.53 | 8.83 | -| 75 B | 15.8 | **15.9** | 14.6 | 6.46 | 7.00 | 2.86 | 2.14 | 9.88 | -| 120 B | 17.7 | **18.5** | 16.6 | 7.53 | 7.93 | 3.12 | 1.92 | 9.98 | -| 220 B | 17.3 | **19.9** | 17.4 | 8.18 | 8.47 | 3.27 | 1.85 | 10.1 | -| 512 B | 17.7 | **21.4** | 11.3 | 8.98 | 8.82 | 3.36 | 1.74 | 9.47 | -| 2 KiB | 19.0 | **24.3** | 10.9 | 10.5 | 9.53 | 3.55 | 1.63 | 8.93 | -| 4 KiB | 18.7 | **23.8** | 10.4 | 10.4 | 9.40 | 3.51 | 1.63 | 8.94 | - -![mbo/hash 128-bit latency, AMD Ryzen 9 9950X 16-Core Processor · Linux · x86_64 · 10-core · gcc-15 · 80a4c8a8](measurements/charts/linux-x86-64-amd-ryzen-9-9950x-16-core-processor_gcc-15_latency128.svg) +| 15 B | 4.74 | 4.67 | **6.54** | 2.80 | 2.39 | 1.14 | 3.26 | 4.53 | +| 28 B | 7.81 | 7.86 | **9.26** | 4.27 | 3.81 | 1.75 | 2.81 | 6.60 | +| 45 B | 11.9 | **12.9** | 12.0 | 5.43 | 5.65 | 2.43 | 2.47 | 8.81 | +| 75 B | 15.7 | **16.6** | 14.6 | 6.46 | 7.01 | 2.85 | 2.12 | 9.85 | +| 120 B | 17.7 | **18.5** | 16.5 | 7.54 | 7.94 | 3.12 | 1.91 | 9.94 | +| 220 B | 17.3 | **19.9** | 17.4 | 8.18 | 8.47 | 3.27 | 1.84 | 10.0 | +| 512 B | 17.8 | **21.5** | 11.3 | 8.99 | 8.83 | 3.36 | 1.73 | 9.49 | +| 2 KiB | 19.0 | **24.3** | 11.0 | 10.5 | 9.55 | 3.55 | 1.63 | 8.94 | +| 4 KiB | 18.7 | **23.8** | 10.4 | 10.4 | 9.41 | 3.51 | 1.63 | 8.94 | + +![mbo/hash 128-bit latency, AMD Ryzen 9 9950X 16-Core Processor · Linux · x86_64 · 10-core · gcc-15 · 29b54ccd](measurements/charts/linux-x86-64-amd-ryzen-9-9950x-16-core-processor_gcc-15_latency128.svg) #### 128-bit latency (ns/hash at exact length, mean of the 3 best of 9 reps; native-128 only; lower is better) | Length | jumbo | xxh3 | murmur3 | | -----: | --------: | -------: | ------: | -| 1 B | 2.37 | **1.45** | 2.58 | -| 3 B | 2.38 | **1.45** | 3.05 | -| 5 B | 2.22 | **1.25** | 2.82 | -| 7 B | 2.22 | **1.25** | 2.82 | -| 8 B | 2.21 | **1.25** | 2.82 | -| 11 B | 2.20 | **1.64** | 3.59 | -| 15 B | 2.20 | **1.64** | 3.16 | -| 16 B | 2.20 | **1.64** | 3.02 | +| 1 B | 2.37 | **1.91** | 2.58 | +| 3 B | 2.38 | **1.92** | 3.06 | +| 5 B | 2.22 | **1.53** | 2.82 | +| 7 B | 2.22 | **1.53** | 2.82 | +| 8 B | 2.21 | **1.53** | 2.82 | +| 11 B | 2.20 | **1.81** | 3.59 | +| 15 B | 2.20 | **1.81** | 3.16 | +| 16 B | 2.20 | **1.81** | 3.02 | | 19 B | 2.77 | **2.23** | 4.04 | -| 22 B | 2.77 | **2.23** | 3.78 | +| 22 B | 2.77 | **2.24** | 3.78 | | 27 B | 2.77 | **2.23** | 4.64 | | 32 B | 2.77 | **2.23** | 3.89 | -| 38 B | 3.45 | **3.16** | 4.67 | -| 47 B | 3.44 | **3.13** | 5.07 | -| 48 B | 3.45 | **3.13** | 4.85 | -| 63 B | 3.98 | **3.12** | 6.03 | -| 64 B | 4.66 | **3.13** | 5.83 | -| 127 B | 6.71 | **5.04** | 9.76 | -| 128 B | 5.74 | **5.00** | 9.78 | -| 256 B | **7.97** | 58.27 | 18.47 | -| 1 KiB | **22.36** | 101.2 | 72.76 | -| 4 KiB | **80.79** | 322.4 | 293.4 | - -### Apple M5 Pro · MacOS · arm64 · 18-core · clang-21 · 80a4c8a8 - - - -![mbo/hash 64-bit latency, Apple M5 Pro · MacOS · arm64 · 18-core · clang-21 · 80a4c8a8](measurements/charts/macos-arm64-apple-m5-pro_clang-21_latency64.svg) +| 38 B | 3.45 | **3.24** | 4.68 | +| 47 B | 3.45 | **3.24** | 5.07 | +| 48 B | 3.45 | **3.24** | 4.85 | +| 63 B | 3.98 | **3.24** | 6.03 | +| 64 B | 4.66 | **3.24** | 5.84 | +| 127 B | 6.72 | **5.23** | 9.77 | +| 128 B | 5.74 | **5.19** | 9.78 | +| 256 B | **7.99** | 57.62 | 18.46 | +| 1 KiB | **22.41** | 100.8 | 72.80 | +| 4 KiB | **80.89** | 322.0 | 293.5 | + +![mbo/hash 128-bit throughput (Short), AMD Ryzen 9 9950X 16-Core Processor · Linux · x86_64 · 10-core · gcc-15 · 29b54ccd](measurements/charts/linux-x86-64-amd-ryzen-9-9950x-16-core-processor_gcc-15_throughput128_Short.svg) + +#### 128-bit throughput, Short lengths (GiB/s over lengths <= max, mean of the 3 best of 9 reps; higher is better) + +| max len | jumbo | xxh3 | murmur3 | +| ------: | ----: | -------: | ------: | +| 8 B | 1.50 | **1.91** | 1.21 | +| 12 B | 2.68 | **3.19** | 1.93 | +| 16 B | 3.83 | **4.41** | 2.72 | +| 23 B | 4.65 | **5.27** | 3.32 | +| 31 B | 5.54 | **6.19** | 3.91 | +| 38 B | 5.46 | **6.08** | 3.87 | +| 53 B | 6.01 | **6.68** | 4.25 | +| 80 B | 6.00 | **6.66** | 4.25 | +| 128 B | 6.01 | **6.68** | 4.24 | + +![mbo/hash 128-bit throughput (Web), AMD Ryzen 9 9950X 16-Core Processor · Linux · x86_64 · 10-core · gcc-15 · 29b54ccd](measurements/charts/linux-x86-64-amd-ryzen-9-9950x-16-core-processor_gcc-15_throughput128_Web.svg) + +#### 128-bit throughput, Web lengths (GiB/s over lengths <= max, mean of the 3 best of 9 reps; higher is better) + +| max len | jumbo | xxh3 | murmur3 | +| ------: | -------: | -------: | ------: | +| 15 B | 3.04 | **3.63** | 2.25 | +| 28 B | 5.06 | **5.71** | 3.63 | +| 45 B | 7.74 | **8.20** | 5.42 | +| 75 B | 9.69 | **10.4** | 6.74 | +| 120 B | 11.0 | **12.1** | 7.67 | +| 220 B | 12.2 | **13.0** | 8.21 | +| 512 B | **13.4** | 9.45 | 8.58 | +| 2 KiB | **15.8** | 9.46 | 9.32 | +| 4 KiB | **15.4** | 9.01 | 9.17 | + +### Apple M5 Pro · MacOS · arm64 · 18-core · clang-21 · 29b54ccd + + + +![mbo/hash 64-bit latency, Apple M5 Pro · MacOS · arm64 · 18-core · clang-21 · 29b54ccd](measurements/charts/macos-arm64-apple-m5-pro_clang-21_latency64.svg) #### 64-bit latency (ns/hash at exact length, mean of the 3 best of 9 reps; lower is better) | Length | mumbo | rapidhash | xxh3 | xxh64 | murmur3 | siphash24 | fnv1a | dumbo | | -----: | --------: | --------: | ----: | ----: | ------: | --------: | -------: | -------: | -| 1 B | 2.20 | 2.00 | 1.83 | 2.06 | 2.74 | 6.49 | **0.49** | 1.58 | -| 3 B | 2.33 | 1.99 | 1.94 | 2.73 | 2.99 | 6.58 | **1.04** | 2.84 | -| 5 B | 2.58 | 1.74 | 1.63 | 2.12 | 2.99 | 6.74 | 1.81 | **1.49** | -| 7 B | 2.59 | 1.74 | 1.64 | 2.82 | 2.96 | 6.90 | 2.66 | **1.47** | -| 8 B | 2.08 | 1.74 | 1.61 | 2.26 | 3.11 | 9.16 | 2.85 | **1.52** | -| 11 B | 2.03 | **1.73** | 1.73 | 3.23 | 3.51 | 9.36 | 4.41 | 2.71 | -| 15 B | 1.96 | **1.74** | 1.74 | 3.64 | 3.57 | 9.35 | 6.15 | 1.93 | -| 16 B | 2.03 | **1.74** | 1.74 | 2.73 | 3.97 | 12.16 | 6.52 | 1.88 | -| 19 B | 2.44 | **2.03** | 2.39 | 3.84 | 4.45 | 12.31 | 7.60 | 3.13 | -| 22 B | 2.44 | **1.97** | 2.39 | 4.00 | 4.38 | 12.31 | 8.99 | 2.47 | -| 27 B | 2.44 | **2.02** | 2.39 | 4.74 | 5.15 | 15.38 | 11.63 | 3.68 | -| 32 B | 2.44 | **2.00** | 2.39 | 5.09 | 5.43 | 18.44 | 15.37 | 3.12 | -| 38 B | 2.84 | **2.43** | 3.79 | 6.88 | 5.92 | 18.66 | 19.29 | 3.67 | -| 47 B | 2.84 | **2.44** | 3.79 | 8.52 | 6.32 | 21.84 | 27.47 | 4.26 | -| 48 B | 2.83 | **2.43** | 3.78 | 6.70 | 6.84 | 25.14 | 28.41 | 4.25 | -| 63 B | 3.36 | **2.96** | 3.79 | 10.31 | 7.99 | 28.70 | 40.24 | 5.78 | -| 64 B | 3.29 | **2.93** | 3.78 | 6.65 | 8.58 | 32.04 | 41.04 | 5.66 | -| 127 B | 6.04 | **4.86** | 6.50 | 13.78 | 15.04 | 57.91 | 117.3 | 12.74 | -| 128 B | 6.55 | **4.87** | 6.51 | 9.64 | 15.95 | 61.38 | 118.4 | 12.57 | -| 256 B | 8.69 | **7.44** | 26.58 | 16.21 | 33.49 | 121.0 | 287.1 | 31.04 | -| 1 KiB | 23.74 | **22.48** | 58.64 | 55.42 | 165.2 | 476.6 | 1354 | 194.6 | -| 4 KiB | **82.36** | 83.87 | 175.4 | 225.4 | 694.5 | 1915 | 5610 | 882.1 | - -![mbo/hash 64-bit throughput (Short), Apple M5 Pro · MacOS · arm64 · 18-core · clang-21 · 80a4c8a8](measurements/charts/macos-arm64-apple-m5-pro_clang-21_throughput64_Short.svg) +| 1 B | 2.13 | 1.95 | 1.76 | 2.04 | 2.81 | 6.58 | **0.50** | 1.61 | +| 3 B | 2.31 | 1.88 | 1.79 | 2.67 | 2.98 | 6.73 | **1.04** | 2.75 | +| 5 B | 2.54 | 1.74 | 1.65 | 2.11 | 3.14 | 6.93 | 1.81 | **1.59** | +| 7 B | 2.34 | 1.74 | 1.66 | 2.85 | 3.17 | 6.84 | 2.52 | **1.58** | +| 8 B | 2.09 | 1.71 | 1.64 | 2.24 | 3.16 | 9.15 | 2.87 | **1.56** | +| 11 B | 2.01 | **1.72** | 1.76 | 3.30 | 3.56 | 9.31 | 4.30 | 3.20 | +| 15 B | 2.01 | **1.73** | 1.77 | 3.67 | 3.60 | 9.33 | 6.19 | 1.88 | +| 16 B | 1.99 | **1.73** | 1.74 | 2.76 | 3.99 | 12.16 | 6.65 | 1.88 | +| 19 B | 2.45 | **2.02** | 2.40 | 3.87 | 4.49 | 12.35 | 7.55 | 3.48 | +| 22 B | 2.46 | **2.05** | 2.38 | 3.98 | 4.63 | 12.27 | 9.19 | 2.44 | +| 27 B | 2.45 | **1.99** | 2.40 | 4.74 | 5.17 | 15.34 | 11.77 | 3.85 | +| 32 B | 2.44 | **2.02** | 2.39 | 5.06 | 5.47 | 18.40 | 15.37 | 3.18 | +| 38 B | 2.84 | **2.43** | 3.79 | 6.91 | 5.93 | 18.61 | 19.31 | 3.52 | +| 47 B | 2.84 | **2.45** | 3.79 | 8.51 | 6.36 | 21.90 | 27.43 | 4.25 | +| 48 B | 2.86 | **2.46** | 3.79 | 6.71 | 6.90 | 25.20 | 28.48 | 4.17 | +| 63 B | 3.32 | **2.90** | 3.80 | 10.31 | 8.17 | 28.74 | 40.22 | 5.64 | +| 64 B | 3.47 | **2.88** | 3.83 | 6.75 | 8.60 | 32.04 | 41.05 | 5.73 | +| 127 B | 6.07 | **4.85** | 6.52 | 13.87 | 15.04 | 58.07 | 118.3 | 12.54 | +| 128 B | 6.55 | **4.85** | 6.52 | 9.83 | 16.29 | 61.74 | 118.6 | 12.49 | +| 256 B | 8.68 | **7.51** | 26.66 | 16.23 | 33.70 | 121.3 | 285.0 | 31.45 | +| 1 KiB | 23.71 | **22.50** | 58.86 | 55.51 | 165.6 | 479.7 | 1352 | 194.5 | +| 4 KiB | **82.58** | 84.34 | 175.5 | 229.4 | 707.0 | 1914 | 5625 | 883.2 | + +![mbo/hash 64-bit throughput (Short), Apple M5 Pro · MacOS · arm64 · 18-core · clang-21 · 29b54ccd](measurements/charts/macos-arm64-apple-m5-pro_clang-21_throughput64_Short.svg) #### 64-bit throughput, Short lengths (GiB/s over lengths <= max, mean of the 3 best of 9 reps; higher is better) -| max len | mumbo | rapidhash | xxh3 | xxh64 | murmur3 | siphash24 | fnv1a | dumbo | -| ------: | ----: | --------: | -------: | ----: | ------: | --------: | ----: | -------: | -| 8 B | 0.90 | 0.72 | 1.34 | 0.91 | 0.62 | 0.51 | 1.45 | **1.51** | -| 12 B | 1.85 | 1.44 | **2.26** | 1.45 | 1.06 | 0.75 | 1.61 | 2.15 | -| 16 B | 2.63 | 2.45 | 3.57 | 2.01 | 2.19 | 1.01 | 1.55 | **3.64** | -| 23 B | 3.34 | 3.44 | **3.89** | 2.27 | 2.46 | 1.17 | 1.40 | 3.70 | -| 31 B | 3.89 | 4.48 | **4.58** | 2.70 | 2.84 | 1.32 | 1.41 | 4.44 | -| 38 B | 3.78 | 4.40 | **4.56** | 2.64 | 2.75 | 1.30 | 1.33 | 4.29 | -| 53 B | 4.08 | 4.65 | **4.85** | 2.91 | 2.95 | 1.38 | 1.34 | 4.53 | -| 80 B | 4.08 | 4.71 | **4.93** | 2.91 | 2.94 | 1.38 | 1.37 | 4.73 | -| 128 B | 4.04 | 4.44 | **4.84** | 2.90 | 2.92 | 1.38 | 1.34 | 4.49 | +| max len | mumbo | rapidhash | xxh3 | xxh64 | murmur3 | siphash24 | fnv1a | dumbo | +| ------: | ----: | --------: | ---: | ----: | ------: | --------: | ----: | -------: | +| 8 B | 0.93 | 0.76 | 1.05 | 0.91 | 0.68 | 0.51 | 1.47 | **1.54** | +| 12 B | 1.76 | 1.49 | 2.05 | 1.44 | 1.10 | 0.75 | 1.60 | **2.34** | +| 16 B | 2.51 | 2.49 | 2.76 | 1.99 | 2.01 | 1.01 | 1.60 | **3.44** | +| 23 B | 3.36 | 3.88 | 3.44 | 2.26 | 2.30 | 1.17 | 1.84 | **3.92** | +| 31 B | 3.87 | 4.59 | 4.14 | 2.70 | 2.67 | 1.33 | 1.80 | **4.75** | +| 38 B | 3.76 | 4.33 | 3.98 | 2.64 | 2.59 | 1.30 | 1.62 | **4.67** | +| 53 B | 4.01 | 4.74 | 4.40 | 2.89 | 2.78 | 1.38 | 1.64 | **4.80** | +| 80 B | 4.07 | **4.83** | 4.39 | 2.88 | 2.79 | 1.38 | 1.61 | 4.83 | +| 128 B | 4.02 | 4.58 | 4.31 | 2.88 | 2.76 | 1.37 | 1.57 | **4.80** | -![mbo/hash 64-bit throughput (Web), Apple M5 Pro · MacOS · arm64 · 18-core · clang-21 · 80a4c8a8](measurements/charts/macos-arm64-apple-m5-pro_clang-21_throughput64_Web.svg) +![mbo/hash 64-bit throughput (Web), Apple M5 Pro · MacOS · arm64 · 18-core · clang-21 · 29b54ccd](measurements/charts/macos-arm64-apple-m5-pro_clang-21_throughput64_Web.svg) #### 64-bit throughput, Web lengths (GiB/s over lengths <= max, mean of the 3 best of 9 reps; higher is better) -| max len | mumbo | rapidhash | xxh3 | xxh64 | murmur3 | siphash24 | fnv1a | dumbo | -| ------: | -------: | --------: | -------: | ----: | ------: | --------: | ----: | ----: | -| 15 B | 2.04 | 1.56 | **2.58** | 1.55 | 1.55 | 0.88 | 1.82 | 2.47 | -| 28 B | 3.32 | 3.94 | **3.99** | 2.53 | 2.50 | 1.22 | 1.34 | 3.86 | -| 45 B | 5.52 | **6.19** | 5.95 | 3.65 | 3.98 | 1.57 | 1.27 | 5.83 | -| 75 B | 7.41 | 6.66 | **8.09** | 4.70 | 5.05 | 1.75 | 1.27 | 7.29 | -| 120 B | 8.85 | 9.09 | **9.61** | 5.59 | 5.54 | 1.81 | 1.16 | 7.64 | -| 220 B | 9.90 | **10.3** | 9.92 | 6.21 | 5.80 | 1.85 | 1.11 | 7.65 | -| 512 B | **11.0** | 10.9 | 9.48 | 6.63 | 5.68 | 1.85 | 1.02 | 7.01 | -| 2 KiB | 13.0 | **13.5** | 10.5 | 7.64 | 5.71 | 1.88 | 0.92 | 6.28 | -| 4 KiB | 12.5 | **13.4** | 10.2 | 7.53 | 5.71 | 1.87 | 0.93 | 6.34 | +| max len | mumbo | rapidhash | xxh3 | xxh64 | murmur3 | siphash24 | fnv1a | dumbo | +| ------: | -------: | --------: | ---: | ----: | ------: | --------: | ----: | -------: | +| 15 B | 1.97 | 1.70 | 2.39 | 1.56 | 1.50 | 0.88 | 1.79 | **2.62** | +| 28 B | 3.32 | 3.98 | 3.52 | 2.51 | 2.36 | 1.22 | 1.70 | **4.01** | +| 45 B | 5.57 | **6.08** | 5.42 | 3.51 | 3.80 | 1.56 | 1.29 | 5.82 | +| 75 B | **7.34** | 6.74 | 7.28 | 4.65 | 4.90 | 1.72 | 1.26 | 7.26 | +| 120 B | 8.91 | **9.00** | 8.68 | 5.53 | 5.36 | 1.81 | 1.15 | 7.44 | +| 220 B | 9.81 | **10.2** | 9.14 | 6.13 | 5.72 | 1.85 | 1.11 | 7.62 | +| 512 B | 10.9 | **11.1** | 8.86 | 6.64 | 5.71 | 1.85 | 1.02 | 6.98 | +| 2 KiB | 12.9 | **13.5** | 9.91 | 7.65 | 5.67 | 1.88 | 0.92 | 6.26 | +| 4 KiB | 12.4 | **13.2** | 9.61 | 7.00 | 5.58 | 1.86 | 0.92 | 6.26 | -![mbo/hash 128-bit latency, Apple M5 Pro · MacOS · arm64 · 18-core · clang-21 · 80a4c8a8](measurements/charts/macos-arm64-apple-m5-pro_clang-21_latency128.svg) +![mbo/hash 128-bit latency, Apple M5 Pro · MacOS · arm64 · 18-core · clang-21 · 29b54ccd](measurements/charts/macos-arm64-apple-m5-pro_clang-21_latency128.svg) #### 128-bit latency (ns/hash at exact length, mean of the 3 best of 9 reps; native-128 only; lower is better) | Length | jumbo | xxh3 | murmur3 | | -----: | --------: | -------: | ------: | -| 1 B | 3.12 | **2.32** | 2.75 | -| 3 B | 3.32 | **2.37** | 2.99 | -| 5 B | 3.12 | **2.22** | 3.01 | -| 7 B | 3.04 | **2.24** | 3.01 | -| 8 B | 2.93 | **2.23** | 3.10 | -| 11 B | 2.94 | **2.67** | 3.52 | -| 15 B | 2.93 | **2.67** | 3.53 | -| 16 B | 2.94 | **2.67** | 3.96 | -| 19 B | 3.83 | **3.47** | 4.46 | -| 22 B | 3.82 | **3.46** | 4.40 | -| 27 B | 3.82 | **3.46** | 5.09 | -| 32 B | 3.82 | **3.48** | 5.56 | -| 38 B | **4.44** | 4.97 | 5.86 | -| 47 B | **4.43** | 4.98 | 6.50 | -| 48 B | **4.45** | 4.99 | 6.92 | -| 63 B | 5.30 | **4.98** | 8.01 | -| 64 B | 6.18 | **4.98** | 8.59 | -| 127 B | 8.73 | **8.02** | 14.92 | -| 128 B | **7.45** | 8.02 | 16.09 | -| 256 B | **10.57** | 28.01 | 33.26 | -| 1 KiB | **31.59** | 60.37 | 164.7 | -| 4 KiB | **123.3** | 177.5 | 699.2 | +| 1 B | 3.13 | **2.55** | 2.80 | +| 3 B | 3.32 | **2.39** | 3.04 | +| 5 B | 3.16 | **2.30** | 3.15 | +| 7 B | 3.12 | **2.23** | 3.14 | +| 8 B | 2.95 | **2.24** | 3.20 | +| 11 B | 2.93 | **2.68** | 3.53 | +| 15 B | 2.92 | **2.66** | 3.64 | +| 16 B | 2.95 | **2.68** | 4.00 | +| 19 B | 3.81 | **3.52** | 4.50 | +| 22 B | 3.82 | **3.51** | 4.58 | +| 27 B | 3.84 | **3.59** | 5.15 | +| 32 B | 3.83 | **3.49** | 5.56 | +| 38 B | **4.46** | 5.00 | 5.90 | +| 47 B | **4.46** | 5.00 | 6.42 | +| 48 B | **4.46** | 5.03 | 7.24 | +| 63 B | 5.29 | **4.98** | 8.26 | +| 64 B | 6.17 | **5.03** | 8.66 | +| 127 B | 8.75 | **8.00** | 15.29 | +| 128 B | **7.50** | 8.05 | 15.93 | +| 256 B | **10.57** | 28.00 | 33.33 | +| 1 KiB | **31.72** | 60.92 | 165.3 | +| 4 KiB | **123.2** | 180.5 | 707.2 | + +![mbo/hash 128-bit throughput (Short), Apple M5 Pro · MacOS · arm64 · 18-core · clang-21 · 29b54ccd](measurements/charts/macos-arm64-apple-m5-pro_clang-21_throughput128_Short.svg) + +#### 128-bit throughput, Short lengths (GiB/s over lengths <= max, mean of the 3 best of 9 reps; higher is better) + +| max len | jumbo | xxh3 | murmur3 | +| ------: | ----: | -------: | ------: | +| 8 B | 0.83 | **0.88** | 0.70 | +| 12 B | 1.54 | **1.76** | 1.16 | +| 16 B | 2.26 | **2.28** | 1.95 | +| 23 B | 2.75 | **2.95** | 2.27 | +| 31 B | 3.49 | **3.62** | 2.64 | +| 38 B | 3.40 | **3.42** | 2.60 | +| 53 B | 3.50 | **3.71** | 2.79 | +| 80 B | 3.47 | **3.75** | 2.79 | +| 128 B | 3.59 | **3.73** | 2.75 | + +![mbo/hash 128-bit throughput (Web), Apple M5 Pro · MacOS · arm64 · 18-core · clang-21 · 29b54ccd](measurements/charts/macos-arm64-apple-m5-pro_clang-21_throughput128_Web.svg) + +#### 128-bit throughput, Web lengths (GiB/s over lengths <= max, mean of the 3 best of 9 reps; higher is better) + +| max len | jumbo | xxh3 | murmur3 | +| ------: | -------: | -------: | ------: | +| 15 B | 1.77 | **1.88** | 1.48 | +| 28 B | 3.05 | **3.18** | 2.35 | +| 45 B | **4.82** | 4.50 | 3.76 | +| 75 B | **6.41** | 6.08 | 4.89 | +| 120 B | **7.20** | 7.20 | 5.39 | +| 220 B | **8.05** | 7.85 | 5.76 | +| 512 B | **8.97** | 7.74 | 5.70 | +| 2 KiB | **10.6** | 8.74 | 5.68 | +| 4 KiB | **10.2** | 8.35 | 5.59 | diff --git a/mbo/hash/measurements/charts/linux-x86-64-amd-ryzen-9-9950x-16-core-processor_gcc-15_latency128.svg b/mbo/hash/measurements/charts/linux-x86-64-amd-ryzen-9-9950x-16-core-processor_gcc-15_latency128.svg index ec5b686..fb0b7bc 100644 --- a/mbo/hash/measurements/charts/linux-x86-64-amd-ryzen-9-9950x-16-core-processor_gcc-15_latency128.svg +++ b/mbo/hash/measurements/charts/linux-x86-64-amd-ryzen-9-9950x-16-core-processor_gcc-15_latency128.svg @@ -1,21 +1,21 @@ mbo/hash - 128-bit latency -AMD Ryzen 9 9950X 16-Core Processor · Linux · x86_64 · 10-core · gcc-15 · 80a4c8a8 - -2 - -5 - -10 - -20 - -50 - -100 - -200 +AMD Ryzen 9 9950X 16-Core Processor · Linux · x86_64 · 10-core · gcc-15 · 29b54ccd + +2 + +5 + +10 + +20 + +50 + +100 + +200 1 B @@ -38,13 +38,13 @@ 4 KiB key length (log scale) ns / op (log scale) - + jumbo - + xxh3 - + murmur3 diff --git a/mbo/hash/measurements/charts/linux-x86-64-amd-ryzen-9-9950x-16-core-processor_gcc-15_latency64.svg b/mbo/hash/measurements/charts/linux-x86-64-amd-ryzen-9-9950x-16-core-processor_gcc-15_latency64.svg index 4cb8fa6..eecd039 100644 --- a/mbo/hash/measurements/charts/linux-x86-64-amd-ryzen-9-9950x-16-core-processor_gcc-15_latency64.svg +++ b/mbo/hash/measurements/charts/linux-x86-64-amd-ryzen-9-9950x-16-core-processor_gcc-15_latency64.svg @@ -1,31 +1,31 @@ mbo/hash - 64-bit latency -AMD Ryzen 9 9950X 16-Core Processor · Linux · x86_64 · 10-core · gcc-15 · 80a4c8a8 - -0.5 +AMD Ryzen 9 9950X 16-Core Processor · Linux · x86_64 · 10-core · gcc-15 · 29b54ccd + +0.5 1 - -2 - -5 - -10 + +2 + +5 + +10 20 50 - -100 + +100 200 - -500 + +500 1000 - -2000 + +2000 1 B @@ -48,28 +48,28 @@ 4 KiB key length (log scale) ns / op (log scale) - + mumbo - + rapidhash - + xxh3 - + xxh64 - + murmur3 - + siphash24 - + fnv1a - + dumbo diff --git a/mbo/hash/measurements/charts/linux-x86-64-amd-ryzen-9-9950x-16-core-processor_gcc-15_throughput128_Short.svg b/mbo/hash/measurements/charts/linux-x86-64-amd-ryzen-9-9950x-16-core-processor_gcc-15_throughput128_Short.svg new file mode 100644 index 0000000..dcd11eb --- /dev/null +++ b/mbo/hash/measurements/charts/linux-x86-64-amd-ryzen-9-9950x-16-core-processor_gcc-15_throughput128_Short.svg @@ -0,0 +1,27 @@ + + +mbo/hash - 128-bit throughput (Short) +AMD Ryzen 9 9950X 16-Core Processor · Linux · x86_64 · 10-core · gcc-15 · 29b54ccd + +2 + +5 + + +16 B + + +64 B + +max length (log scale) +GiB / s (log scale) + + +jumbo + + +xxh3 + + +murmur3 + diff --git a/mbo/hash/measurements/charts/linux-x86-64-amd-ryzen-9-9950x-16-core-processor_gcc-15_throughput128_Web.svg b/mbo/hash/measurements/charts/linux-x86-64-amd-ryzen-9-9950x-16-core-processor_gcc-15_throughput128_Web.svg new file mode 100644 index 0000000..44c1da4 --- /dev/null +++ b/mbo/hash/measurements/charts/linux-x86-64-amd-ryzen-9-9950x-16-core-processor_gcc-15_throughput128_Web.svg @@ -0,0 +1,34 @@ + + +mbo/hash - 128-bit throughput (Web) +AMD Ryzen 9 9950X 16-Core Processor · Linux · x86_64 · 10-core · gcc-15 · 29b54ccd + +5 + +10 + +16 B + + +64 B + + +256 B + + +1 KiB + + +4 KiB +max length (log scale) +GiB / s (log scale) + + +jumbo + + +xxh3 + + +murmur3 + diff --git a/mbo/hash/measurements/charts/linux-x86-64-amd-ryzen-9-9950x-16-core-processor_gcc-15_throughput64_Short.svg b/mbo/hash/measurements/charts/linux-x86-64-amd-ryzen-9-9950x-16-core-processor_gcc-15_throughput64_Short.svg index 472948e..beb4c86 100644 --- a/mbo/hash/measurements/charts/linux-x86-64-amd-ryzen-9-9950x-16-core-processor_gcc-15_throughput64_Short.svg +++ b/mbo/hash/measurements/charts/linux-x86-64-amd-ryzen-9-9950x-16-core-processor_gcc-15_throughput64_Short.svg @@ -1,15 +1,15 @@ mbo/hash - 64-bit throughput (Short) -AMD Ryzen 9 9950X 16-Core Processor · Linux · x86_64 · 10-core · gcc-15 · 80a4c8a8 - -1 - -2 - -5 - -10 +AMD Ryzen 9 9950X 16-Core Processor · Linux · x86_64 · 10-core · gcc-15 · 29b54ccd + +1 + +2 + +5 + +10 16 B @@ -19,28 +19,28 @@ max length (log scale) GiB / s (log scale) - + mumbo - + rapidhash - + xxh3 - + xxh64 - + murmur3 - + siphash24 - + fnv1a - + dumbo diff --git a/mbo/hash/measurements/charts/linux-x86-64-amd-ryzen-9-9950x-16-core-processor_gcc-15_throughput64_Web.svg b/mbo/hash/measurements/charts/linux-x86-64-amd-ryzen-9-9950x-16-core-processor_gcc-15_throughput64_Web.svg index 4019f59..0ac55c4 100644 --- a/mbo/hash/measurements/charts/linux-x86-64-amd-ryzen-9-9950x-16-core-processor_gcc-15_throughput64_Web.svg +++ b/mbo/hash/measurements/charts/linux-x86-64-amd-ryzen-9-9950x-16-core-processor_gcc-15_throughput64_Web.svg @@ -1,15 +1,15 @@ mbo/hash - 64-bit throughput (Web) -AMD Ryzen 9 9950X 16-Core Processor · Linux · x86_64 · 10-core · gcc-15 · 80a4c8a8 - -2 - -5 - -10 - -20 +AMD Ryzen 9 9950X 16-Core Processor · Linux · x86_64 · 10-core · gcc-15 · 29b54ccd + +2 + +5 + +10 + +20 16 B @@ -26,28 +26,28 @@ 4 KiB max length (log scale) GiB / s (log scale) - + mumbo - + rapidhash - + xxh3 - + xxh64 - + murmur3 - + siphash24 - + fnv1a - + dumbo diff --git a/mbo/hash/measurements/charts/macos-arm64-apple-m5-pro_clang-21_latency128.svg b/mbo/hash/measurements/charts/macos-arm64-apple-m5-pro_clang-21_latency128.svg index 69db5c3..68bcaca 100644 --- a/mbo/hash/measurements/charts/macos-arm64-apple-m5-pro_clang-21_latency128.svg +++ b/mbo/hash/measurements/charts/macos-arm64-apple-m5-pro_clang-21_latency128.svg @@ -1,21 +1,21 @@ mbo/hash - 128-bit latency -Apple M5 Pro · MacOS · arm64 · 18-core · clang-21 · 80a4c8a8 - -5 - -10 - -20 - -50 - -100 - -200 - -500 +Apple M5 Pro · MacOS · arm64 · 18-core · clang-21 · 29b54ccd + +5 + +10 + +20 + +50 + +100 + +200 + +500 1 B @@ -38,13 +38,13 @@ 4 KiB key length (log scale) ns / op (log scale) - + jumbo - + xxh3 - + murmur3 diff --git a/mbo/hash/measurements/charts/macos-arm64-apple-m5-pro_clang-21_latency64.svg b/mbo/hash/measurements/charts/macos-arm64-apple-m5-pro_clang-21_latency64.svg index c2783c3..1c5932d 100644 --- a/mbo/hash/measurements/charts/macos-arm64-apple-m5-pro_clang-21_latency64.svg +++ b/mbo/hash/measurements/charts/macos-arm64-apple-m5-pro_clang-21_latency64.svg @@ -1,33 +1,33 @@ mbo/hash - 64-bit latency -Apple M5 Pro · MacOS · arm64 · 18-core · clang-21 · 80a4c8a8 - -0.5 - -1 - -2 - -5 - -10 - -20 - -50 - -100 - -200 - -500 - -1000 - -2000 - -5000 +Apple M5 Pro · MacOS · arm64 · 18-core · clang-21 · 29b54ccd + +0.5 + +1 + +2 + +5 + +10 + +20 + +50 + +100 + +200 + +500 + +1000 + +2000 + +5000 1 B @@ -50,28 +50,28 @@ 4 KiB key length (log scale) ns / op (log scale) - + mumbo - + rapidhash - + xxh3 - + xxh64 - + murmur3 - + siphash24 - + fnv1a - + dumbo diff --git a/mbo/hash/measurements/charts/macos-arm64-apple-m5-pro_clang-21_throughput128_Short.svg b/mbo/hash/measurements/charts/macos-arm64-apple-m5-pro_clang-21_throughput128_Short.svg new file mode 100644 index 0000000..bf8a3eb --- /dev/null +++ b/mbo/hash/measurements/charts/macos-arm64-apple-m5-pro_clang-21_throughput128_Short.svg @@ -0,0 +1,27 @@ + + +mbo/hash - 128-bit throughput (Short) +Apple M5 Pro · MacOS · arm64 · 18-core · clang-21 · 29b54ccd + +1 + +2 + + +16 B + + +64 B + +max length (log scale) +GiB / s (log scale) + + +jumbo + + +xxh3 + + +murmur3 + diff --git a/mbo/hash/measurements/charts/macos-arm64-apple-m5-pro_clang-21_throughput128_Web.svg b/mbo/hash/measurements/charts/macos-arm64-apple-m5-pro_clang-21_throughput128_Web.svg new file mode 100644 index 0000000..97ffcf0 --- /dev/null +++ b/mbo/hash/measurements/charts/macos-arm64-apple-m5-pro_clang-21_throughput128_Web.svg @@ -0,0 +1,36 @@ + + +mbo/hash - 128-bit throughput (Web) +Apple M5 Pro · MacOS · arm64 · 18-core · clang-21 · 29b54ccd + +2 + +5 + +10 + +16 B + + +64 B + + +256 B + + +1 KiB + + +4 KiB +max length (log scale) +GiB / s (log scale) + + +jumbo + + +xxh3 + + +murmur3 + diff --git a/mbo/hash/measurements/charts/macos-arm64-apple-m5-pro_clang-21_throughput64_Short.svg b/mbo/hash/measurements/charts/macos-arm64-apple-m5-pro_clang-21_throughput64_Short.svg index a13d52e..7e8f6f3 100644 --- a/mbo/hash/measurements/charts/macos-arm64-apple-m5-pro_clang-21_throughput64_Short.svg +++ b/mbo/hash/measurements/charts/macos-arm64-apple-m5-pro_clang-21_throughput64_Short.svg @@ -1,11 +1,11 @@ mbo/hash - 64-bit throughput (Short) -Apple M5 Pro · MacOS · arm64 · 18-core · clang-21 · 80a4c8a8 - -1 - -2 +Apple M5 Pro · MacOS · arm64 · 18-core · clang-21 · 29b54ccd + +1 + +2 16 B @@ -15,28 +15,28 @@ max length (log scale) GiB / s (log scale) - + mumbo - + rapidhash - + xxh3 - + xxh64 - + murmur3 - + siphash24 - + fnv1a - + dumbo diff --git a/mbo/hash/measurements/charts/macos-arm64-apple-m5-pro_clang-21_throughput64_Web.svg b/mbo/hash/measurements/charts/macos-arm64-apple-m5-pro_clang-21_throughput64_Web.svg index 81b9a64..99bdf58 100644 --- a/mbo/hash/measurements/charts/macos-arm64-apple-m5-pro_clang-21_throughput64_Web.svg +++ b/mbo/hash/measurements/charts/macos-arm64-apple-m5-pro_clang-21_throughput64_Web.svg @@ -1,15 +1,15 @@ mbo/hash - 64-bit throughput (Web) -Apple M5 Pro · MacOS · arm64 · 18-core · clang-21 · 80a4c8a8 +Apple M5 Pro · MacOS · arm64 · 18-core · clang-21 · 29b54ccd 1 - -2 - -5 - -10 + +2 + +5 + +10 16 B @@ -26,28 +26,28 @@ 4 KiB max length (log scale) GiB / s (log scale) - + mumbo - + rapidhash - + xxh3 - + xxh64 - + murmur3 - + siphash24 - + fnv1a - + dumbo diff --git a/mbo/hash/measurements/data/linux-x86-64-amd-ryzen-9-9950x-16-core-processor_10c_gcc-15_29b54ccd_20260715_182532.tgz b/mbo/hash/measurements/data/linux-x86-64-amd-ryzen-9-9950x-16-core-processor_10c_gcc-15_29b54ccd_20260715_182532.tgz new file mode 100644 index 0000000..d90dc41 --- /dev/null +++ b/mbo/hash/measurements/data/linux-x86-64-amd-ryzen-9-9950x-16-core-processor_10c_gcc-15_29b54ccd_20260715_182532.tgz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:547264cc043b0d473af82c3d8f229918b6aa687197c15623ad55d0439f84fb00 +size 1529977 diff --git a/mbo/hash/measurements/data/macos-arm64-apple-m5-pro_18c_clang-21_29b54ccd_20260715_191140.tgz b/mbo/hash/measurements/data/macos-arm64-apple-m5-pro_18c_clang-21_29b54ccd_20260715_191140.tgz new file mode 100644 index 0000000..af7868a --- /dev/null +++ b/mbo/hash/measurements/data/macos-arm64-apple-m5-pro_18c_clang-21_29b54ccd_20260715_191140.tgz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d263c76ab50acaf790dff4ba36c580f64416bfe097d4fcb6ae0e52d846f9105a +size 934896