基本原理这属于 ServerFault 而不是 StackOverflow - 我已经有了我的程序来获取值,我正在查询返回的值及其含义。
我有一个内部程序来审核我们公司的 PC,它检查的其中一项内容是处理器的速度。为此,它查询Win32_Processor WMI 类并获取CurrentClockSpeed的值。
我们今天在玩数据时发现异常,其中一些速度报告不正确(例如,CurrentClockSpeed 表示 1.0GHz,而 CPU 名称表示Intel(R) Core(TM)2 CPU T5600 @ 1.83GHz [已确认]实际上是 1.83GHz])。我在互联网上进行了一些挖掘,发现了这篇博客文章,它可能解释了正在发生的事情。
我最初的想法是我可以更改程序以获取MaxClockSpeed而不是CurrentClockSpeed的值,但微软的文档没有明确定义这将返回什么。我的意思是这将返回一个值,它是它的实际最大速度(假设它被超频)但它通常不会运行,或者它会返回我期望的值,这是它在正常情况下的最大速度(没有超频)条件?
如今的处理器对它们的需求相当聪明,尤其是在笔记本电脑中。仅仅因为处理器是 1.83Ghz,如果不需要额外的功率,它可能决定通过以较低的时钟速度运行来节省功率(和热量)。
您可以通过转到 Windows 任务管理器来查看这种差异。在 Vista 和 Windows 7 中更清楚,但在 XP 中仍然存在。您将看到您的处理器速度列出了两次。当我的机器全功率运行时,它说:
Intel(R) Core(TM)2 Duo CPU T7500 @ 2.20GHz 2.20GHz
但是,当我的电池电量不足时,它会显示:
Intel(R) Core(TM)2 Duo CPU T7500 @ 2.20GHz 1.80GHz
所以基本上,你链接的那篇文章是正确的。我希望它MaxClockSpeed
总是返回相同的值(在我的情况下,2.20GHz,因为这是 BIOS 报告的值)。
在超频方面,超频后的CPU的BIOS会恢复到理论最高速度,所以如果你把2.0GHz超频到2.4GHz,就会报2.4GHz。
归档时间: |
|
查看次数: |
3111 次 |
最近记录: |