use of org.apache.cassandra.utils.obs.OpenBitSet in project cassandra by apache.
the class LongBitSetTest method timeit.
@Test
public void timeit() {
// about 214 million
long size_to_test = Integer.MAX_VALUE / 10;
long size_and_excess = size_to_test + 20;
OpenBitSet obs = new OpenBitSet(size_and_excess);
OffHeapBitSet offbs = new OffHeapBitSet(size_and_excess);
logger.info("||Open BS set's|Open BS get's|Open BS clear's|Offheap BS set's|Offheap BS get's|Offheap BS clear's|");
// System.out.println("||Open BS set's|Open BS get's|Open BS clear's|Offheap BS set's|Offheap BS get's|Offheap BS clear's|");
loopOnce(obs, offbs, size_to_test);
}
use of org.apache.cassandra.utils.obs.OpenBitSet in project cassandra by apache.
the class LongBitSetTest method testBitSetOperations.
@Test
public void testBitSetOperations() {
long size_to_test = Integer.MAX_VALUE / 40;
long size_and_excess = size_to_test + 20;
OffHeapBitSet offbs = new OffHeapBitSet(size_and_excess);
OpenBitSet obs = new OpenBitSet(size_and_excess);
for (long i = 0; i < size_to_test; i++) populateRandom(offbs, obs, i);
for (long i = 0; i < size_to_test; i++) compare(offbs, obs, i);
}
use of org.apache.cassandra.utils.obs.OpenBitSet in project cassandra by apache.
the class FilterFactory method createFilter.
@SuppressWarnings("resource")
private static IFilter createFilter(int hash, long numElements, int bucketsPer, boolean offheap) {
long numBits = (numElements * bucketsPer) + BITSET_EXCESS;
IBitSet bitset = offheap ? new OffHeapBitSet(numBits) : new OpenBitSet(numBits);
return new BloomFilter(hash, bitset);
}
use of org.apache.cassandra.utils.obs.OpenBitSet in project cassandra by apache.
the class LongBitSetTest method loopIt.
/**
* Just to make sure JIT doesn't come on our way
*/
@Test
public // @Ignore
void loopIt() {
// about 214 million
long size_to_test = Integer.MAX_VALUE / 10;
long size_and_excess = size_to_test + 20;
OpenBitSet obs = new OpenBitSet(size_and_excess);
OffHeapBitSet offbs = new OffHeapBitSet(size_and_excess);
for (int i = 0; i < 10; i++) // 10 times to do approx 2B keys each.
loopOnce(obs, offbs, size_to_test);
}
use of org.apache.cassandra.utils.obs.OpenBitSet in project eiger by wlloyd.
the class BloomFilterSerializer method deserialize.
public BloomFilter deserialize(DataInput dis) throws IOException {
int hashes = dis.readInt();
long bitLength = dis.readInt();
OpenBitSet bs = new OpenBitSet(bitLength << 6);
int pageSize = bs.getPageSize();
int pageCount = bs.getPageCount();
for (int p = 0; p < pageCount; p++) {
long[] bits = bs.getPage(p);
for (int i = 0; i < pageSize && bitLength-- > 0; i++) bits[i] = dis.readLong();
}
return new BloomFilter(hashes, bs);
}
Aggregations