Skip to content

Commit

Permalink
new benchmarks: i7 and epyc, redo missing hashes
Browse files Browse the repository at this point in the history
new numbers from i7-6820HQ 3.5GHz (Lenovo P50 from 2024)
and AMD EPYC 9554P 64-Core Processor (Server from 2024)
  • Loading branch information
rurban committed Dec 11, 2024
1 parent b24f738 commit ca3a6f8
Show file tree
Hide file tree
Showing 230 changed files with 37,605 additions and 18,702 deletions.
387 changes: 198 additions & 189 deletions README.md

Large diffs are not rendered by default.

88 changes: 46 additions & 42 deletions doc/BadHash.txt
Original file line number Diff line number Diff line change
Expand Up @@ -9,49 +9,53 @@ Running AppendedZeroesTest .......... PASS

[[[ Speed Tests ]]]

WARNING: timer resolution is 72 (0x48) ticks (0x10295701b18 - 0x10295701ad0). Broken VDSO?
Bulk speed test - 262144-byte keys
Alignment 7 - 0.183 bytes/cycle - 524.82 MiB/sec @ 3 ghz
Alignment 6 - 0.183 bytes/cycle - 524.82 MiB/sec @ 3 ghz
Alignment 5 - 0.183 bytes/cycle - 524.81 MiB/sec @ 3 ghz
Alignment 4 - 0.183 bytes/cycle - 524.81 MiB/sec @ 3 ghz
Alignment 3 - 0.183 bytes/cycle - 524.81 MiB/sec @ 3 ghz
Alignment 2 - 0.183 bytes/cycle - 524.82 MiB/sec @ 3 ghz
Alignment 1 - 0.183 bytes/cycle - 524.81 MiB/sec @ 3 ghz
Alignment 0 - 0.183 bytes/cycle - 524.81 MiB/sec @ 3 ghz
Average - 0.183 bytes/cycle - 524.81 MiB/sec @ 3 ghz

Small key speed test - 1-byte keys - 13.65 cycles/hash
Small key speed test - 2-byte keys - 19.32 cycles/hash
Small key speed test - 3-byte keys - 24.97 cycles/hash
Small key speed test - 4-byte keys - 30.72 cycles/hash
Small key speed test - 5-byte keys - 35.92 cycles/hash
Small key speed test - 6-byte keys - 41.68 cycles/hash
Small key speed test - 7-byte keys - 46.99 cycles/hash
Small key speed test - 8-byte keys - 52.25 cycles/hash
Small key speed test - 9-byte keys - 57.57 cycles/hash
Small key speed test - 10-byte keys - 63.00 cycles/hash
Small key speed test - 11-byte keys - 68.60 cycles/hash
Small key speed test - 12-byte keys - 74.36 cycles/hash
Small key speed test - 13-byte keys - 79.77 cycles/hash
Small key speed test - 14-byte keys - 85.50 cycles/hash
Small key speed test - 15-byte keys - 90.93 cycles/hash
Small key speed test - 16-byte keys - 96.00 cycles/hash
Small key speed test - 17-byte keys - 101.79 cycles/hash
Small key speed test - 18-byte keys - 107.00 cycles/hash
Small key speed test - 19-byte keys - 112.20 cycles/hash
Small key speed test - 20-byte keys - 118.00 cycles/hash
Small key speed test - 21-byte keys - 123.73 cycles/hash
Small key speed test - 22-byte keys - 129.00 cycles/hash
Small key speed test - 23-byte keys - 134.76 cycles/hash
Small key speed test - 24-byte keys - 140.00 cycles/hash
Small key speed test - 25-byte keys - 145.87 cycles/hash
Small key speed test - 26-byte keys - 151.00 cycles/hash
Small key speed test - 27-byte keys - 156.38 cycles/hash
Small key speed test - 28-byte keys - 162.00 cycles/hash
Small key speed test - 29-byte keys - 167.82 cycles/hash
Small key speed test - 30-byte keys - 173.00 cycles/hash
Small key speed test - 31-byte keys - 178.38 cycles/hash
Average 96.198 cycles/hash
Alignment 7 - 0.278 bytes/cycle - 794.68 MiB/sec @ 3 ghz
Alignment 6 - 0.278 bytes/cycle - 794.68 MiB/sec @ 3 ghz
Alignment 5 - 0.278 bytes/cycle - 794.68 MiB/sec @ 3 ghz
Alignment 4 - 0.278 bytes/cycle - 794.68 MiB/sec @ 3 ghz
Alignment 3 - 0.278 bytes/cycle - 794.68 MiB/sec @ 3 ghz
Alignment 2 - 0.278 bytes/cycle - 794.68 MiB/sec @ 3 ghz
Alignment 1 - 0.278 bytes/cycle - 794.68 MiB/sec @ 3 ghz
Alignment 0 - 0.278 bytes/cycle - 794.68 MiB/sec @ 3 ghz
Average - 0.278 bytes/cycle - 794.68 MiB/sec @ 3 ghz

