You are viewing a plain text version of this content. The canonical link for it is here.
Posted to github@datafusion.apache.org by "Dandandan (via GitHub)" <gi...@apache.org> on 2026/08/31 06:36:25 UTC
[PR] perf: hold per-group accumulator state in blocks once it is large [datafusion]
Dandandan opened a new pull request, #24815:
URL: https://github.com/apache/datafusion/pull/24815
## Which issue does this PR close?
- None; noticed while profiling ClickBench aggregation.
## Rationale for this change
Growing one allocation copies everything in it, so high-cardinality groupings spend a large share of their time reallocating per-group state.
## What changes are included in this PR?
- `BlockedVec`: per-group state in one `Vec` up to `THRESHOLD_LEN` groups, fixed-size blocks above it, so growth appends a block instead of copying.
- Accumulators take `storage_mut()` once per batch instead of dispatching per group, so the flat path stays identical to a plain `Vec`.
- Wired into `count`, `sum` (`PrimitiveGroupsAccumulator`) and `avg`.
## Are these changes tested?
- Yes: unit tests for growth across the switch, `take_first` shifting, and capacity accounting; existing aggregate tests and `sqllogictest` aggregate files pass.
## Are there any user-facing changes?
- No; `GroupsAccumulator::size` now reports block capacity, which is the same quantity measured differently.
## Benchmarks
- ClickBench is currently neutral (q32 1.04, q18 0.98, q16 1.02, q33 1.02): blocks remove the growth copies but `emit` still concatenates them.
- The win needs per-block emit so a block goes to Arrow as its own buffer; that is the follow-up this PR is the foundation for.
- Measured cost of the extra load, with the check hoisted out of the loop: 1.02x below the threshold, 1.49x above it.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: github-unsubscribe@datafusion.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: github-unsubscribe@datafusion.apache.org
For additional commands, e-mail: github-help@datafusion.apache.org
Re: [PR] perf: `BlockedVec` storage for aggregations [datafusion]
Posted by "adriangbot (via GitHub)" <gi...@apache.org>.
adriangbot commented on PR #24815:
URL: https://github.com/apache/datafusion/pull/24815#issuecomment-5477730979
π€ Benchmark completed (GKE) | [trigger](https://github.com/apache/datafusion/pull/24815#issuecomment-5477482214)
**Instance:** `c4a-highmem-16` (12 vCPU / 65 GiB)
Comparing perf/aggregate-state-growth (fe0a008b0e162eb864376b9ab4c6ae584b28d0ba) to 9c44fc0 (merge-base) [diff](https://github.com/apache/datafusion/compare/9c44fc02ad80c06efb38e175d900d2497eff1454..fe0a008b0e162eb864376b9ab4c6ae584b28d0ba)
<details><summary>Run configuration</summary>
```yaml
run benchmark clickbench_partitioned
```
</details>
<details><summary>CPU Details (lscpu)</summary>
```
Architecture: aarch64
CPU op-mode(s): 64-bit
Byte Order: Little Endian
CPU(s): 16
On-line CPU(s) list: 0-15
Vendor ID: ARM
Model name: Neoverse-V2
Model: 1
Thread(s) per core: 1
Core(s) per cluster: 16
Socket(s): -
Cluster(s): 1
Stepping: r0p1
BogoMIPS: 2000.00
Flags: fp asimd evtstrm aes pmull sha1 sha2 crc32 atomics fphp asimdhp cpuid asimdrdm jscvt fcma lrcpc dcpop sha3 sm3 sm4 asimddp sha512 sve asimdfhm dit uscat ilrcpc flagm sb paca pacg dcpodp sve2 sveaes svepmull svebitperm svesha3 svesm4 flagm2 frint svei8mm svebf16 i8mm bf16 dgh rng bti
L1d cache: 1 MiB (16 instances)
L1i cache: 1 MiB (16 instances)
L2 cache: 32 MiB (16 instances)
L3 cache: 80 MiB (1 instance)
NUMA node(s): 1
NUMA node0 CPU(s): 0-15
Vulnerability Gather data sampling: Not affected
Vulnerability Indirect target selection: Not affected
Vulnerability Itlb multihit: Not affected
Vulnerability L1tf: Not affected
Vulnerability Mds: Not affected
Vulnerability Meltdown: Not affected
Vulnerability Mmio stale data: Not affected
Vulnerability Reg file data sampling: Not affected
Vulnerability Retbleed: Not affected
Vulnerability Spec rstack overflow: Not affected
Vulnerability Spec store bypass: Mitigation; Speculative Store Bypass disabled via prctl
Vulnerability Spectre v1: Mitigation; __user pointer sanitization
Vulnerability Spectre v2: Mitigation; CSV2, BHB
Vulnerability Srbds: Not affected
Vulnerability Tsa: Not affected
Vulnerability Tsx async abort: Not affected
Vulnerability Vmscape: Not affected
```
</details>
<details><summary>Details</summary>
<p>
```
Comparing HEAD and perf_aggregate-state-growth
--------------------
Benchmark clickbench_partitioned.json
--------------------
βββββββββββββ³βββββββββββββ³ββββββββββββββββββββββββββββββ³βββββββββββββββ
β Query β HEAD β perf_aggregate-state-growth β Change β
β‘ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ©
β QQuery 0 β 1.19 ms β 1.23 ms β no change β
β QQuery 1 β 11.82 ms β 11.64 ms β no change β
β QQuery 2 β 36.24 ms β 35.94 ms β no change β
β QQuery 3 β 30.97 ms β 30.65 ms β no change β
β QQuery 4 β 222.89 ms β 222.76 ms β no change β
β QQuery 5 β 271.81 ms β 273.37 ms β no change β
β QQuery 6 β 1.26 ms β 1.26 ms β no change β
β QQuery 7 β 13.37 ms β 13.18 ms β no change β
β QQuery 8 β 325.80 ms β 337.71 ms β no change β
β QQuery 9 β 449.91 ms β 455.13 ms β no change β
β QQuery 10 β 68.77 ms β 69.58 ms β no change β
β QQuery 11 β 80.60 ms β 80.97 ms β no change β
β QQuery 12 β 266.29 ms β 266.82 ms β no change β
β QQuery 13 β 366.35 ms β 368.29 ms β no change β
β QQuery 14 β 280.83 ms β 283.62 ms β no change β
β QQuery 15 β 269.58 ms β 277.29 ms β no change β
β QQuery 16 β 608.40 ms β 630.90 ms β no change β
β QQuery 17 β 615.00 ms β 630.43 ms β no change β
β QQuery 18 β 1262.26 ms β 1305.58 ms β no change β
β QQuery 19 β 27.64 ms β 27.60 ms β no change β
β QQuery 20 β 512.56 ms β 521.03 ms β no change β
β QQuery 21 β 516.36 ms β 520.32 ms β no change β
β QQuery 22 β 980.65 ms β 990.39 ms β no change β
β QQuery 23 β 3045.54 ms β 3070.70 ms β no change β
β QQuery 24 β 41.09 ms β 41.59 ms β no change β
β QQuery 25 β 111.37 ms β 110.39 ms β no change β
β QQuery 26 β 41.24 ms β 41.26 ms β no change β
β QQuery 27 β 508.22 ms β 514.84 ms β no change β
β QQuery 28 β 2900.77 ms β 2946.52 ms β no change β
β QQuery 29 β 41.20 ms β 40.57 ms β no change β
β QQuery 30 β 295.98 ms β 316.82 ms β 1.07x slower β
β QQuery 31 β 277.33 ms β 282.21 ms β no change β
β QQuery 32 β 924.35 ms β 997.09 ms β 1.08x slower β
β QQuery 33 β 1437.43 ms β 1447.05 ms β no change β
β QQuery 34 β 1420.95 ms β 1563.93 ms β 1.10x slower β
β QQuery 35 β 276.24 ms β 303.27 ms β 1.10x slower β
β QQuery 36 β 66.37 ms β 68.89 ms β no change β
β QQuery 37 β 35.44 ms β 36.09 ms β no change β
β QQuery 38 β 39.85 ms β 41.45 ms β no change β
β QQuery 39 β 145.03 ms β 139.97 ms β no change β
β QQuery 40 β 13.86 ms β 14.42 ms β no change β
β QQuery 41 β 13.35 ms β 14.30 ms β 1.07x slower β
β QQuery 42 β 13.12 ms β 13.89 ms β 1.06x slower β
βββββββββββββ΄βββββββββββββ΄ββββββββββββββββββββββββββββββ΄βββββββββββββββ
ββββββββββββββββββββββββββββββββββββββββββββββ³βββββββββββββ
β Benchmark Summary β β
β‘ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ©
β Total Time (HEAD) β 18869.26ms β
β Total Time (perf_aggregate-state-growth) β 19360.94ms β
β Average Time (HEAD) β 438.82ms β
β Average Time (perf_aggregate-state-growth) β 450.25ms β
β Queries Faster β 0 β
β Queries Slower β 6 β
β Queries with No Change β 37 β
β Queries with Failure β 0 β
ββββββββββββββββββββββββββββββββββββββββββββββ΄βββββββββββββ
Distribution per query (min / mean Β±stddev / max):
Comparing HEAD and perf_aggregate-state-growth
--------------------
Benchmark clickbench_partitioned.json
--------------------
βββββββββββββ³ββββββββββββββββββββββββββββββββββββββββ³ββββββββββββββββββββββββββββββββββββββββ³ββββββββββββββββ
β Query β HEAD β perf_aggregate-state-growth β Change β
β‘ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ©
β QQuery 0 β 1.19 / 3.92 Β±5.38 / 14.68 ms β 1.23 / 3.94 Β±5.37 / 14.69 ms β no change β
β QQuery 1 β 11.82 / 12.06 Β±0.18 / 12.37 ms β 11.64 / 11.85 Β±0.12 / 11.96 ms β no change β
β QQuery 2 β 36.24 / 36.56 Β±0.33 / 37.08 ms β 35.94 / 36.27 Β±0.32 / 36.85 ms β no change β
β QQuery 3 β 30.97 / 31.83 Β±0.83 / 33.21 ms β 30.65 / 31.67 Β±1.23 / 33.90 ms β no change β
β QQuery 4 β 222.89 / 227.30 Β±3.05 / 230.50 ms β 222.76 / 225.37 Β±3.11 / 231.20 ms β no change β
β QQuery 5 β 271.81 / 273.64 Β±1.35 / 275.33 ms β 273.37 / 275.09 Β±1.53 / 277.13 ms β no change β
β QQuery 6 β 1.26 / 1.40 Β±0.23 / 1.85 ms β 1.26 / 1.40 Β±0.22 / 1.82 ms β no change β
β QQuery 7 β 13.37 / 13.50 Β±0.10 / 13.67 ms β 13.18 / 13.50 Β±0.28 / 14.01 ms β no change β
β QQuery 8 β 325.80 / 328.90 Β±1.84 / 331.30 ms β 337.71 / 341.47 Β±2.86 / 344.72 ms β no change β
β QQuery 9 β 449.91 / 456.80 Β±4.05 / 460.86 ms β 455.13 / 463.50 Β±6.87 / 474.38 ms β no change β
β QQuery 10 β 68.77 / 71.26 Β±2.86 / 76.64 ms β 69.58 / 70.94 Β±1.45 / 73.62 ms β no change β
β QQuery 11 β 80.60 / 81.15 Β±0.55 / 81.97 ms β 80.97 / 81.49 Β±0.81 / 83.09 ms β no change β
β QQuery 12 β 266.29 / 270.70 Β±4.18 / 275.79 ms β 266.82 / 273.31 Β±6.15 / 284.08 ms β no change β
β QQuery 13 β 366.35 / 382.92 Β±11.66 / 395.54 ms β 368.29 / 379.17 Β±18.26 / 415.50 ms β no change β
β QQuery 14 β 280.83 / 285.77 Β±4.95 / 294.14 ms β 283.62 / 291.12 Β±5.90 / 299.32 ms β no change β
β QQuery 15 β 269.58 / 273.51 Β±2.87 / 278.49 ms β 277.29 / 289.34 Β±16.20 / 321.35 ms β 1.06x slower β
β QQuery 16 β 608.40 / 620.03 Β±11.18 / 639.59 ms β 630.90 / 633.01 Β±1.82 / 635.68 ms β no change β
β QQuery 17 β 615.00 / 622.68 Β±5.43 / 631.40 ms β 630.43 / 637.18 Β±3.77 / 641.26 ms β no change β
β QQuery 18 β 1262.26 / 1271.97 Β±7.79 / 1283.73 ms β 1305.58 / 1350.38 Β±53.64 / 1452.64 ms β 1.06x slower β
β QQuery 19 β 27.64 / 30.57 Β±4.42 / 39.17 ms β 27.60 / 46.69 Β±23.56 / 82.27 ms β 1.53x slower β
β QQuery 20 β 512.56 / 523.33 Β±12.58 / 546.69 ms β 521.03 / 524.96 Β±3.92 / 530.28 ms β no change β
β QQuery 21 β 516.36 / 522.16 Β±5.05 / 530.30 ms β 520.32 / 524.95 Β±4.15 / 532.68 ms β no change β
β QQuery 22 β 980.65 / 992.44 Β±10.51 / 1008.70 ms β 990.39 / 992.91 Β±1.91 / 994.88 ms β no change β
β QQuery 23 β 3045.54 / 3068.32 Β±24.15 / 3102.18 ms β 3070.70 / 3088.65 Β±12.02 / 3108.52 ms β no change β
β QQuery 24 β 41.09 / 51.38 Β±9.81 / 63.26 ms β 41.59 / 41.87 Β±0.23 / 42.19 ms β +1.23x faster β
β QQuery 25 β 111.37 / 112.53 Β±0.94 / 113.90 ms β 110.39 / 114.94 Β±6.67 / 128.13 ms β no change β
β QQuery 26 β 41.24 / 42.42 Β±1.66 / 45.71 ms β 41.26 / 42.20 Β±0.66 / 43.20 ms β no change β
β QQuery 27 β 508.22 / 518.50 Β±6.55 / 525.16 ms β 514.84 / 523.89 Β±8.38 / 535.71 ms β no change β
β QQuery 28 β 2900.77 / 2926.24 Β±28.08 / 2978.95 ms β 2946.52 / 2954.19 Β±9.35 / 2972.30 ms β no change β
β QQuery 29 β 41.20 / 49.16 Β±10.09 / 66.79 ms β 40.57 / 42.50 Β±2.67 / 47.65 ms β +1.16x faster β
β QQuery 30 β 295.98 / 304.43 Β±5.66 / 311.41 ms β 316.82 / 322.90 Β±6.49 / 332.27 ms β 1.06x slower β
β QQuery 31 β 277.33 / 301.62 Β±15.37 / 322.78 ms β 282.21 / 292.11 Β±8.64 / 305.22 ms β no change β
β QQuery 32 β 924.35 / 949.86 Β±14.34 / 968.38 ms β 997.09 / 1016.78 Β±13.85 / 1035.71 ms β 1.07x slower β
β QQuery 33 β 1437.43 / 1477.40 Β±23.47 / 1502.55 ms β 1447.05 / 1498.54 Β±30.46 / 1530.62 ms β no change β
β QQuery 34 β 1420.95 / 1476.07 Β±36.46 / 1514.41 ms β 1563.93 / 1577.87 Β±14.71 / 1602.83 ms β 1.07x slower β
β QQuery 35 β 276.24 / 301.35 Β±36.86 / 374.42 ms β 303.27 / 318.90 Β±18.25 / 348.70 ms β 1.06x slower β
β QQuery 36 β 66.37 / 75.63 Β±10.97 / 96.25 ms β 68.89 / 73.87 Β±5.05 / 83.52 ms β no change β
β QQuery 37 β 35.44 / 37.10 Β±3.02 / 43.13 ms β 36.09 / 40.27 Β±3.74 / 45.71 ms β 1.09x slower β
β QQuery 38 β 39.85 / 42.01 Β±2.13 / 45.70 ms β 41.45 / 46.81 Β±3.67 / 52.32 ms β 1.11x slower β
β QQuery 39 β 145.03 / 149.48 Β±5.33 / 156.17 ms β 139.97 / 151.53 Β±8.93 / 163.32 ms β no change β
β QQuery 40 β 13.86 / 17.04 Β±6.09 / 29.21 ms β 14.42 / 17.21 Β±3.15 / 23.04 ms β no change β
β QQuery 41 β 13.35 / 13.60 Β±0.18 / 13.92 ms β 14.30 / 15.60 Β±2.04 / 19.65 ms β 1.15x slower β
β QQuery 42 β 13.12 / 14.62 Β±2.80 / 20.22 ms β 13.89 / 18.97 Β±6.19 / 26.74 ms β 1.30x slower β
βββββββββββββ΄ββββββββββββββββββββββββββββββββββββββββ΄ββββββββββββββββββββββββββββββββββββββββ΄ββββββββββββββββ
ββββββββββββββββββββββββββββββββββββββββββββββ³βββββββββββββ
β Benchmark Summary β β
β‘ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ©
β Total Time (HEAD) β 19263.16ms β
β Total Time (perf_aggregate-state-growth) β 19699.11ms β
β Average Time (HEAD) β 447.98ms β
β Average Time (perf_aggregate-state-growth) β 458.12ms β
β Queries Faster β 2 β
β Queries Slower β 11 β
β Queries with No Change β 30 β
β Queries with Failure β 0 β
ββββββββββββββββββββββββββββββββββββββββββββββ΄βββββββββββββ
```
</p>
</details>
<details><summary>Resource Usage</summary>
**clickbench_partitioned β base (merge-base)**
| Metric | Value |
|--------|-------|
| Wall time | 100.0s |
| Peak memory | 11.7 GiB |
| Avg memory | 4.5 GiB |
| CPU user | 989.5s |
| CPU sys | 69.0s |
| Peak spill | 0 B |
**clickbench_partitioned β branch**
| Metric | Value |
|--------|-------|
| Wall time | 100.0s |
| Peak memory | 11.7 GiB |
| Avg memory | 4.1 GiB |
| CPU user | 999.7s |
| CPU sys | 73.2s |
| Peak spill | 0 B |
</details>
---
[File an issue](https://github.com/adriangb/datafusion-benchmarking/issues) against this benchmark runner
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: github-unsubscribe@datafusion.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: github-unsubscribe@datafusion.apache.org
For additional commands, e-mail: github-help@datafusion.apache.org
Re: [PR] perf: `BlockedVec` storage for aggregations [datafusion]
Posted by "adriangbot (via GitHub)" <gi...@apache.org>.
adriangbot commented on PR #24815:
URL: https://github.com/apache/datafusion/pull/24815#issuecomment-5475750523
Benchmark for [this request](https://github.com/apache/datafusion/pull/24815#issuecomment-5475546313) failed before finishing (Kubernetes reason: `BackoffLimitExceeded`).
Benchmarks requested: `clickbench`
<details><summary>Kubernetes message</summary>
```
Job has reached the specified backoff limit
```
</details>
---
[File an issue](https://github.com/adriangb/datafusion-benchmarking/issues) against this benchmark runner
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: github-unsubscribe@datafusion.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: github-unsubscribe@datafusion.apache.org
For additional commands, e-mail: github-help@datafusion.apache.org
Re: [PR] perf: `BlockedVec` storage for aggregations [datafusion]
Posted by "adriangbot (via GitHub)" <gi...@apache.org>.
adriangbot commented on PR #24815:
URL: https://github.com/apache/datafusion/pull/24815#issuecomment-5475576960
π€ Benchmark running (GKE) | [trigger](https://github.com/apache/datafusion/pull/24815#issuecomment-5475546313)
**Instance:** `c4a-highmem-16` (12 vCPU / 65 GiB) | `Linux bench-c5475546313-2052-cww97 6.12.85+ #1 SMP Sat Jun 27 09:31:30 UTC 2026 aarch64 GNU/Linux`
<details><summary>CPU Details (lscpu)</summary>
```
Architecture: aarch64
CPU op-mode(s): 64-bit
Byte Order: Little Endian
CPU(s): 16
On-line CPU(s) list: 0-15
Vendor ID: ARM
Model name: Neoverse-V2
Model: 1
Thread(s) per core: 1
Core(s) per cluster: 16
Socket(s): -
Cluster(s): 1
Stepping: r0p1
BogoMIPS: 2000.00
Flags: fp asimd evtstrm aes pmull sha1 sha2 crc32 atomics fphp asimdhp cpuid asimdrdm jscvt fcma lrcpc dcpop sha3 sm3 sm4 asimddp sha512 sve asimdfhm dit uscat ilrcpc flagm sb paca pacg dcpodp sve2 sveaes svepmull svebitperm svesha3 svesm4 flagm2 frint svei8mm svebf16 i8mm bf16 dgh rng bti
L1d cache: 1 MiB (16 instances)
L1i cache: 1 MiB (16 instances)
L2 cache: 32 MiB (16 instances)
L3 cache: 80 MiB (1 instance)
NUMA node(s): 1
NUMA node0 CPU(s): 0-15
Vulnerability Gather data sampling: Not affected
Vulnerability Indirect target selection: Not affected
Vulnerability Itlb multihit: Not affected
Vulnerability L1tf: Not affected
Vulnerability Mds: Not affected
Vulnerability Meltdown: Not affected
Vulnerability Mmio stale data: Not affected
Vulnerability Reg file data sampling: Not affected
Vulnerability Retbleed: Not affected
Vulnerability Spec rstack overflow: Not affected
Vulnerability Spec store bypass: Mitigation; Speculative Store Bypass disabled via prctl
Vulnerability Spectre v1: Mitigation; __user pointer sanitization
Vulnerability Spectre v2: Mitigation; CSV2, BHB
Vulnerability Srbds: Not affected
Vulnerability Tsa: Not affected
Vulnerability Tsx async abort: Not affected
Vulnerability Vmscape: Not affected
```
</details>
Comparing perf/aggregate-state-growth (e3fe1da86f9e19aca48a7c2bb14ea314b7854531) to 9c44fc0 (merge-base) [diff](https://github.com/apache/datafusion/compare/9c44fc02ad80c06efb38e175d900d2497eff1454..e3fe1da86f9e19aca48a7c2bb14ea314b7854531)
<details><summary>Run configuration</summary>
```yaml
run benchmark clickbench
```
</details>
Results will be posted here when complete
---
[File an issue](https://github.com/adriangb/datafusion-benchmarking/issues) against this benchmark runner
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: github-unsubscribe@datafusion.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: github-unsubscribe@datafusion.apache.org
For additional commands, e-mail: github-help@datafusion.apache.org
Re: [PR] perf: hold per-group accumulator state in blocks once it is large [datafusion]
Posted by "codecov-commenter (via GitHub)" <gi...@apache.org>.
codecov-commenter commented on PR #24815:
URL: https://github.com/apache/datafusion/pull/24815#issuecomment-5474885790
## [Codecov](https://app.codecov.io/gh/apache/datafusion/pull/24815?dropdown=coverage&src=pr&el=h1&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache) Report
:x: Patch coverage is `72.12644%` with `97 lines` in your changes missing coverage. Please review.
:white_check_mark: Project coverage is 81.52%. Comparing base ([`9c44fc0`](https://app.codecov.io/gh/apache/datafusion/commit/9c44fc02ad80c06efb38e175d900d2497eff1454?dropdown=coverage&el=desc&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache)) to head ([`ab42ba5`](https://app.codecov.io/gh/apache/datafusion/commit/ab42ba51d7126788e700b6905eedc10d009fe129?dropdown=coverage&el=desc&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache)).
:warning: Report is 2 commits behind head on main.
| [Files with missing lines](https://app.codecov.io/gh/apache/datafusion/pull/24815?dropdown=coverage&src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache) | Patch % | Lines |
|---|---|---|
| [datafusion/functions-aggregate/src/average.rs](https://app.codecov.io/gh/apache/datafusion/pull/24815?src=pr&el=tree&filepath=datafusion%2Ffunctions-aggregate%2Fsrc%2Faverage.rs&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache#diff-ZGF0YWZ1c2lvbi9mdW5jdGlvbnMtYWdncmVnYXRlL3NyYy9hdmVyYWdlLnJz) | 57.95% | [37 Missing :warning: ](https://app.codecov.io/gh/apache/datafusion/pull/24815?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache) |
| [...on/src/aggregate/groups\_accumulator/blocked\_vec.rs](https://app.codecov.io/gh/apache/datafusion/pull/24815?src=pr&el=tree&filepath=datafusion%2Ffunctions-aggregate-common%2Fsrc%2Faggregate%2Fgroups_accumulator%2Fblocked_vec.rs&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache#diff-ZGF0YWZ1c2lvbi9mdW5jdGlvbnMtYWdncmVnYXRlLWNvbW1vbi9zcmMvYWdncmVnYXRlL2dyb3Vwc19hY2N1bXVsYXRvci9ibG9ja2VkX3ZlYy5ycw==) | 83.24% | [30 Missing and 1 partial :warning: ](https://app.codecov.io/gh/apache/datafusion/pull/24815?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache) |
| [datafusion/functions-aggregate/src/count.rs](https://app.codecov.io/gh/apache/datafusion/pull/24815?src=pr&el=tree&filepath=datafusion%2Ffunctions-aggregate%2Fsrc%2Fcount.rs&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache#diff-ZGF0YWZ1c2lvbi9mdW5jdGlvbnMtYWdncmVnYXRlL3NyYy9jb3VudC5ycw==) | 58.13% | [18 Missing :warning: ](https://app.codecov.io/gh/apache/datafusion/pull/24815?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache) |
| [...common/src/aggregate/groups\_accumulator/prim\_op.rs](https://app.codecov.io/gh/apache/datafusion/pull/24815?src=pr&el=tree&filepath=datafusion%2Ffunctions-aggregate-common%2Fsrc%2Faggregate%2Fgroups_accumulator%2Fprim_op.rs&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache#diff-ZGF0YWZ1c2lvbi9mdW5jdGlvbnMtYWdncmVnYXRlLWNvbW1vbi9zcmMvYWdncmVnYXRlL2dyb3Vwc19hY2N1bXVsYXRvci9wcmltX29wLnJz) | 65.62% | [11 Missing :warning: ](https://app.codecov.io/gh/apache/datafusion/pull/24815?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache) |
<details><summary>Additional details and impacted files</summary>
```diff
@@ Coverage Diff @@
## main #24815 +/- ##
==========================================
- Coverage 81.52% 81.52% -0.01%
==========================================
Files 1123 1124 +1
Lines 406194 406563 +369
Branches 406194 406563 +369
==========================================
+ Hits 331163 331443 +280
- Misses 55664 55752 +88
- Partials 19367 19368 +1
```
</details>
[:umbrella: View full report in Codecov by Harness](https://app.codecov.io/gh/apache/datafusion/pull/24815?dropdown=coverage&src=pr&el=continue&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache).
:loudspeaker: Have feedback on the report? [Share it here](https://about.codecov.io/codecov-pr-comment-feedback/?utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache).
<details><summary> :rocket: New features to boost your workflow: </summary>
- :snowflake: [Test Analytics](https://docs.codecov.com/docs/test-analytics): Detect flaky tests, report on failures, and find test suite problems.
- :package: [JS Bundle Analysis](https://docs.codecov.com/docs/javascript-bundle-analysis): Save yourself from yourself by tracking and limiting bundle sizes in JS merges.
</details>
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: github-unsubscribe@datafusion.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: github-unsubscribe@datafusion.apache.org
For additional commands, e-mail: github-help@datafusion.apache.org
Re: [PR] perf: `BlockedVec` storage for aggregations [datafusion]
Posted by "Dandandan (via GitHub)" <gi...@apache.org>.
Dandandan commented on PR #24815:
URL: https://github.com/apache/datafusion/pull/24815#issuecomment-5477482214
run benchmark clickbench_partitioned
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: github-unsubscribe@datafusion.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: github-unsubscribe@datafusion.apache.org
For additional commands, e-mail: github-help@datafusion.apache.org
Re: [PR] perf: `BlockedVec` storage for aggregations [datafusion]
Posted by "Dandandan (via GitHub)" <gi...@apache.org>.
Dandandan commented on PR #24815:
URL: https://github.com/apache/datafusion/pull/24815#issuecomment-5475546313
run benchmark clickbench
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: github-unsubscribe@datafusion.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: github-unsubscribe@datafusion.apache.org
For additional commands, e-mail: github-help@datafusion.apache.org
Re: [PR] perf: `BlockedVec` storage for aggregations [datafusion]
Posted by "adriangbot (via GitHub)" <gi...@apache.org>.
adriangbot commented on PR #24815:
URL: https://github.com/apache/datafusion/pull/24815#issuecomment-5477509154
π€ Benchmark running (GKE) | [trigger](https://github.com/apache/datafusion/pull/24815#issuecomment-5477482214)
**Instance:** `c4a-highmem-16` (12 vCPU / 65 GiB) | `Linux bench-c5477482214-2053-hcp5f 6.12.85+ #1 SMP Sat Jun 27 09:31:30 UTC 2026 aarch64 GNU/Linux`
<details><summary>CPU Details (lscpu)</summary>
```
Architecture: aarch64
CPU op-mode(s): 64-bit
Byte Order: Little Endian
CPU(s): 16
On-line CPU(s) list: 0-15
Vendor ID: ARM
Model name: Neoverse-V2
Model: 1
Thread(s) per core: 1
Core(s) per cluster: 16
Socket(s): -
Cluster(s): 1
Stepping: r0p1
BogoMIPS: 2000.00
Flags: fp asimd evtstrm aes pmull sha1 sha2 crc32 atomics fphp asimdhp cpuid asimdrdm jscvt fcma lrcpc dcpop sha3 sm3 sm4 asimddp sha512 sve asimdfhm dit uscat ilrcpc flagm sb paca pacg dcpodp sve2 sveaes svepmull svebitperm svesha3 svesm4 flagm2 frint svei8mm svebf16 i8mm bf16 dgh rng bti
L1d cache: 1 MiB (16 instances)
L1i cache: 1 MiB (16 instances)
L2 cache: 32 MiB (16 instances)
L3 cache: 80 MiB (1 instance)
NUMA node(s): 1
NUMA node0 CPU(s): 0-15
Vulnerability Gather data sampling: Not affected
Vulnerability Indirect target selection: Not affected
Vulnerability Itlb multihit: Not affected
Vulnerability L1tf: Not affected
Vulnerability Mds: Not affected
Vulnerability Meltdown: Not affected
Vulnerability Mmio stale data: Not affected
Vulnerability Reg file data sampling: Not affected
Vulnerability Retbleed: Not affected
Vulnerability Spec rstack overflow: Not affected
Vulnerability Spec store bypass: Mitigation; Speculative Store Bypass disabled via prctl
Vulnerability Spectre v1: Mitigation; __user pointer sanitization
Vulnerability Spectre v2: Mitigation; CSV2, BHB
Vulnerability Srbds: Not affected
Vulnerability Tsa: Not affected
Vulnerability Tsx async abort: Not affected
Vulnerability Vmscape: Not affected
```
</details>
Comparing perf/aggregate-state-growth (fe0a008b0e162eb864376b9ab4c6ae584b28d0ba) to 9c44fc0 (merge-base) [diff](https://github.com/apache/datafusion/compare/9c44fc02ad80c06efb38e175d900d2497eff1454..fe0a008b0e162eb864376b9ab4c6ae584b28d0ba)
<details><summary>Run configuration</summary>
```yaml
run benchmark clickbench_partitioned
```
</details>
Results will be posted here when complete
---
[File an issue](https://github.com/adriangb/datafusion-benchmarking/issues) against this benchmark runner
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: github-unsubscribe@datafusion.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: github-unsubscribe@datafusion.apache.org
For additional commands, e-mail: github-help@datafusion.apache.org