Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Unroll nibble ops #2894

Merged
merged 5 commits into from
Dec 9, 2024
Merged

Unroll nibble ops #2894

merged 5 commits into from
Dec 9, 2024

Conversation

arnetheduck
Copy link
Member

@arnetheduck arnetheduck commented Nov 30, 2024

A bit unexpectedly, nibble handling shows up in the profiler - this PR reuses unrolling similar to that of stint to process nibbles in 16-nibble chunks using uint64 as underlying storage instead of byte

@arnetheduck arnetheduck force-pushed the smaller-nibbles branch 2 times, most recently from 51c4936 to 4b99ee7 Compare December 2, 2024 18:15
@arnetheduck arnetheduck marked this pull request as draft December 3, 2024 10:20
@arnetheduck arnetheduck changed the title Simplify nibble handling Unroll nibble ops Dec 5, 2024
@arnetheduck arnetheduck marked this pull request as ready for review December 5, 2024 14:21
A bit unexpectedly, nibble handling shows up in the profiler mainly
because the current impl is tuned towards slicing while the most common
operation is prefix comparison - since the code is simple, might has
well get rid of some of the excess fat by always aliging the nibbles to
the byte buffer.
@arnetheduck arnetheduck merged commit 66ad549 into master Dec 9, 2024
28 checks passed
@arnetheduck arnetheduck deleted the smaller-nibbles branch December 9, 2024 07:15
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