Small key speed test - 1-byte keys - 14.94 cycles/hash
Small key speed test - 2-byte keys - 18.67 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.17 cycles/hash
Small key speed test - 7-byte keys - 37.00 cycles/hash
Small key speed test - 8-byte keys - 41.00 cycles/hash
Small key speed test - 9-byte keys - 44.76 cycles/hash
Small key speed test - 10-byte keys - 48.24 cycles/hash
Small key speed test - 11-byte keys - 52.00 cycles/hash
Small key speed test - 12-byte keys - 55.98 cycles/hash
Small key speed test - 13-byte keys - 59.91 cycles/hash
Small key speed test - 14-byte keys - 63.44 cycles/hash
Small key speed test - 15-byte keys - 67.46 cycles/hash
Small key speed test - 16-byte keys - 71.00 cycles/hash
Small key speed test - 17-byte keys - 74.69 cycles/hash
Small key speed test - 18-byte keys - 78.86 cycles/hash
Small key speed test - 19-byte keys - 82.41 cycles/hash
Small key speed test - 20-byte keys - 86.00 cycles/hash
Small key speed test - 21-byte keys - 89.47 cycles/hash
Small key speed test - 22-byte keys - 93.28 cycles/hash
Small key speed test - 23-byte keys - 97.00 cycles/hash
Small key speed test - 24-byte keys - 100.00 cycles/hash
Small key speed test - 25-byte keys - 104.00 cycles/hash
Small key speed test - 26-byte keys - 108.30 cycles/hash
Small key speed test - 27-byte keys - 111.54 cycles/hash
Small key speed test - 28-byte keys - 117.04 cycles/hash
Small key speed test - 29-byte keys - 120.83 cycles/hash
Small key speed test - 30-byte keys - 124.20 cycles/hash
Small key speed test - 31-byte keys - 126.51 cycles/hash
Small key speed test - 32-byte keys - 130.00 cycles/hash
Average 72.802 cycles/hash
Average, weighted by key length freq. 72.618 cycles/hash (using 93.0% of top-7m Tranco DNS names dataset)
Average, weighted by key length freq. 57.518 cycles/hash (using 27.1% of startup-1M UMASH trace dataset)

[[[ 'Hashmap' Speed Tests (when inlined) ]]]

Expand Down
88 changes: 46 additions & 42 deletions doc/City128.txt
Original file line number Diff line number Diff line change
Expand Up @@ -9,49 +9,53 @@ Running AppendedZeroesTest .......... PASS

[[[ Speed Tests ]]]

WARNING: timer resolution is 72 (0x48) ticks (0x13306dc934a74 - 0x13306dc934a2c). Broken VDSO?
Bulk speed test - 262144-byte keys
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
Alignment 7 - 5.037 bytes/cycle - 14411.39 MiB/sec @ 3 ghz
Alignment 6 - 5.053 bytes/cycle - 14456.01 MiB/sec @ 3 ghz
Alignment 5 - 5.052 bytes/cycle - 14455.06 MiB/sec @ 3 ghz
Alignment 4 - 5.058 bytes/cycle - 14471.92 MiB/sec @ 3 ghz
Alignment 3 - 5.053 bytes/cycle - 14456.18 MiB/sec @ 3 ghz
Alignment 2 - 5.053 bytes/cycle - 14455.87 MiB/sec @ 3 ghz
Alignment 1 - 5.053 bytes/cycle - 14457.06 MiB/sec @ 3 ghz
Alignment 0 - 5.108 bytes/cycle - 14614.15 MiB/sec @ 3 ghz
Average - 5.058 bytes/cycle - 14472.20 MiB/sec @ 3 ghz

Small key speed test - 1-byte keys - 74.96 cycles/hash
Small key speed test - 2-byte keys - 75.07 cycles/hash
Small key speed test - 3-byte keys - 74.95 cycles/hash
Small key speed test - 4-byte keys - 80.93 cycles/hash
Small key speed test - 5-byte keys - 80.93 cycles/hash
Small key speed test - 6-byte keys - 80.94 cycles/hash
Small key speed test - 7-byte keys - 80.93 cycles/hash
Small key speed test - 8-byte keys - 81.00 cycles/hash
Small key speed test - 9-byte keys - 81.00 cycles/hash
Small key speed test - 10-byte keys - 81.00 cycles/hash
Small key speed test - 11-byte keys - 81.00 cycles/hash
Small key speed test - 12-byte keys - 81.00 cycles/hash
Small key speed test - 13-byte keys - 81.00 cycles/hash
Small key speed test - 14-byte keys - 81.00 cycles/hash
Small key speed test - 15-byte keys - 81.00 cycles/hash
Small key speed test - 16-byte keys - 81.00 cycles/hash
Small key speed test - 17-byte keys - 94.96 cycles/hash
Small key speed test - 18-byte keys - 94.96 cycles/hash
Small key speed test - 19-byte keys - 94.97 cycles/hash
Small key speed test - 20-byte keys - 94.96 cycles/hash
Small key speed test - 21-byte keys - 94.96 cycles/hash
Small key speed test - 22-byte keys - 94.96 cycles/hash
Small key speed test - 23-byte keys - 94.97 cycles/hash
Small key speed test - 24-byte keys - 94.95 cycles/hash
Small key speed test - 25-byte keys - 94.96 cycles/hash
Small key speed test - 26-byte keys - 94.95 cycles/hash
Small key speed test - 27-byte keys - 94.95 cycles/hash
Small key speed test - 28-byte keys - 94.96 cycles/hash
Small key speed test - 29-byte keys - 95.23 cycles/hash
Small key speed test - 30-byte keys - 95.31 cycles/hash
Small key speed test - 31-byte keys - 112.17 cycles/hash
Small key speed test - 32-byte keys - 118.84 cycles/hash
Average 88.711 cycles/hash
Average, weighted by key length freq. 87.459 cycles/hash (using 93.0% of top-7m Tranco DNS names dataset)
Average, weighted by key length freq. 81.221 cycles/hash (using 27.1% of startup-1M UMASH trace dataset)

