Skip to content

Commit 1bff045

Browse files
authored
Merge pull request #140 from AdaWorldAPI/claude/lance-datafusion-integration-gv0BF
Migrate benches to criterion (stable Rust) + clear remaining clippy errors
2 parents c779c5b + eb4b945 commit 1bff045

23 files changed

Lines changed: 3594 additions & 1028 deletions

Cargo.lock

Lines changed: 1998 additions & 67 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Cargo.toml

Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -79,6 +79,56 @@ quickcheck = { workspace = true }
7979
approx = { workspace = true, default-features = true }
8080
itertools = { workspace = true }
8181
ndarray-gen = { workspace = true }
82+
criterion = { version = "0.5", features = ["html_reports"] }
83+
84+
[[bench]]
85+
name = "append"
86+
harness = false
87+
88+
[[bench]]
89+
name = "bench1"
90+
harness = false
91+
92+
[[bench]]
93+
name = "chunks"
94+
harness = false
95+
96+
[[bench]]
97+
name = "construct"
98+
harness = false
99+
100+
[[bench]]
101+
name = "gemv_gemm"
102+
harness = false
103+
104+
[[bench]]
105+
name = "higher-order"
106+
harness = false
107+
108+
[[bench]]
109+
name = "iter"
110+
harness = false
111+
112+
[[bench]]
113+
name = "numeric"
114+
harness = false
115+
116+
[[bench]]
117+
name = "par_rayon"
118+
harness = false
119+
required-features = ["rayon"]
120+
121+
[[bench]]
122+
name = "reserve"
123+
harness = false
124+
125+
[[bench]]
126+
name = "to_shape"
127+
harness = false
128+
129+
[[bench]]
130+
name = "zip"
131+
harness = false
82132

83133
[features]
84134
default = ["std", "hpc-extras"]

benches/append.rs

Lines changed: 16 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,29 +1,30 @@
1-
#![feature(test)]
2-
3-
extern crate test;
4-
use test::Bencher;
5-
1+
use criterion::{black_box, criterion_group, criterion_main, Criterion};
62
use ndarray::prelude::*;
73

8-
#[bench]
9-
fn select_axis0(bench: &mut Bencher) {
4+
fn select_axis0(c: &mut Criterion) {
105
let a = Array::<f32, _>::zeros((256, 256));
116
let selectable = vec![0, 1, 2, 0, 1, 3, 0, 4, 16, 32, 128, 147, 149, 220, 221, 255, 221, 0, 1];
12-
bench.iter(|| a.select(Axis(0), &selectable));
7+
c.bench_function("select_axis0", |b| {
8+
b.iter(|| black_box(&a).select(Axis(0), black_box(&selectable)))
9+
});
1310
}
1411

15-
#[bench]
16-
fn select_axis1(bench: &mut Bencher) {
12+
fn select_axis1(c: &mut Criterion) {
1713
let a = Array::<f32, _>::zeros((256, 256));
1814
let selectable = vec![0, 1, 2, 0, 1, 3, 0, 4, 16, 32, 128, 147, 149, 220, 221, 255, 221, 0, 1];
19-
bench.iter(|| a.select(Axis(1), &selectable));
15+
c.bench_function("select_axis1", |b| {
16+
b.iter(|| black_box(&a).select(Axis(1), black_box(&selectable)))
17+
});
2018
}
2119

22-
#[bench]
23-
fn select_1d(bench: &mut Bencher) {
20+
fn select_1d(c: &mut Criterion) {
2421
let a = Array::<f32, _>::zeros(1024);
2522
let mut selectable = (0..a.len()).step_by(17).collect::<Vec<_>>();
2623
selectable.extend(selectable.clone().iter().rev());
27-
28-
bench.iter(|| a.select(Axis(0), &selectable));
24+
c.bench_function("select_1d", |b| {
25+
b.iter(|| black_box(&a).select(Axis(0), black_box(&selectable)))
26+
});
2927
}
28+
29+
criterion_group!(benches, select_axis0, select_axis1, select_1d);
30+
criterion_main!(benches);

0 commit comments

Comments
 (0)