最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

rust - Benchmark function is ignored - Stack Overflow

programmeradmin0浏览0评论

My project structure:

project_root
├── benches
│ └── my_benchmark.rs

The my_benchmark.rs content:

use criterion::{criterion_group, criterion_main, Criterion};

fn factorial(n: u64) -> u64 {
    (1..=n).product()
}

fn my_benchmark(c: &mut Criterion) {
    c.bench_function("factorial 20", |b| b.iter(|| factorial(20)));
}

criterion_group!(benches, my_benchmark);
criterion_main!(benches);

However, once I run the cargo bench I get this output:

Finished `bench` profile [optimized] target(s) in 0.07s
     Running unittests src/main.rs (target/release/deps/fwaas-cbcff0a631d9e180)

running 0 tests

test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s

     Running benches/my_benchmark.rs (target/release/deps/my_benchmark-eddc0eabec0786a7)

running 0 tests

test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s

So, it seems like the actual benchmark gets ignored.

target/ dir content looks like this:

ls target/
CACHEDIR.TAG  release  tmp

Used criterion in my dependencies:

[dev-dependencies]
criterion = "0.5"

Alongside cargo version:

cargo 1.82.0
发布评论

评论列表(0)

  1. 暂无评论