【发布时间】:2012-12-12 13:09:31
【问题描述】:
正如标题所说,我正在寻找一段代码在不同硬件设置上的近似性能。有什么工具可以做到这一点吗?
我希望通过限制进程可用的资源来运行我的代码并执行测量。我想控制诸如可用总内存以及 cpu 使用率之类的东西,但如果我有更多的粒度会更好。是否有任何工具可以让我模拟不同速度的 RAM、限制 cpu 的速率(比如 X gigaflops)、减慢磁盘读取速度等?
我一直在研究 linux 中的 setrlimit 命令,但我认为它不会让我模拟延迟之类的东西。我考虑过使用虚拟机来运行代码并调整内存和 CPU,但我不确定它是否足够精细。我还考虑了一些事情,比如挂钩一些系统调用并在允许读/写系统调用之前旋转 x 纳秒,但感觉有点笨拙。另一个问题是此代码主要在 Windows 上运行,如果可能,最好在 Windows 上执行此操作。
仅出于一些背景知识,我试图提供一些相当准确的估计,例如在不同硬件设置上的运行时间和资源利用率,而无需实际购买、组装和测试所述硬件。
感谢您提供的任何帮助。
【问题讨论】:
标签: testing resources benchmarking performance-testing emulation