【发布时间】:2008-09-08 05:38:42
【问题描述】:
我有一个 MS Visual Studio 2005 应用程序解决方案。所有代码都在 C 中。我想测量特定功能执行所花费的周期数。是否有任何 Win32 API 可用于获取循环计数?
我使用gettimeofday() 以微秒为单位获取时间,但我想知道消耗的周期。
【问题讨论】:
标签: profiling
我有一个 MS Visual Studio 2005 应用程序解决方案。所有代码都在 C 中。我想测量特定功能执行所花费的周期数。是否有任何 Win32 API 可用于获取循环计数?
我使用gettimeofday() 以微秒为单位获取时间,但我想知道消耗的周期。
【问题讨论】:
标签: profiling
英特尔和 AMD 都提供 Windows 库和工具来访问其 CPU 上的性能计数器。这些不仅可以访问循环计数,还可以访问高速缓存行命中和未命中以及 TLB 刷新计数。英特尔工具以 VTune 的名义销售,而 AMD 将其称为 CodeAnalyst。
【讨论】: