tustvold opened a new pull request #1284:
URL: https://github.com/apache/arrow-rs/pull/1284
**Draft as builds on #1283 and #1277 **
# Which issue does this PR close?
Closes #1281.
# Rationale for this change
Make `DeltaBitPackDecoder` faster
# What changes are included in this PR?
Adapts `DeltaBitPackDecoder` to eliminate intermediate buffering, and to
vectorize better.
The performance bump is not quite what I was hoping for, I suspect
`unpack32` may not be vectorizing correctly, but is still decent.
```
arrow_array_reader/read Int32Array, binary packed, mandatory, no NULLs
time: [20.642 us 20.650 us 20.659 us]
change: [-73.470% -73.455% -73.441%] (p = 0.00 <
0.05)
Performance has improved.
arrow_array_reader/read Int32Array, binary packed, optional, no NULLs
time: [32.453 us 32.459 us 32.466 us]
change: [-63.907% -63.896% -63.885%] (p = 0.00 <
0.05)
Performance has improved.
arrow_array_reader/read Int32Array, binary packed, optional, half NULLs
time: [35.435 us 35.445 us 35.456 us]
change: [-44.831% -44.794% -44.745%] (p = 0.00 <
0.05)
Performance has improved.
```
# Are there any user-facing changes?
No
--
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]