Repository navigation
Benchmark arrow-rs #12008 on dictionary group-bys - #27077
Rich-T-kid wants to merge 9 commits into
Conversation
Reuse dictionary value hashes while the values Arc is unchanged so operators do not rehash the same dictionary for every batch.
Pass the hash expression count into CachingArrayHasher so BatchPartitioner can create it up front without constructing a placeholder schema from the first batch.
|
run benchmark clickbench_partitioned env: |
|
🤖 Benchmark running (GKE) | trigger CPU Details (lscpu)Comparing e15a381 (e15a381) to 6d790c5 diff Run configurationrun benchmark clickbench_partitioned
env:
DATAFUSION_EXECUTION_PARQUET_ENABLE_RLE_TO_DICTIONARY: "true"
DATAFUSION_RUNTIME_MEMORY_LIMIT: "32G"
baseline:
ref: "6d790c5f7441b0f7b786dadc0535140f41a5fa42"
changed:
ref: "e15a3816bdf45033ec1e3edfc8d05981641ad663"Results will be posted here when complete File an issue against this benchmark runner |
|
🤖 Benchmark completed (GKE) | trigger Instance: Comparing e15a381 (e15a381) to 6d790c5 diff Run configurationrun benchmark clickbench_partitioned
env:
DATAFUSION_EXECUTION_PARQUET_ENABLE_RLE_TO_DICTIONARY: "true"
DATAFUSION_RUNTIME_MEMORY_LIMIT: "32G"
baseline:
ref: "6d790c5f7441b0f7b786dadc0535140f41a5fa42"
changed:
ref: "e15a3816bdf45033ec1e3edfc8d05981641ad663"CPU Details (lscpu)Details
Memory Pool PeaksPeak Base:
Pool accounting vs. process RSS Max pool peak is the largest reservation any single query in the run reached; peak RSS covers the whole invocation, including data loading and allocator retention, and the two high-water marks need not coincide in time. The gap is therefore an upper bound on what the pool did not account for, not a measurement of it.
Resource Usageclickbench_partitioned — base (merge-base)
clickbench_partitioned — branch
File an issue against this benchmark runner |
|
run benchmark clickbench_partitioned env: |
|
🤖 Benchmark running (GKE) | trigger CPU Details (lscpu)Comparing e15a381 (e15a381) to 6d790c5 diff Run configurationrun benchmark clickbench_partitioned
env:
DATAFUSION_EXECUTION_PARQUET_ENABLE_RLE_TO_DICTIONARY: "true"
DATAFUSION_RUNTIME_MEMORY_LIMIT: "32G"
baseline:
ref: "6d790c5f7441b0f7b786dadc0535140f41a5fa42"
changed:
ref: "e15a3816bdf45033ec1e3edfc8d05981641ad663"Results will be posted here when complete File an issue against this benchmark runner |
|
🤖 Benchmark completed (GKE) | trigger Instance: Comparing e15a381 (e15a381) to 6d790c5 diff Run configurationrun benchmark clickbench_partitioned
env:
DATAFUSION_EXECUTION_PARQUET_ENABLE_RLE_TO_DICTIONARY: "true"
DATAFUSION_RUNTIME_MEMORY_LIMIT: "32G"
baseline:
ref: "6d790c5f7441b0f7b786dadc0535140f41a5fa42"
changed:
ref: "e15a3816bdf45033ec1e3edfc8d05981641ad663"CPU Details (lscpu)Details
Memory Pool PeaksPeak Base:
Pool accounting vs. process RSS Max pool peak is the largest reservation any single query in the run reached; peak RSS covers the whole invocation, including data loading and allocator retention, and the two high-water marks need not coincide in time. The gap is therefore an upper bound on what the pool did not account for, not a measurement of it.
Resource Usageclickbench_partitioned — base (merge-base)
clickbench_partitioned — branch
File an issue against this benchmark runner |
Which issue does this PR close?
Benchmark-only branch; do not merge.
Rationale for this change
Measure the current head of apache/arrow-rs#12008 on the current head of DataFusion #26816 with Parquet RLE-to-dictionary reads enabled.
What changes are included in this PR?
Two dependency-only commits provide the A/B refs:
6d790c5f7pins Arrow Fix license header #12008's base,258b0d2031.e15a3816bchanges only the Arrow revision to Fix license header #12008,31c0d5c510.The shared lockfile update to
tonicandtonic-prost0.14.9 is required by both Arrow revisions.What is the testing strategy for this PR?
Run partitioned ClickBench with dictionary decoding enabled on both refs and compare Q16, Q17, Q33, and Q34.
Are there any user-facing changes?
No. This PR only supplies benchmark refs.