周期计数测量
我有一个 MS Visual Studio 2005 应用程序解决方案。 所有代码都用C编写。 我想测量特定函数执行所需的周期数。 是否有任何Win32 API可以用来获取周期计数?
我已经使用 gettimeofday() 来获取以微秒为单位的时间,但我想知道消耗的周期。
I have a MS Visual Studio 2005 application solution. All the code is in C. I want to measure the number of cycles taken for execution by particular functions. Is there any Win32 API which I can use to get the cycle count?
I have used gettimeofday()
to get time in micro seconds, but I want to know the cycles consumed.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
Intel 和 AMD 都提供 Windows 库和工具来访问其 cpu 上的性能计数器。 这些不仅可以访问周期计数,还可以访问高速缓存行命中和未命中以及 TLB 刷新计数。 Intel 工具以 VTune 名称销售,而 AMD 则将其称为 CodeAnalyst。
Both Intel and AMD offer windows libraries and tools to access the performance counters on their cpus. These give access not only to cycle counts, but also to cache line hits and misses and TLB flush counts. The Intel tools are marketed under the name VTune, while AMD calls theirs CodeAnalyst.