Optimize bit iteration and validity checking with SIMD popcount#8636
Optimize bit iteration and validity checking with SIMD popcount#8636robert3005 wants to merge 1 commit into
Performance Regression: -14.66%
⚠️ 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.
❌ 1 regressed benchmark
✅ 1594 untouched benchmarks
🆕 48 new benchmarks
⏩ 4 skipped benchmarks1
Warning
Please fix the performance issues or acknowledge them on CodSpeed.
Performance Changes
| Mode | Benchmark | BASE |
HEAD |
Efficiency | |
|---|---|---|---|---|---|
| ❌ | Simulation | slice_empty_vortex |
339.4 ns | 397.8 ns | -14.66% |
| 🆕 | Simulation | execute_mask_then_value[1024] |
N/A | 8.9 µs | N/A |
| 🆕 | Simulation | execute_mask_then_value[256] |
N/A | 12.8 µs | N/A |
| 🆕 | Simulation | is_valid_per_element[1024] |
N/A | 186.6 µs | N/A |
| 🆕 | Simulation | is_valid_per_element[256] |
N/A | 48.6 µs | N/A |
| 🆕 | Simulation | filter_run_end[len=16384_run=16_density=0.1] |
N/A | 70.2 µs | N/A |
| 🆕 | Simulation | filter_run_end[len=16384_run=16_density=0.5] |
N/A | 69.4 µs | N/A |
| 🆕 | Simulation | filter_run_end[len=16384_run=16_density=0.9] |
N/A | 69 µs | N/A |
| 🆕 | Simulation | filter_run_end[len=4096_run=16_density=0.1] |
N/A | 67.9 µs | N/A |
| 🆕 | Simulation | filter_run_end[len=4096_run=16_density=0.5] |
N/A | 22.9 µs | N/A |
| 🆕 | Simulation | filter_run_end[len=4096_run=16_density=0.9] |
N/A | 22.9 µs | N/A |
| 🆕 | Simulation | many_indices[(16384, 0.1)] |
N/A | 16.3 µs | N/A |
| 🆕 | Simulation | many_indices[(16384, 0.9)] |
N/A | 16.3 µs | N/A |
| 🆕 | Simulation | slice_bounds[(16384, 0.1)] |
N/A | 3 µs | N/A |
| 🆕 | Simulation | slice_bounds[(16384, 0.9)] |
N/A | 3 µs | N/A |
| 🆕 | Simulation | bit_iterator[(16384, 0.01)] |
N/A | 64.3 µs | N/A |
| 🆕 | Simulation | bit_iterator[(16384, 0.1)] |
N/A | 73.3 µs | N/A |
| 🆕 | Simulation | bit_iterator[(16384, 0.5)] |
N/A | 113.7 µs | N/A |
| 🆕 | Simulation | bit_iterator[(16384, 0.9)] |
N/A | 153.9 µs | N/A |
| 🆕 | Simulation | bit_iterator[(16384, 0.99)] |
N/A | 160.8 µs | N/A |
| ... | ... | ... | ... | ... | ... |
ℹ️ 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 claude/bit-iterator-perf-0IMQ5 (7609b8f) with develop (890704f)
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. ↩