gpt4 book ai didi

testing - 如何解释 `cargo bench` 的输出?

转载 作者:行者123 更新时间:2023-11-29 08:14:12 30 4
gpt4 key购买 nike

我用 cargo bench 对我的 Rust 项目进行了基准测试,并在结果上看到了很多数字……它们是什么意思?

2 tests
test bench_few_core ... bench: 26,249,920 ns/iter (+/- 2,836,381)
test bench_one_core ... bench: 6,087,923 ns/iter (+/- 752,064)

例如对于 test bench_few_core,我看到:

  • 数字 1 = 26
  • 2 = 249
  • 数字 3 = 920
  • 数字 4 = 2
  • 5 = 836
  • 数字 6 = 381

它们都是什么意思?

我认为每个测试应该有 2 个数字:数学期望值(或均值)和标准差。

最佳答案

数字是 median以及最大值和最小值之间的差异,使用以美国为中心的数字样式(使用逗号作为千位分隔符)表示。

以你的例子为例:

  • 中位数:26249920 ns/iter
  • 最大-最小值:2836381 ns/iter
let median = bs.ns_iter_summ.median as usize;
let deviation = (bs.ns_iter_summ.max - bs.ns_iter_summ.min) as usize;

write!(
output,
"{:>11} ns/iter (+/- {})",
fmt_thousands_sep(median, ','),
fmt_thousands_sep(deviation, ',')
)

source code

注意这里有各种统计工作underlying the benchmarking ,最明显的事实是样本的上下 5% 被截断以减少异常值的影响。

关于testing - 如何解释 `cargo bench` 的输出?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48323487/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com