我正在尝试使用性能监视器来监视Win2k8 R2服务器上的总CPU使用情况。
我在12核心系统上运行在HyperV虚拟机上,但是只有一个超线程核心被分配到这个镜像(所以从操作系统的angular度来看有两个CPU)。
我正在查看“当前活动”的“报告”视图,报告显示以下数据点:
处理器(_Total)\%空闲时间
处理器(_Total)\处理器时间百分比
处理器(_Total)\'处理器时间百分比\'定期跳到15% – 30%之间的值,然后回落到“—”,然后回到“0.000”,即使服务器显然闲置。
然而,处理器(_Total)\'空闲时间'保持在100.00或接近100.00的时间,'%Processor Time'值在跳转,但是如果我做了一些我知道产生负载就像运行一些SQL查询。
这导致我相信“空闲时间百分比”是比“处理器时间百分比”更真实的CPU负载的“可靠”度量,但经过大量的search后,我不知道为什么会这样?
现在真正奇怪的是,如果我把“处理器信息(0,_Total)\%空闲时间”添加到相同的报告中,“处理器(_Total)\%处理器时间”和“处理器(_Total)\%空闲时间”突然开始显示一致且可信的数据,而“处理器信息(0,_Total)\%空闲时间”值以奇怪的方式跳转,甚至显示值> 100%。
对不起,这个啰嗦的问题……这真是奇怪的行为,有没有人见过呢?
我从来没有亲眼目睹这一点,这确实看起来很奇怪,但我想指出的是,在虚拟化系统上,CPU统计信息是众所周知的有些不可靠的; 毕竟,虚拟机执行可以 并将被暂停或放慢,同时将物理CPU时间分配给其他访客系统。