繁体   English   中英

无法获得设备中的处理器速度

[英]Unable to get Processor Speed in Device

嗨,我正在使用QueryperformanceFrequency获取周期数,即处理器速度。 但这向我显示了错误的价值。 它是在规范中写的,处理器约为400MHz,但是我们通过代码得到的是16MHz。

请使用任何指针:

Wince设备的代码为:

LARGE_INTEGER FrequnecyCounter;

QueryPerformanceFrequency(&FrequnecyCounter);

CString temp;

temp.Format(L"%lld",FrequnecyCounter.QuadPart)`AfxMessageBox(temp);

谢谢,

穆克什

QueryPerformanceFrequency返回计数器外设而不是处理器的频率。 这些外设通常以原始的Crystal时钟频率运行。 16Mhz应该足以让您测量细粒度间隔。

QPF不返回CPU时钟速度。 它返回一个高性能定时器的频率。 在某些系统上,它实际上可能会测量CPU周期。 在其他系统上,它可能使用以相同频率运行的单独计时器。 (但是不受诸如SpeedStep之类的东西的影响,SpeedStep可以更改CPU的时钟速度)。 通常,它完全使用一个单独的计时器,该计时器甚至可能不在CPU本身上,但可能是主板的一部分。

QueryPerformanceCounter / QueryPerformanceFrequency仅保证他们使用系统上可用的最佳计时器。 他们没有保证那个计时器可能是什么。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM