Skip to content

Commit

Permalink
add benches
Browse files Browse the repository at this point in the history
  • Loading branch information
azizkayumov committed Dec 25, 2023
1 parent bb7f3c4 commit 9e12cd1
Show file tree
Hide file tree
Showing 3 changed files with 41 additions and 667 deletions.
5 changes: 5 additions & 0 deletions Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -11,3 +11,8 @@ ordered-float = "4.1.1"

[dev-dependencies]
rand = "0.8"
criterion = "0.5.1"

[[bench]]
name = "benchmark"
harness = false
36 changes: 36 additions & 0 deletions benches/benchmark.rs
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
use criterion::{criterion_group, criterion_main, Criterion};
use rand::{rngs::StdRng, Rng, SeedableRng};
use rindex::Index;

fn benchmark(criterion: &mut Criterion) {
let k = 10;
let n = 10000;
let seed = 0;

let mut group = criterion.benchmark_group("Insert + RkNN");
group.sample_size(10);

group.bench_function("SSTree", |b| b.iter(|| bench_sstree(k, n, seed)));
group.bench_function("Linear", |b| b.iter(|| bench_linear(k, n, seed)));
}

criterion_group!(benches, benchmark);
criterion_main!(benches);

fn bench_sstree(k: usize, n: usize, seed: u64) {
let mut tree = rindex::SSTree::new(k);
let mut rng = StdRng::seed_from_u64(seed);
for _ in 0..n {
let point = [rng.gen(), rng.gen()];
tree.insert(point);
}
}

fn bench_linear(k: usize, n: usize, seed: u64) {
let mut tree = rindex::LinearIndex::new(k);
let mut rng = StdRng::seed_from_u64(seed);
for _ in 0..n {
let point = [rng.gen(), rng.gen()];
tree.insert(point);
}
}
Loading

0 comments on commit 9e12cd1

Please sign in to comment.