Implement some traits for rayon support.
This commit is contained in:
33
benches/bench.rs
Normal file
33
benches/bench.rs
Normal file
@@ -0,0 +1,33 @@
|
||||
#[macro_use]
|
||||
extern crate criterion;
|
||||
extern crate rand;
|
||||
|
||||
extern crate bit_set;
|
||||
|
||||
use std::iter::FromIterator;
|
||||
|
||||
use criterion::Criterion;
|
||||
use rand::{Rng, SeedableRng, XorShiftRng};
|
||||
|
||||
use bit_set::BitSet;
|
||||
|
||||
fn default_set<C: FromIterator<u64>>(n: usize) -> C {
|
||||
let mut rng = XorShiftRng::from_seed([0, 1, 2, 3]);
|
||||
|
||||
(0..n).map(|_| rng.next_u64()).collect()
|
||||
}
|
||||
|
||||
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);
|
||||
}
|
||||
}));
|
||||
}
|
||||
|
||||
criterion_group!(benches, criterion_benchmark);
|
||||
criterion_main!(benches);
|
||||
Reference in New Issue
Block a user