use mmdb::{DB, DbOptions, WriteOptions};
use std::time::Instant;
fn main() {
let dir = tempfile::tempdir().unwrap();
let opts = DbOptions {
write_buffer_size: 1024 * 1024 * 1024,
..Default::default()
};
let db = DB::open(opts, dir.path()).unwrap();
let wo = WriteOptions::default();
println!("Benchmarking single-thread writes...");
let start = Instant::now();
let n = 10_000;
for i in 0u64..n {
db.put_with_options(&wo, &i.to_be_bytes(), &[0u8; 128])
.unwrap();
}
let elapsed = start.elapsed();
println!(
"{} writes in {:?} ({:.1}µs/write)",
n,
elapsed,
elapsed.as_micros() as f64 / n as f64
);
}