Skip to content

Commit 34710fe

Browse files
authored
Add HyperLogLog benchmarks: PFCOUNT and PFMERGE (#313)
* Add memtier benchmark for HyperLogLog PFCOUNT with multiple keys Pre-loads 3 HyperLogLog keys with 10K random elements each using PFADD (dense). Benchmarks PFCOUNT performance counting the pre-loaded HLLs. Useful for evaluating different HyperLogLog dense implementations (scalar, AVX, and NEON SIMD). * Add memtier benchmark for HyperLogLog PFMERGE Pre-loads 3 HyperLogLog keys with 10K random elements each using PFADD (dense). Benchmarks PFMERGE performance. Useful for evaluating different HyperLogLog dense implementations (scalar, AVX, and NEON SIMD). * Reduce test time for memtier benchmark in HyperLogLog PFCOUNT and PFMERGE tests The operations are stable, so long test durations are unnecessary
1 parent 4ab54d6 commit 34710fe

File tree

2 files changed

+68
-0
lines changed

2 files changed

+68
-0
lines changed
Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
version: 0.4
2+
name: memtier_benchmark-multiple-hll-pfcount-100B-values
3+
description: Runs memtier_benchmark, pre-loading multiple HyperLogLog keys with 100B sized random elements using PFADD, then testing PFCOUNT performance by counting these pre-loaded HLLs.
4+
dbconfig:
5+
configuration-parameters:
6+
save: '""'
7+
check:
8+
keyspacelen: 3
9+
preload_tool:
10+
run_image: redislabs/memtier_benchmark:edge
11+
tool: memtier_benchmark
12+
arguments: '"--data-size" "100" --random-data --command "PFADD __key__ __data__" --command-key-pattern="P" --key-minimum=1 --key-maximum 3 -n 30000 -c 1 -t 1 --hide-histogram'
13+
resources:
14+
requests:
15+
memory: 2g
16+
tested-groups:
17+
- hyperloglog
18+
tested-commands:
19+
- pfcount
20+
redis-topologies:
21+
- oss-standalone
22+
build-variants:
23+
- gcc:15.2.0-amd64-debian-bookworm-default
24+
- gcc:15.2.0-arm64-debian-bookworm-default
25+
- dockerhub
26+
clientconfig:
27+
run_image: redislabs/memtier_benchmark:edge
28+
tool: memtier_benchmark
29+
arguments: --test-time 60 --command "PFCOUNT memtier-1 memtier-2 memtier-3" -c 50 -t 4 --hide-histogram
30+
resources:
31+
requests:
32+
cpus: '4'
33+
memory: 2g
34+
priority: 62
Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
version: 0.4
2+
name: memtier_benchmark-multiple-hll-pfmerge-100B-values
3+
description: Runs memtier_benchmark, pre-loading multiple HyperLogLog keys with 100B sized random elements using PFADD, then testing PFMERGE performance by merging these pre-loaded HLLs.
4+
dbconfig:
5+
configuration-parameters:
6+
save: '""'
7+
check:
8+
keyspacelen: 3
9+
preload_tool:
10+
run_image: redislabs/memtier_benchmark:edge
11+
tool: memtier_benchmark
12+
arguments: '"--data-size" "100" --random-data --command "PFADD __key__ __data__" --command-key-pattern="P" --key-minimum=1 --key-maximum 3 -n 30000 -c 1 -t 1 --hide-histogram'
13+
resources:
14+
requests:
15+
memory: 2g
16+
tested-groups:
17+
- hyperloglog
18+
tested-commands:
19+
- pfmerge
20+
redis-topologies:
21+
- oss-standalone
22+
build-variants:
23+
- gcc:15.2.0-amd64-debian-bookworm-default
24+
- gcc:15.2.0-arm64-debian-bookworm-default
25+
- dockerhub
26+
clientconfig:
27+
run_image: redislabs/memtier_benchmark:edge
28+
tool: memtier_benchmark
29+
arguments: --test-time 60 --command "PFMERGE merged memtier-1 memtier-2 memtier-3" -c 50 -t 4 --hide-histogram
30+
resources:
31+
requests:
32+
cpus: '4'
33+
memory: 2g
34+
priority: 62

0 commit comments

Comments
 (0)