[
https://issues.apache.org/jira/browse/LUCENE-1485?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12655862#action_12655862
]
Yonik Seeley commented on LUCENE-1485:
--------------------------------------
bq. It is somewhat surprising given OpenBitSet is supposed to be the "fastest"
bitset
For doing population counts, and intersection/union population counts, yes.
And it's also "Open" so if there is a faster method of doing something, it can
still be done. The point was not to make a faster get(bitnum) - that's really
going to be in the noise and certainly not worth writing a whole new BitSet
class over.
w.r.t. Lucene's BitVector, it's byte based, so is likely to be slightly faster
on x86, esp 32 bit. No need to check a long when you can check a byte for a
flipped bit.
bq. It seems that Lucene should have ways to incorporate new bitset
implementations in the future using interfaces and things.
DocIdSet?
> Use OpenBitSet instead of BitVector in SegmentReader
> ----------------------------------------------------
>
> Key: LUCENE-1485
> URL: https://issues.apache.org/jira/browse/LUCENE-1485
> Project: Lucene - Java
> Issue Type: Improvement
> Components: Index
> Affects Versions: 2.4
> Reporter: Jason Rutherglen
> Priority: Minor
> Attachments: TestDeletedDocsSpeed.java
>
> Original Estimate: 96h
> Remaining Estimate: 96h
>
> Tried out BitVector.get vs OpenBitSet.get here's the results which are about
> the same after running 25 times in milliseconds. It is assumed that
> implementing DocIdSetIterator in SegmentTermDocs will speed things up more.
> bit set size: 10,485,760
> set bits count: 524,032
> openbitset: 68
> bitvector: 89
> 24% speed increase.
> I will implement a patch that adds the WriteableBitSet interface and make a
> subclass of OpenBitSet that is writeable to disk. We're working on an
> isSparse method for OpenBitSet.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]