[[[ 'Hashmap' Speed Tests (when inlined) ]]]

Expand Down
88 changes: 46 additions & 42 deletions doc/City32.txt
Original file line number Diff line number Diff line change
Expand Up @@ -9,49 +9,53 @@ Running AppendedZeroesTest .......... PASS

[[[ Speed Tests ]]]

WARNING: timer resolution is 108 (0x6c) ticks (0x174504f7f788 - 0x174504f7f71c). Broken VDSO?
Bulk speed test - 262144-byte keys
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
Alignment 7 - 2.006 bytes/cycle - 5740.47 MiB/sec @ 3 ghz
Alignment 6 - 2.007 bytes/cycle - 5742.70 MiB/sec @ 3 ghz
Alignment 5 - 2.007 bytes/cycle - 5741.78 MiB/sec @ 3 ghz
Alignment 4 - 2.015 bytes/cycle - 5764.27 MiB/sec @ 3 ghz
Alignment 3 - 2.005 bytes/cycle - 5737.38 MiB/sec @ 3 ghz
Alignment 2 - 2.005 bytes/cycle - 5737.22 MiB/sec @ 3 ghz
Alignment 1 - 2.005 bytes/cycle - 5737.48 MiB/sec @ 3 ghz
Alignment 0 - 2.015 bytes/cycle - 5765.34 MiB/sec @ 3 ghz
Average - 2.008 bytes/cycle - 5745.83 MiB/sec @ 3 ghz

Small key speed test - 1-byte keys - 35.96 cycles/hash
Small key speed test - 2-byte keys - 39.00 cycles/hash
Small key speed test - 3-byte keys - 43.00 cycles/hash
Small key speed test - 4-byte keys - 46.00 cycles/hash
Small key speed test - 5-byte keys - 42.00 cycles/hash
Small key speed test - 6-byte keys - 42.13 cycles/hash
Small key speed test - 7-byte keys - 42.00 cycles/hash
Small key speed test - 8-byte keys - 42.00 cycles/hash
Small key speed test - 9-byte keys - 42.14 cycles/hash
Small key speed test - 10-byte keys - 42.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 - 54.43 cycles/hash
Small key speed test - 14-byte keys - 54.41 cycles/hash
Small key speed test - 15-byte keys - 54.00 cycles/hash
Small key speed test - 16-byte keys - 54.00 cycles/hash
Small key speed test - 17-byte keys - 54.27 cycles/hash
Small key speed test - 18-byte keys - 54.25 cycles/hash
Small key speed test - 19-byte keys - 54.00 cycles/hash
Small key speed test - 20-byte keys - 54.00 cycles/hash
Small key speed test - 21-byte keys - 54.34 cycles/hash
Small key speed test - 22-byte keys - 54.00 cycles/hash
Small key speed test - 23-byte keys - 54.47 cycles/hash
Small key speed test - 24-byte keys - 54.31 cycles/hash
Small key speed test - 25-byte keys - 65.94 cycles/hash
Small key speed test - 26-byte keys - 65.93 cycles/hash
Small key speed test - 27-byte keys - 65.93 cycles/hash
Small key speed test - 28-byte keys - 65.94 cycles/hash
Small key speed test - 29-byte keys - 65.88 cycles/hash
Small key speed test - 30-byte keys - 65.88 cycles/hash
Small key speed test - 31-byte keys - 65.88 cycles/hash
Small key speed test - 32-byte keys - 65.93 cycles/hash
Average 52.438 cycles/hash
Average, weighted by key length freq. 52.070 cycles/hash (using 93.0% of top-7m Tranco DNS names dataset)
Average, weighted by key length freq. 48.035 cycles/hash (using 27.1% of startup-1M UMASH trace dataset)

[[[ 'Hashmap' Speed Tests ]]]

Expand Down
Loading

0 comments on commit ca3a6f8

Please sign in to comment.