Animesh Trivedi created ARROW-3922:
--------------------------------------
Summary: improve the performance of bitmap operations
Key: ARROW-3922
URL: https://issues.apache.org/jira/browse/ARROW-3922
Project: Apache Arrow
Issue Type: Improvement
Reporter: Animesh Trivedi
Assignee: Animesh Trivedi
C++ bitmap code can be optimized further by using the unsigned integers than
"int64_t" for bitmap checks, and eliminating the kBitmap. See here
[https://godbolt.org/z/deq0_q] - compare the size of the assembly code. And the
performance measurements in the blog show up to 50% performance gains.
Alternatively if signed to unsigned upgrade is not possible (perhaps in every
language), then in the C++ code, we should use the bitmap operations directory
( `<<3` for division by 8, and ` & 0x7` for modulo by 8 operation), instead of
`/` and `%`.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)