Skip to content

Optimize bit iteration and validity checking with SIMD popcount#8636

Open
robert3005 wants to merge 1 commit into
developfrom
claude/bit-iterator-perf-0IMQ5
Open

Optimize bit iteration and validity checking with SIMD popcount#8636
robert3005 wants to merge 1 commit into
developfrom
claude/bit-iterator-perf-0IMQ5

perf(mask): SIMD popcount for valid_counts_for_indices

7609b8f
Select commit
Loading
Failed to load commit list.
CodSpeed HQ / CodSpeed Performance Analysis failed Jul 2, 2026 in 0s

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)

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.