Convert trivial filters into slices during reduction, MaskValues::last uses BitBuffer::last_set_index - #9831
Convert trivial filters into slices during reduction, MaskValues::last uses BitBuffer::last_set_index#9831robert3005 wants to merge 1 commit into
15 benchmarks 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.
⚡ 21 improved benchmarks
❌ 15 regressed benchmarks
✅ 2161 untouched benchmarks
⏩ 218 skipped benchmarks1
Warning
Please fix the performance issues or acknowledge them on CodSpeed.
Performance Changes
| Mode | Benchmark | BASE |
HEAD |
Efficiency | |
|---|---|---|---|---|---|
| ❌ | WallTime | arrow_checked_add_u32_neon[16384] |
12.3 µs | 20.4 µs | -39.88% |
| ❌ | Simulation | random_i8[0.5] |
67.8 µs | 93.1 µs | -27.14% |
| ❌ | Simulation | take_filter_primitive_nullable_slice_mask_random_indices[4096, 1000] |
99.9 µs | 130.9 µs | -23.68% |
| ❌ | Simulation | take_filter_primitive_nullable_slice_mask_random_indices[16384, 1000] |
118.4 µs | 151.1 µs | -21.6% |
| ❌ | Simulation | filter_list_primitive_short[Sparse] |
132.6 µs | 168.3 µs | -21.18% |
| ❌ | Simulation | filter_list_primitive_wide[Sparse] |
133.5 µs | 168.9 µs | -20.94% |
| ❌ | Simulation | filter_list_primitive_short[Clustered] |
134.2 µs | 168.4 µs | -20.3% |
| ❌ | Simulation | filter_list_primitive_short[Prefix] |
137.8 µs | 169.6 µs | -18.74% |
| ❌ | Simulation | filter_list_primitive_wide[Clustered] |
137.9 µs | 169.2 µs | -18.52% |
| ❌ | Simulation | filter_list_primitive_wide[Prefix] |
138.2 µs | 169 µs | -18.22% |
| ❌ | Simulation | filter_powerlaw_by_random[10000] |
32.3 µs | 37.9 µs | -14.83% |
| ❌ | Simulation | take_filter_primitive_slice_mask_sequential_indices[16384, 1000] |
52.8 µs | 61 µs | -13.48% |
| ❌ | WallTime | dict_canonicalize_gt_u8_neon[1000000] |
486.9 µs | 560 µs | -13.05% |
| ❌ | WallTime | words_gather_scalar_avx2[65536] |
8.2 µs | 9.4 µs | -12.24% |
| ❌ | WallTime | dict_canonicalize_gt_u8_neon[16000000] |
8.4 ms | 9.3 ms | -10.07% |
| ⚡ | Simulation | density_sweep_single_slice[0.9999] |
84.2 µs | 27.3 µs | ×3.1 |
| ⚡ | Simulation | density_sweep_single_slice[0.999] |
84 µs | 27.3 µs | ×3.1 |
| ⚡ | Simulation | density_sweep_single_slice[0.99] |
83.7 µs | 27.3 µs | ×3.1 |
| ⚡ | Simulation | density_sweep_single_slice[0.95] |
82.2 µs | 27.3 µs | ×3 |
| ⚡ | Simulation | density_sweep_single_slice[0.9] |
80.4 µs | 27.3 µs | ×2.9 |
| ... | ... | ... | ... | ... | ... |
ℹ️ Only the first 20 benchmarks are displayed. Go to the app to view all benchmarks.
Tip
Investigate this regression by commenting @codspeedbot fix this regression on this PR, or directly use the CodSpeed MCP with your agent.
Comparing rk/trivialfilter (d997574) with develop (8e2aa05)
Footnotes
-
218 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. ↩