-
Notifications
You must be signed in to change notification settings - Fork 137
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
memdb: Implement btree.Item on item
directly, in addition to *item
#186
Comments
Hey, I can help in getting a release out to fix this, if you are willing to make a PR. I can push a branch for you to target as master has diverged too much to be used for this |
smh stale bot |
Can we please remove stale bot issue closing =/ Its not even that long of a wait atm |
yea ill fix |
What's the status of this one? I guess I want to include it in the notinal tracking issue @ValarDragon do you think this is needed still? |
Yeah this is still useful |
great! |
So, fair to say this one is more important than #188 ? that’s good because ah, wow Pain is a teacher I guess? |
Seems set :) |
Per #186, this may help reduce allocation overhead. Co-authored-by: romelukaku <[email protected]>
Currently we force every btree item to be
*item
, not justitem
. This in turn causes every set to require new heap allocations, which turns out to be a significant overhead. These allocations cause lots of memory to need to be garbage collected, and this ends up often being the bottleneck, not the actual btree searching operations.In Osmosis, we get that we have ~no item spent in the btree operations, its all spent in allocating the
newPair
onto Heap. Heres a screenshot of a relevant flamegraph output here:The text was updated successfully, but these errors were encountered: