Details

    • Type: New Feature New Feature
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 1.1.0
    • Component/s: None
    • Labels:
      None

      Description

      OpenBitSet, a faster, and open implementation of a set of bits.
      There should be enough implemented such that it could be used for filters in Solr and/or Lucene.

      Home should probably be solr.util or lucene.util if it's deemed desirable.

      1. BitSetIterator.java
        6 kB
        Yonik Seeley
      2. BitSetIterator.java
        6 kB
        Yonik Seeley
      3. BitSetPerf.java
        5 kB
        Yonik Seeley
      4. BitSetPerf.java
        5 kB
        Yonik Seeley
      5. OpenBitSet.java
        39 kB
        Yonik Seeley
      6. OpenBitSet.java
        39 kB
        Yonik Seeley
      7. OpenBitSet.java
        33 kB
        Yonik Seeley
      8. TestOpenBitSet.java
        4 kB
        Yonik Seeley
      9. TestOpenBitSet.java
        4 kB
        Yonik Seeley
      10. TestOpenBitSet.java
        3 kB
        Yonik Seeley

        Activity

        Hide
        Yonik Seeley added a comment -

        My Home Machine: Pentium 4, HyperThreaded, dual channel memory
        JVM: Java 1.5_06 -server -Xbatch -Xmx64M
        BitSet size = 1,000,000

        Relative Performance, java.util.BitSet time divided by OpenBitSet time:

        For 50% (500,000) bits set
        cardinality 3.36
        ntersect_count 3.96
        union 1.44
        nextSetBit 1.46
        get 1.99
        iterator 1.58

        For 1% (10,000) bits set
        cardinality 3.31
        ntersect_count 3.90
        nextSetBit 1.04
        iterator 0.99

        Show
        Yonik Seeley added a comment - My Home Machine: Pentium 4, HyperThreaded, dual channel memory JVM: Java 1.5_06 -server -Xbatch -Xmx64M BitSet size = 1,000,000 Relative Performance, java.util.BitSet time divided by OpenBitSet time: For 50% (500,000) bits set cardinality 3.36 ntersect_count 3.96 union 1.44 nextSetBit 1.46 get 1.99 iterator 1.58 For 1% (10,000) bits set cardinality 3.31 ntersect_count 3.90 nextSetBit 1.04 iterator 0.99
        Hide
        Yonik Seeley added a comment -

        added flip(fromIndex, toIndex),
        some expanding operations that expand the bitset if needed,
        more javadoc,
        Opteron performance comparison.

        Machine: AMD Opteron
        OS: Linux 64 bit
        JVM: 64 bit Java 1.5_06 -server -Xbatch -Xmx64M
        BitSet size = 1,000,000

        Relative Performance, java.util.BitSet time divided by OpenBitSet time:

        For 50% (500,000) bits set
        cardinality 2.50
        intersect_count 3.50
        union 1.00
        nextSetBit 1.03
        get 1.12
        iterator 1.25

        For 1% (10,000) bits set
        cardinality 2.51
        intersect_count 3.49
        nextSetBit 1.00
        iterator 1.02

        Show
        Yonik Seeley added a comment - added flip(fromIndex, toIndex), some expanding operations that expand the bitset if needed, more javadoc, Opteron performance comparison. Machine: AMD Opteron OS: Linux 64 bit JVM: 64 bit Java 1.5_06 -server -Xbatch -Xmx64M BitSet size = 1,000,000 Relative Performance, java.util.BitSet time divided by OpenBitSet time: For 50% (500,000) bits set cardinality 2.50 intersect_count 3.50 union 1.00 nextSetBit 1.03 get 1.12 iterator 1.25 For 1% (10,000) bits set cardinality 2.51 intersect_count 3.49 nextSetBit 1.00 iterator 1.02
        Hide
        Yonik Seeley added a comment -

        serializable, equals() implementation, javadoc updates

        Show
        Yonik Seeley added a comment - serializable, equals() implementation, javadoc updates
        Hide
        Yonik Seeley added a comment -

        committed, with extra changes.

        Show
        Yonik Seeley added a comment - committed, with extra changes.
        Hide
        Hoss Man added a comment -

        This bug was modified as part of a bulk update using the criteria...

        • Marked ("Resolved" or "Closed") and "Fixed"
        • Had no "Fix Version" versions
        • Was listed in the CHANGES.txt for 1.1

        The Fix Version for all 38 issues found was set to 1.1, email notification
        was suppressed to prevent excessive email.

        For a list of all the issues modified, search jira comments for this
        (hopefully) unique string: 20080415hossman3

        Show
        Hoss Man added a comment - This bug was modified as part of a bulk update using the criteria... Marked ("Resolved" or "Closed") and "Fixed" Had no "Fix Version" versions Was listed in the CHANGES.txt for 1.1 The Fix Version for all 38 issues found was set to 1.1, email notification was suppressed to prevent excessive email. For a list of all the issues modified, search jira comments for this (hopefully) unique string: 20080415hossman3

          People

          • Assignee:
            Yonik Seeley
            Reporter:
            Yonik Seeley
          • Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development