我们致力于根据经验测量某些算法的运行时间(以检查它们的渐近行为)。我试图想出一套规则来在实验之前“清理”我们的目标计算机。这不是Agner Fog级别的真正性能,但我仍然想从尽可能干净的机器开始(并尽可能保持其恒定开销)。我到目前为止:
- 禁用所有电源管理
- 禁用屏幕服务器(也许完全禁用 X?)
- 禁用网络
- 以单用户模式启动 [Kenneth Hoste]
- 多次运行实验(以消除偶然事件)
- 频率缩放配置为以最大频率运行 [binarym]
- ?
显然,重复实验几次会给我一些统计能力,但我仍然想在尽可能干净的机器上做这个。
人们还知道哪些其他技巧可以在程序分析期间保持机器不变?这是一台 Linux 机器,如果“规则”是特定于 Linux 的,则可以。