perf(duckdb): push down list length expressions#8544
1 benchmark regressed
⚠️ 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.
⚡ 6 improved benchmarks
❌ 1 regressed benchmark
✅ 1582 untouched benchmarks
🆕 6 new benchmarks
⏩ 4 skipped benchmarks1
Warning
Please fix the performance issues or acknowledge them on CodSpeed.
Performance Changes
| Mode | Benchmark | BASE |
HEAD |
Efficiency | |
|---|---|---|---|---|---|
| ❌ | Simulation | chunked_varbinview_into_canonical[(1000, 10)] |
169 µs | 205.5 µs | -17.76% |
| ⚡ | Simulation | copy_nullable[65536] |
1.4 ms | 1 ms | +32.08% |
| ⚡ | Simulation | copy_non_nullable[65536] |
1,089.1 µs | 908.3 µs | +19.91% |
| ⚡ | Simulation | chunked_varbinview_canonical_into[(100, 100)] |
259.7 µs | 224.5 µs | +15.67% |
| ⚡ | Simulation | bitwise_not_vortex_buffer_mut[128] |
244.4 ns | 215.3 ns | +13.55% |
| ⚡ | Simulation | chunked_varbinview_into_canonical[(100, 100)] |
306.5 µs | 271.1 µs | +13.06% |
| ⚡ | Simulation | bitwise_not_vortex_buffer_mut[1024] |
304.7 ns | 275.6 ns | +10.58% |
| 🆕 | Simulation | list_large |
N/A | 10 ms | N/A |
| 🆕 | Simulation | list_medium |
N/A | 144 µs | N/A |
| 🆕 | Simulation | list_small |
N/A | 58.8 µs | N/A |
| 🆕 | Simulation | listview_large |
N/A | 6 ms | N/A |
| 🆕 | Simulation | listview_medium |
N/A | 98.1 µs | N/A |
| 🆕 | Simulation | listview_small |
N/A | 39 µs | N/A |
Tip
Investigate this regression by commenting @codspeedbot fix this regression on this PR, or directly use the CodSpeed MCP with your agent.
Comparing mk/duckdb-list-length-pushdown (42ddb5d) with develop (9567467)
Footnotes
-
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. ↩