bones icon indicating copy to clipboard operation
bones copied to clipboard

Migrate Bitsets to Roaring Bitsets

Open zicklag opened this issue 3 months ago • 0 comments

Currently we use bitset_core for our bitsets, but I believe we could benefit in terms of performance and memory usage by using the roaring crate, which uses compressed bitsets. Being that our bitsets are, in most cases, extremely sparse, I think this could really help.

Eventually we probably want to do even better by moving to something like linked list storage instead of using bitsets and sparse vectors, but switching to roaring bitmaps should be a very easy change that could get us a lot of improvement.

We should see if we can profile Jumpy to see if there is any noticeable change in performance after the change. Even if it doesn't make it any faster, it should use up a lot less memory, which is a win as long as it isn't somehow slower.

zicklag avatar Mar 29 '24 15:03 zicklag