8 个版本
0.1.8 | 2020年6月4日 |
---|---|
0.1.7 | 2020年6月4日 |
0.1.4 | 2020年5月23日 |
在 性能分析 中排名 #256
5KB
mybench
简单(且非常原始)的性能分析宏。
使用场景
-
bench!(wrapper, "Prompt")
对wrapper
函数内的代码进行 10,000 次的平均执行时间计算。 -
bench!(wrapper, number_of_repetitions, "Prompt")
对wrapper
函数内的代码进行number_of_repetitions
次的平均执行时间计算。
结果显示为 filename:row:col 'Prompt' xxx.yy ms
示例
#[macro_use]
extern crate mybench;
#[test]
fn bench_ok() {
// with wrapper function
bench!(wrapper, "Prompt 1");
bench!(wrapper, 100_000, "Prompt 2");
// or you may use closure
bench!(|| {
for i in 0..1000 {
let _ = i*i;
}
},
100_000, "With closure");
}
fn wrapper() {
for i in 0..1000 {
let _ = i*i;
}
}
输出
running 1 test
tests\mybench.rs:6:5 'Prompt 1' 29.581µs
tests\mybench.rs:7:5 'Prompt 2' 29.693µs
test bench_ok ... ok
如果你没有看到 stdout,请尝试这个: cargo test -- --show-output
如果你看到
test bench_ok ... test bench_ok has been running for over 60 seconds
别担心,这是一个中间结果(测试尚未完成)。稍等片刻,让测试结束。