1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
|
#![feature(test)]
extern crate test;
use test::Bencher;
use ndarray::prelude::*;
#[bench]
fn push_reserve(bench: &mut Bencher)
{
let ones: Array<f32, _> = array![1f32];
bench.iter(|| {
let mut a: Array<f32, Ix1> = array![];
a.reserve(Axis(0), 100).unwrap();
for _ in 0..100 {
a.append(Axis(0), ones.view()).unwrap();
}
});
}
#[bench]
fn push_no_reserve(bench: &mut Bencher)
{
let ones: Array<f32, _> = array![1f32];
bench.iter(|| {
let mut a: Array<f32, Ix1> = array![];
for _ in 0..100 {
a.append(Axis(0), ones.view()).unwrap();
}
});
}
|