有没有在Windows上的C + +的方式来测量纳秒时间?
我只能findLinux解决scheme。
使用QueryPerformanceFrequency
函数查看QueryPerformanceCounter运行的速度。 我认为它可能在纳秒范围内。
在Windows上查看QueryPerformanceCounter。
在定时代码以识别性能瓶颈时,您希望使用系统提供的最高分辨率计时器。 本文介绍如何使用QueryPerformanceCounter函数来定时应用程序代码
如果您可以运行自己的程序集,则可以读取CPU的循环计数器,并将循环差异除以CPU的时钟速率:
static inline uint64_t get_cycles() { uint64_t t; __asm__ __volatile__ ("rdtsc" : "=A"(t)); return t; }
使用Windows7和硬件计数器分析API http://msdn.microsoft.com/en-us/library/windows/desktop/dd796395(v=vs.85).aspx
因为大的开销,中断和任务切换,rdtsc和QueryPerformanceCounter / QueryPerformanceFrequency都不够准确。
[编辑]:对不起混合起来硬件计数器PerformanceCounter的链接。 对不起,只用过一次,这是一个快速的答案。