Small performance boost.

This commit is contained in:
2018-01-12 18:17:59 +01:00
parent f37cc5efa6
commit ae6e292c9d
3 changed files with 49 additions and 25 deletions

View File

@@ -17,16 +17,27 @@ fn default_set<C: FromIterator<u64>>(n: usize) -> C {
(0..n).map(|_| rng.next_u64()).collect()
}
fn contains(data: &[u64]) {
let set = BitSet::new();
for v in data {
set.contains(v);
}
}
fn insert(data: &[u64]) {
let mut set = BitSet::new();
for v in data {
set.insert(*v);
}
}
fn criterion_benchmark(c: &mut Criterion) {
let data: Vec<_> = default_set(1000);
c.bench_function("insert", |b| b.iter(|| {
let mut set = BitSet::new();
for v in &data {
set.insert(*v);
}
}));
c.bench_function("contains", |b| b.iter(|| contains(&data)));
c.bench_function("insert", |b| b.iter(|| insert(&data)));
}
criterion_group!(benches, criterion_benchmark);