windows下的C/C++精确计时

由于我要测试线性筛法的速度,用上了C/C++精确计时.此时传统的clock()方法不够用了,我们需要另一种测量的办法,即CPUTicks/CPUFreq.如何实现呢?

#include <windows.h>
LARGE_INTEGER freq,start,stop;
QueryPerformanceFrequency(&freq);
QueryPerformanceCounter(&start);
//这样便得到一个CPUTick
//do some stuff....
QueryPerformanceCounter(&stop);
//注意LARGE_INTEGER是一个union起32bit low,high和64bit Quad的东西
//那么
double timeused=(double)(stop.QuadPart-start.QuadPart)/(double)freq.QuadPart;

 

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。