Skip to content

Commit 28f385f

Browse files
Keatsboydgreenfield
authored andcommitted
Remove bencher usage
1 parent 081e406 commit 28f385f

File tree

4 files changed

+18
-25
lines changed

4 files changed

+18
-25
lines changed

.gitignore

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
target
22
Cargo.lock
33
.DS_Store
4-
.idea/
4+
.idea/
5+
bfield.mmap

Cargo.toml

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -10,10 +10,3 @@ murmurhash3 = "0.0.5"
1010
[features]
1111
backward_bytes = []
1212
rank_lookup = []
13-
14-
[dev-dependencies]
15-
bencher = "0.1.5"
16-
17-
[[bench]]
18-
name = "benchmark"
19-
harness = false

README.md

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,12 @@
55
mmap-bitvec is a library for working with mmap-backed bit-vectors and some simple
66
data structures derived from bit-vectors.
77

8-
## Example ##
8+
## Benchmarks
9+
10+
To run benchmarks you need to download a bfield.mmap file, I used `s3://refgenomics-datafiles/dbs/mg_targeted_loci_20160517/bfield.mmap` in
11+
the root of the repo and then run `cargo +nightly bench`.
12+
13+
## Example
914

1015
```rust
1116
let mut b = BitVec::from_memory(128).unwrap();
@@ -14,3 +19,4 @@ data structures derived from bit-vectors.
1419
assert!(b.get(2));
1520
assert_eq!(b.get_range(0..8), 0b00100000);
1621
```
22+

benches/benchmark.rs

Lines changed: 9 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,18 @@
1-
#[macro_use]
2-
extern crate bencher;
1+
#![feature(test)]
2+
extern crate test;
33
extern crate memmap;
44
extern crate mmap_bitvec;
55

66
use std::fs::OpenOptions;
77
use std::mem::transmute;
88
use std::ops::Range;
99

10-
use bencher::Bencher;
1110
use memmap::{MmapMut, MmapOptions};
1211
use mmap_bitvec::{BitVector, MmapBitVec};
1312

1413
type BitVecSlice = u64;
1514
const BIT_VEC_SLICE_SIZE: u8 = 64;
16-
const FILENAME: &str = "/Users/roderick/Documents/mgo_data/targeted_loci/bfield.mmap";
15+
const FILENAME: &str = "./bfield.mmap";
1716

1817
// we could use an RNG, but I want to make sure everything is
1918
// as comparable as possible
@@ -103,7 +102,8 @@ fn get_range(mmap: &MmapMut, size: usize, r: Range<usize>) -> BitVecSlice {
103102
v & (BitVecSlice::max_value() >> (BIT_VEC_SLICE_SIZE - new_size))
104103
}
105104

106-
fn bench_get_range_simplified(bench: &mut Bencher) {
105+
#[bench]
106+
fn bench_get_range_simplified(bench: &mut test::Bencher) {
107107
let file = OpenOptions::new()
108108
.read(true)
109109
.write(true)
@@ -123,7 +123,8 @@ fn bench_get_range_simplified(bench: &mut Bencher) {
123123
})
124124
}
125125

126-
fn bench_get_range(bench: &mut Bencher) {
126+
#[bench]
127+
fn bench_get_range(bench: &mut test::Bencher) {
127128
let file = OpenOptions::new()
128129
.read(true)
129130
.write(true)
@@ -143,7 +144,8 @@ fn bench_get_range(bench: &mut Bencher) {
143144
})
144145
}
145146

146-
fn bench_get_range_actual(bench: &mut Bencher) {
147+
#[bench]
148+
fn bench_get_range_actual(bench: &mut test::Bencher) {
147149
let bitvec = MmapBitVec::open_no_header(FILENAME, 0).unwrap();
148150
let mut r = 0;
149151
let mut i = 1;
@@ -155,12 +157,3 @@ fn bench_get_range_actual(bench: &mut Bencher) {
155157
}
156158
})
157159
}
158-
159-
benchmark_group!(
160-
get_fns,
161-
bench_get_range,
162-
bench_get_range_simplified,
163-
bench_get_range_actual
164-
);
165-
166-
benchmark_main!(get_fns);

0 commit comments

Comments
 (0)