【问题标题】:How to normalize benchmark results to obtain distribution of ratios correctly?如何标准化基准结果以正确获得比率分布?
【发布时间】:2011-09-25 19:37:40
【问题描述】:

为了提供一些背景信息,我正在测量虚拟机 (VM) 或一般系统软件的性能,并且通常想要比较针对性能问题的不同优化。性能是在许多基准测试的绝对运行时间中测量的,并且通常针对 VM 的许多配置随 CPU 内核的使用数量、不同的基准测试参数等而变化。为了获得可靠的结果,每个配置都要测量 100 次。因此,我最终对所有类型的不同参数进行了相当多的测量,我通常对所有这些参数的加速比感兴趣,并将 VM 与未进行某种优化的 VM 进行比较。

我目前所做的是选择一个特定的测量系列。假设在 1 个内核上运行基准测试 A 的 VM 的测量值,无论是否经过优化(VM-norm/VM-opt)。

由于我想比较不同基准测试和核心数量的结果,我不能使用绝对运行时,但需要以某种方式对其进行规范化。因此,我将针对 VM-norm 的 1 个核心上的基准 A 的 100 次测量与 VM-opt 的相应 100 次测量配对,以计算 VM-opt/VM-norm 比率。

当我按照我得到它们的顺序进行测量时,我的 100 个结果 VM-opt/VM-norm 比率显然有相当大的变化。所以,我想,好吧,让我们假设我的测量值的变化来自非确定性效应,并且相同的效应导致 VM-opt 和 VM-norm 以相同的方式变化。因此,天真地,在配对之前对测量进行排序应该是可以的。而且,正如预期的那样,这减少了课程的变化。

但是,我的半知半解告诉我这不是最好的方法,甚至可能不正确。 由于我最终对这些比率的分布感兴趣,为了用 beanplots 可视化它们,一位同事建议使用笛卡尔积而不是配对排序测量。这听起来可以更好地解释配对进行比较的两个任意测量的随机性。但是,我仍然想知道统计学家会对这样的问题提出什么建议。

最后,我真的很想用 R 绘制 bean 或小提琴图的比率分布。简单的箱线图,或者只是意味着+stddev 告诉我发生的事情太少了。这些分布通常指向由这些非常复杂的计算机上的复杂交互产生的工件,这就是我感兴趣的。

非常欢迎任何有关如何使用以及如何以正确方式产生此类比率的方法的指针。

PS:这是转帖,原帖发在https://stats.stackexchange.com/questions/15947/how-to-normalize-benchmark-results-to-obtain-distribution-of-ratios-correctly

【问题讨论】:

  • 您的问题似乎有两个(或更多)组成部分:1:此处可以使用哪些统计方法,2:如何可视化这些数据?当我谈到可视化问题时,我正要回答统计问题。你能细化这个吗?由于已经给出了可视化答案,那么也许将统计问题分开会更好。也许应该以这种方式修改statistics.SE问题。

标签: r statistics benchmarking


【解决方案1】:

我发现您在“交叉验证”上得到的回应如此之少令人费解。这似乎不是一个特定的 R 问题,而是如何设计分析的请求。也许那里的观众认为你问的问题太宽泛了,但如果是这样的话,那么 [R] 论坛就更糟了,因为我们通常会解决实际提供数据的问题。我们用我们的语言处理实现构造的请求。我同意小提琴图比箱线图更适合检查分布(当有足够的数据并且我不确定每组有 100 个样本在那种情况下评分时),但无论如何这意味着“R 答案”是您只需要参考正确的 R 帮助页面:

library(lattice)
?xyplot
?panel.violin

更多的 cmets 需要更多细节,最好是一些用 R 构建的数据示例。您可能需要参考 "great question design is outlined" 所在的页面。

另一种图形方法:如果您对两个成对变量的比率感兴趣,但不想“提交”到 x/y,那么您可以通过绘制然后通过重复使用绘制等比线来检查它们abline(a=0, b=)。我认为 100 个样本对于进行密度估计来说非常“薄”,但是如果您可以收集更多数据,则可以使用 2d 密度方法。

【讨论】:

  • 谢谢,但我在使用 R 时没有遇到问题。(请参阅示例:stefan-marr.de/2011/09/…)我对基础统计知识有疑问。而且我在该领域的有限知识并没有为我提供正确的谷歌关键字。我的问题只是关于如何处理比率,以及如何正确计算它们。
  • 如果这不是关于如何在 R 中编写特定问题的问题,那么您来错地方了。
  • 我只是希望一些 R 用户可以为我指出相关的统计背景,从我的角度来看,这是一个基本问题。问这样一个问题的更好的地方是什么? stats.se..com 到目前为止也没有帮助。
猜你喜欢
  • 2013-07-09
  • 2014-05-12
  • 1970-01-01
  • 2019-05-06
  • 2011-03-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多