是否可以限制Criterion执行的迭代次数?

时间:2019-02-13 14:13:22

标签: rust

我正在使用标准(cargo bench)为板条箱开发一些基准。我想暂时限制迭代次数,直到完成代码。

我知道测量可能并不精确,但这只是暂时的。这可能吗?

1 个答案:

答案 0 :(得分:2)

有可能。

查看Criterion Benchmark。在这里,您可以找到与您相关的方法,特别是measurement_time

深入研究,您可以找到如何使用它们here

fn bench(c: &mut Criterion) {
    // Setup (construct data, allocate memory, etc)
    c.bench(
        "routines",
        Benchmark::new("routine_1", |b| b.iter(|| routine_1()))
            .with_function("routine_2", |b| b.iter(|| routine_2()))
            .measurement_time(Duration::from_millis(1000))
    );
}

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

measurement_time(Duration::from_millis(1000))是您要查找的机器人。这实际上使我的特定功能的迭代次数减少了80%。