Skip to main content
QUICK REVIEW

[论文解读] Towards a Statistical Methodology to Evaluate Program Speedups and their Optimisation Techniques

Sid Touati|ArXiv.org|Feb 6, 2009
Software Reliability and Analysis Research参考文献 1被引用 3
一句话总结

本文提出了一种统计方法,通过置信区间和假设检验来评估程序加速比和优化技术,以应对性能评估中的可重现性危机。该方法强调报告置信水平,并使用具有代表性的基准测试集,以确保在相似条件下结果具有统计严谨性和可重现性。

ABSTRACT

The community of program optimisation and analysis, code performance evaluation, parallelisation and optimising compilation has published since many decades hundreds of research and engineering articles in major conferences and journals. These articles study efficient algorithms, strategies and techniques to accelerate programs execution times, or optimise other performance metrics (MIPS, code size, energy/power, MFLOPS, etc.). Many speedups are published, but nobody is able to reproduce them exactly. The non-reproducibility of our research results is a dark point of the art, and we cannot be qualified as {\it computer scientists} if we do not provide rigorous experimental methodology. This article provides a first effort towards a correct statistical protocol for analysing and measuring speedups. As we will see, some common mistakes are done by the community inside published articles, explaining part of the non-reproducibility of the results. Our current article is not sufficient by its own to deliver a complete experimental methodology, further efforts must be done by the community to decide about a common protocol for our future experiences. Anyway, our community should take care about the aspect of reproducibility of the results in the future.

研究动机与目标

  • 解决计算机科学研究中程序性能结果广泛不可重现的问题。
  • 为程序执行中的加速比和优化技术评估建立严格的统计协议。
  • 揭示发表的性能评估中常见的统计缺陷,这些缺陷削弱了可重现性。
  • 通过要求披露置信水平和实验细节,促进透明化。
  • 鼓励社区在未来研究中采用标准化、统计可靠的实验方法。

提出的方法

  • 使用比例的置信区间来量化在不同基准测试中加速比测量的可靠性。
  • 应用学生t检验和z检验,比较原始程序与优化后程序的平均执行时间。
  • 采用公式 $ n \geq z^2 \times \frac{C(1-C)}{r^2} $ 确定实现所需精度的最小基准测试数量。
  • 建议根据应用场景(如硬实时系统与桌面应用)选择90%或95%的置信水平进行统计断言。
  • 强调报告所有实验细节(包括环境、输入数据和配置)的重要性,以实现可重现性。
  • 倡导提供正式的算法描述和开源软件,以允许结果的精确复现。

实验结果

研究问题

  • RQ1为何尽管有严格的实验声明,发表的程序加速比结果仍常常不可重现?
  • RQ2如何利用统计方法量化报告的程序加速比的可靠性和置信度?
  • RQ3为实现加速比估计的期望精度,所需的最小基准测试数量是多少?
  • RQ4由于硬件和系统因素导致的执行时间变化如何影响性能测量的有效性?
  • RQ5在性能评估中应使用何种置信水平?该水平在不同应用领域中如何变化?

主要发现

  • 对于30个基准测试中17个加速(56.67%)的情况,90%置信区间的范围为40.27%至71.87%,表明仅使用30个基准测试时不确定性很高。
  • 为在5%误差范围内实现95%的置信水平,至少需要378个基准测试才能估计出真实加速程序的比例。
  • 使用小样本量(例如,n.C < 10)会使标准置信区间计算无效,需采用更复杂的统计方法。
  • 即使在相同软硬件环境下,由于缓存效应、中断和动态电压调节等因素,执行时间仍存在显著差异。
  • 许多已发表的结果基于罕见事件或有偏测量,导致其在统计上出人意料且难以复现。
  • 置信水平应在出版物中明确声明,对于安全关键应用(如硬实时系统)应采用更高水平(例如95%)。

更好的研究,从现在开始

从阅读论文到最终审阅,大幅缩短您的研究时间。

无需绑定信用卡

本解读由 AI 生成,并经人工编辑审核。