-
Notifications
You must be signed in to change notification settings - Fork 272
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
Feature request: intersection, union, and difference with the tail of another bitmap #591
Comments
I think we could support functions such as...
Is it? I suspect that there is a non-trivial fixed cost involved in starting to code this functionality, but the added complexity of handling both ends is probably not nearly 2x. It may take 15% longer, I would estimate. Of course, the result would be far neater. |
rages in off-by-one errors |
Also note that we'd have to implement out-of-place versions as well (at least at the container level), as in-place isn't really in-place for COW bitmaps. |
Right. So it is a non-trivial amount of work, for sure!!! My argument is that once you get started, it is not much more effort to do a symmetrical work. It can't be done in a minutes, no matter what. |
I have two bitmaps
a
andb
, I find one point insideb
(say using an iterator), and then I want to intersect / union / compute the set difference ofa
with the tail ofb
after that point.That is, I'd like the equivalent of
without the overhead of mutating
b
(thememmove
from array containers shows up meaningfully in my CPU profile).Roaring iterators already have all the information needed to implement this efficiently, and I sometimes need to walk through
a
to find the right spot (it's not as easy asrank(x)
) so I'd prefer this:Do you think this is worth implementing?
Thanks,
-Tudor.
The text was updated successfully, but these errors were encountered: