typeperf.exe 间歇性返回 -1

typeperf.exe 间歇性返回 -1

编辑:2012 年 9 月 26 日 - 我正在更新此问题及其标签,因为我现在在 Server 2k8R2 VM 上再次遇到了此错误。不过,网上似乎没有关于此问题的权威信息,所以如果我能解决这个问题,这个页面可能会成为其他遇到同样问题的人的宝贵资源。

我已经用尽 Google 搜索了这个问题但找不到答案。

我有一台 Windows Server 2003 VM。我在服务器上运行以下命令:

typeperf "\Processor(*)\% Processor Time"

输出如下:

"(PDH-CSV 4.0)","\\SERVER01\\Processor(0)\% Processor Time","\\SERVER01\Processor(_Total)\% Processor Time"
"03/30/2012 11:40:13.881","0.000000","0.000000"
"03/30/2012 11:40:14.795","22.374429","22.374429"
"03/30/2012 11:40:15.807","-1","-1"
"03/30/2012 11:40:16.707","0.000000","0.000000"
"03/30/2012 11:40:17.607","18.402778","18.402778"
"03/30/2012 11:40:18.507","0.000000","0.000000"
"03/30/2012 11:40:19.407","-1","-1"
"03/30/2012 11:40:20.307","-1","-1"
"03/30/2012 11:40:21.207","-1","-1"
"03/30/2012 11:40:22.107","-1","-1"
"03/30/2012 11:40:23.007","-1","-1"
"03/30/2012 11:40:23.907","0.000000","0.000000"
"03/30/2012 11:40:24.807","-1","-1"
"03/30/2012 11:40:25.707","-1","-1"
"03/30/2012 11:40:26.607","-1","-1"
"03/30/2012 11:40:27.507","-1","-1"
"03/30/2012 11:40:28.407","0.000000","0.000000"
"03/30/2012 11:40:29.307","-1","-1"
"03/30/2012 11:40:30.207","-1","-1"
"03/30/2012 11:40:31.107","-1","-1"
"03/30/2012 11:40:32.007","-1","-1"
"03/30/2012 11:40:32.907","0.000000","0.000000"

Error: A counter with a negative denominator value was detected.

好吧,那么为什么会出现间歇性的负面结果呢?我有上千个其他系统,这些系统上不会出现这种行为,但我不明白为什么会出现这种情况。任何帮助都将不胜感激。

答案1

经过六个月的断断续续的搜索,我终于找到了解决这个问题的方法。

我之前也看到过 brain99 提到的 KB。它模糊地提到了“硬件计时问题”,但没有给出任何具体细节。由于我只在虚拟机上见过这种情况,“硬件计时问题”的想法似乎很奇怪,但它确实让我思考虚拟机如何与主机通信。

这些是 VMware 虚拟机,在 VM Tools 中,有一个已选中的“虚拟机和 ESX 服务器之间的时间同步”设置。联合国检查是否解决了问题。

一直以来我都没有摆弄过 VMware 工具,而且解决方案非常简单。:P

答案2

根据此 Microsoft 知识库文章,错误与时序问题有关,但不一定表示存在问题。它没有明确提到负值,但有理由认为这两者是有联系的,因为文章特别提到了读取处理器利用率计数器的问题。

不幸的是,文章中没有提供具体的解决方案。

相关内容