Skip to content

Instantly share code, notes, and snippets.

Created January 31, 2015 03:55
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save anonymous/86af166626391f7634c3 to your computer and use it in GitHub Desktop.
Save anonymous/86af166626391f7634c3 to your computer and use it in GitHub Desktop.
Running target/release/scratch-75cde277a7678a8e
running 2 tests
test bench_vec_from_elem ... bench: 1218 ns/iter (+/- 19)
test bench_vec_iter ... bench: 5439 ns/iter (+/- 13)
test result: ok. 0 passed; 0 failed; 0 ignored; 2 measured
#![feature(test)]
extern crate test;
use std::iter::repeat;
const SIZE: usize = 10_000;
#[bench]
fn bench_vec_iter(b: &mut test::Bencher) {
b.iter(|| {
repeat(0).take(SIZE).collect::<Vec<_>>();
});
}
#[bench]
fn bench_vec_from_elem(b: &mut test::Bencher) {
b.iter(|| {
let mut xs = Vec::with_capacity(SIZE);
unsafe { xs.set_len(SIZE); }
for x in xs.iter_mut() { *x = 0; }
});
}
#[cfg(not(test))]
fn main() {}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment