Skip to content

perf(datafusion): push down list_length expression#8600

Draft
mhk197 wants to merge 2 commits into
mk/list-lengthfrom
mk/datafusion-list-length-pushdown
Draft

perf(datafusion): push down list_length expression#8600
mhk197 wants to merge 2 commits into
mk/list-lengthfrom
mk/datafusion-list-length-pushdown

comments and test change

2083090
Select commit
Loading
Failed to load commit list.
CodSpeed HQ / CodSpeed Performance Analysis failed Jun 26, 2026 in 0s

Performance Regression: -0.81%

⚠️ Unknown Walltime execution environment detected

Using the Walltime instrument on standard Hosted Runners will lead to inconsistent data.

For the most accurate results, we recommend using CodSpeed Macro Runners: bare-metal machines fine-tuned for performance measurement consistency.

⚠️ Different runtime environments detected

Some benchmarks with significant performance changes were compared across different runtime environments,
which may affect the accuracy of the results.

Open the report in CodSpeed to investigate

⚡ 3 improved benchmarks
❌ 4 regressed benchmarks
✅ 1588 untouched benchmarks
⏩ 4 skipped benchmarks1

Warning

Please fix the performance issues or acknowledge them on CodSpeed.

Performance Changes

Mode Benchmark BASE HEAD Efficiency
Simulation bitwise_not_vortex_buffer_mut[128] 186.1 ns 215.3 ns -13.55%
Simulation chunked_varbinview_canonical_into[(100, 100)] 224.5 µs 259.6 µs -13.51%
Simulation chunked_varbinview_into_canonical[(100, 100)] 271.1 µs 306.3 µs -11.51%
Simulation bitwise_not_vortex_buffer_mut[1024] 246.4 ns 275.6 ns -10.58%
Simulation chunked_varbinview_into_canonical[(1000, 10)] 205.5 µs 168.8 µs +21.72%
WallTime cuda/bitpacked_u8/unpack/3bw[100M] 349.2 µs 299.4 µs +16.63%
Simulation rebuild_naive 111 µs 98.6 µs +12.5%

Tip

Investigate this regression by commenting @codspeedbot fix this regression on this PR, or directly use the CodSpeed MCP with your agent.


Comparing mk/datafusion-list-length-pushdown (2083090) with mk/list-length (f4b87bb)

Open in CodSpeed

Footnotes

  1. 4 benchmarks were skipped, so the baseline results were used instead. If they were deleted from the codebase, click here and archive them to remove them from the performance reports.