【发布时间】:2012-12-06 14:29:06
【问题描述】:
我想要一种尽可能准确地测量 C++ 代码的方法。我确实看到 boost 有一个高分辨率时钟,但 boost 文档说它在性能方面是一个昂贵的时钟 - 有点违背了目的:
http://www.boost.org/doc/libs/1_47_0/doc/html/chrono/users_guide.html
还有哪些其他方法?有什么方法可以测量 CPU 周期吗??
【问题讨论】:
-
Boost.Stopwatches 正在等待审核以纳入 Boost。这可能会成为最好的选择。
-
您要测量什么?代码执行时间?目的是什么?
-
分析器是否适合您的需求?
-
“经典”解决方案是检查对
clock函数的调用之间的区别。 -
您要测量经过的(实际)时间还是 CPU 使用时间?请注意,当您在同一台机器上运行其他任务时,经过的时间并不准确,而在这种情况下 CPU 使用时间应该更准确(至少在理论上)。