Skip to content

Commit aa077bf

Browse files
ssande7bluss
authored andcommitted
Add benchmark for reserve()
1 parent 6933dd8 commit aa077bf

2 files changed

Lines changed: 31 additions & 3 deletions

File tree

benches/reserve.rs

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

src/impl_owned_array.rs

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -764,9 +764,6 @@ where D: Dimension
764764
pub fn reserve(&mut self, axis: Axis, additional: usize)
765765
where D: RemoveAxis
766766
{
767-
if additional == 0 {
768-
return;
769-
}
770767
let self_dim = self.raw_dim();
771768
let remaining_shape = self_dim.remove_axis(axis);
772769
let len_to_append = remaining_shape.size() * additional;

0 commit comments

Comments
 (0)