hhhizzz commented on PR #10446: URL: https://github.com/apache/arrow-rs/pull/10446#issuecomment-5199761952
> thanks for your reviews @hhhizzz , i apply the suggestion in [5fe3cb7](https://github.com/apache/arrow-rs/pull/10446/commits/5fe3cb7c221692027ede6c3eda57bb0c66f575ce). > > this is benchmark result after added the suggestion benchmark Thanks for providing the full `critcmp` output. The raw timings look stable, and the `equal/both_zero` result being flat is a useful sanity check. The remaining result I find surprising is `equal/diff_mod64`: - intersection: 98.8 µs -> 27.8 µs (3.55x) - union: 90.3 µs -> 27.7 µs (3.26x) With different mod-64 alignments, `BooleanBuffer::from_bitwise_binary_op` takes the shifting fallback and returns an offset-zero buffer. The old `buffer_bin_and` / `buffer_bin_or` wrappers should therefore use `into_inner()` without performing the additional normalization copy. The new path calls the same underlying helper directly. So the improvement looks real, but it does not appear to come from the redundant-copy removal described in the PR. Could you clarify whether this is a cross-crate inlining/codegen effect? One useful way to isolate it would be to benchmark `&left & &right` against a direct `from_bitwise_binary_op` call on the same commit and with the same inputs. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
