报告加速结果的正确统计数据

计算科学 统计数据 出版物
2021-12-04 02:40:16

假设我有一些代码的慢版本和快版本,并且想要报告一个比较两者的加速数字。我运行慢版本n时代和快速版本m次,生产次(s1,,sn)(f1,,fm). 产生加速的最简单方法是平均均值:

s¯f¯=mi<nsinj<mfj
但是,这并没有考虑异常值。

问题:报告加速数字时使用的最佳统计数据是什么?

3个回答

除了上面比尔·巴特已经说过的所有内容之外,让我提一下,人们经常报告几次跑步中最快的一次。基本原理是实际运行时间是理想的运行时间加上其他进程运行、操作系统延迟、网络延迟等导致的任何数量的减速。由于这些都是我们不感兴趣的噪音,因此使用最快的运行时间来了最接近我们真正想知道的那个。

我建议您使用中位数来进行统计估计。与平均值不同,中位数不会被异常值破坏。

如果标准偏差不可忽略,您可以并排使用两个箱线图,每个箱线图都使用其中一种算法的时间构建。它们在数值分析方面绝对不是标准的,但它们在显示此类信息方面做得很好。