Skip to content

Commit 916d4cf

Browse files
committed
Avoid slowing down the CI too much with benchmarks
Runs the benchmarks faster (but with a lower statistical significance) on CI.
1 parent 98d2bef commit 916d4cf

File tree

4 files changed

+10
-12
lines changed

4 files changed

+10
-12
lines changed

.travis.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ env:
1212
- FEATURES="rayon"
1313
script:
1414
- cargo build --verbose --no-default-features --features "$FEATURES"
15-
- cargo test --verbose --no-default-features --features "$FEATURES"
16-
- cargo bench --verbose --no-default-features --features "$FEATURES"
15+
- cargo test --tests --benches --no-default-features --features "$FEATURES"
16+
- cargo bench --bench decoding_benchmark --no-default-features --features "$FEATURES" -- --warm-up-time 1 --measurement-time 1 --sample-size 25
1717

1818
cache: cargo

Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ rayon = { version = "1.0", optional = true }
1717
[dev-dependencies]
1818
png = "0.14"
1919
walkdir = "2.0"
20-
criterion = "0.2"
20+
criterion = "0.3"
2121

2222
[[bench]]
2323
name = "decoding_benchmark"

appveyor.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,5 +16,5 @@ build: false
1616

1717
test_script:
1818
- cargo build --verbose
19-
- cargo test --verbose
20-
- cargo bench --verbose
19+
- cargo test --tests --benches
20+
- cargo bench --bench decoding_benchmark --no-default-features --features "$FEATURES" -- --warm-up-time 1 --measurement-time 1 --sample-size 25

benches/decoding_benchmark.rs

Lines changed: 5 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,7 @@
11
extern crate criterion;
22
extern crate jpeg_decoder;
33

4-
5-
use criterion::{black_box, Criterion, criterion_group, criterion_main};
4+
use criterion::{black_box, Criterion};
65

76
use jpeg_decoder as jpeg;
87
use jpeg_decoder::ImageInfo;
@@ -17,7 +16,8 @@ fn read_metadata(image: &[u8]) -> ImageInfo {
1716
decoder.info().unwrap()
1817
}
1918

20-
pub fn criterion_benchmark(c: &mut Criterion) {
19+
fn main() {
20+
let mut c = Criterion::default().configure_from_args();
2121
c.bench_function("decode a 512x512 JPEG", |b| b.iter(|| {
2222
read_image(include_bytes!("tower.jpg"))
2323
}));
@@ -29,7 +29,5 @@ pub fn criterion_benchmark(c: &mut Criterion) {
2929
c.bench_function("extract metadata from an image", |b| b.iter(|| {
3030
read_metadata(include_bytes!("tower.jpg"))
3131
}));
32-
}
33-
34-
criterion_group!(benches, criterion_benchmark);
35-
criterion_main!(benches);
32+
c.final_summary();
33+
}

0 commit comments

Comments
 (0)