【问题标题】:How to determine the more efficient of two similar functions如何确定两个相似函数的效率更高
【发布时间】:2012-04-23 17:10:43
【问题描述】:

我有两个功能执行相同的功能,但以不同的方式实现。我想使用两者中高效的一个。

我可以在进入文件中的函数之前和退出函数之后编写Timestamp。但我想知道是否有更好的方法来解决上述问题。

我看到profilersVerySleepy, Visual Studios 2008 C++ Profiler 一样,但是他们生成的信息是什么时候调用了哪个函数。 (也许我在使用它们时出错了)。 还想知道是否存在适用于 Visual C++ 的内容,例如 Linux 上的 Valgrind

【问题讨论】:

标签: c visual-studio-2008 winapi visual-c++


【解决方案1】:

如果您真的只想比较这两者,那么请执行 Timestamp 的操作,但每个函数调用 100 万次,然后比较聚合时间。

start timer
for i = 1 to 1m, call function
stop timer

这种方法假设函数的执行时间不依赖于它被调用的次数,即第一次调用它所花费的时间大约与任何后续调用一样长。

如果您需要更详细的分析信息,请访问 plenty of options

【讨论】:

猜你喜欢
  • 1970-01-01
  • 2021-12-04
  • 2019-04-28
  • 2021-06-03
  • 2020-08-09
  • 1970-01-01
  • 2012-04-11
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多