Skip to content

perf[buffer]: iteration for fallible operations with validity#8120

Open
joseph-isaacs wants to merge 19 commits into
developfrom
ji/fast-iter-valid
Open

perf[buffer]: iteration for fallible operations with validity#8120
joseph-isaacs wants to merge 19 commits into
developfrom
ji/fast-iter-valid

Conversation

@joseph-isaacs
Copy link
Copy Markdown
Contributor

@joseph-isaacs joseph-isaacs commented May 27, 2026

Currently use (and arrow) handle fallible operations with scalar (non-SIMD) code.

This PR add a trait and methods to have fast SIMD checked operations (includes cast) but verified else where that checked_add benefits

@codspeed-hq
Copy link
Copy Markdown

codspeed-hq Bot commented May 27, 2026

Merging this PR will not alter performance

✅ 1227 untouched benchmarks
🆕 10 new benchmarks
⏩ 39 skipped benchmarks1

Performance Changes

Mode Benchmark BASE HEAD Efficiency
🆕 Simulation cast_u32_to_u8[65536] N/A 250.5 µs N/A
🆕 Simulation cast_i32_to_u32[65536] N/A 832.9 µs N/A
🆕 Simulation cast_u16_to_u32[65536] N/A 210.6 µs N/A
🆕 Simulation try_map_masked_into_in_place_narrow_i32_u32[65536] N/A 172.7 µs N/A
🆕 Simulation bitpack_value_only[65536] N/A 452 µs N/A
🆕 Simulation map_with_mask_widen_u16_u32[65536] N/A 189.6 µs N/A
🆕 Simulation map_with_mask_narrow_u64_u32[65536] N/A 387.1 µs N/A
🆕 Simulation try_map_into_narrow_u64_u32[65536] N/A 424 µs N/A
🆕 Simulation try_map_masked_into_narrow_i32_u32[65536] N/A 292.4 µs N/A
🆕 Simulation try_map_masked_into_widen_u16_u32[65536] N/A 190 µs N/A

Comparing ji/fast-iter-valid (ca2ad88) with develop (a2323f1)

Open in CodSpeed

Footnotes

  1. 39 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.

Signed-off-by: Joe Isaacs <joe.isaacs@live.co.uk>
Signed-off-by: Joe Isaacs <joe.isaacs@live.co.uk>
Signed-off-by: Joe Isaacs <joe.isaacs@live.co.uk>
f
Signed-off-by: Joe Isaacs <joe.isaacs@live.co.uk>
f
Signed-off-by: Joe Isaacs <joe.isaacs@live.co.uk>
f
Signed-off-by: Joe Isaacs <joe.isaacs@live.co.uk>
f
Signed-off-by: Joe Isaacs <joe.isaacs@live.co.uk>
f
Signed-off-by: Joe Isaacs <joe.isaacs@live.co.uk>
f
Signed-off-by: Joe Isaacs <joe.isaacs@live.co.uk>
f
Signed-off-by: Joe Isaacs <joe.isaacs@live.co.uk>
f
Signed-off-by: Joe Isaacs <joe.isaacs@live.co.uk>
f
Signed-off-by: Joe Isaacs <joe.isaacs@live.co.uk>
f
Signed-off-by: Joe Isaacs <joe.isaacs@live.co.uk>
@joseph-isaacs joseph-isaacs changed the title faster iteration infra perf[buffer]: iteration for fallible operations with validity May 27, 2026
@joseph-isaacs joseph-isaacs marked this pull request as ready for review May 27, 2026 15:13
@joseph-isaacs
Copy link
Copy Markdown
Contributor Author

Open question is where to put this code?

f
Signed-off-by: Joe Isaacs <joe.isaacs@live.co.uk>
f
Signed-off-by: Joe Isaacs <joe.isaacs@live.co.uk>
f
Signed-off-by: Joe Isaacs <joe.isaacs@live.co.uk>
f
Signed-off-by: Joe Isaacs <joe.isaacs@live.co.uk>
f
Signed-off-by: Joe Isaacs <joe.isaacs@live.co.uk>
f
Signed-off-by: Joe Isaacs <joe.isaacs@live.co.uk>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant