Изменить: 26 сентября 2012 г. - я обновляю этот вопрос и его теги, потому что я снова столкнулся с этой ошибкой на виртуальной машине Server 2k8R2. Тем не менее, похоже, что в сети нет авторитетной информации для этого, поэтому, если я когда-нибудь решу ее, эта страница может стать ценным ресурсом для других, у которых есть такая же проблема.
Я погуглил, черт возьми, и не могу найти ответа.
У меня есть виртуальная машина Windows Server 2003. Я запускаю на сервере следующую команду:
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.
Хорошо, так почему же периодически негативные? У меня есть тысяча других систем, в которых этого не происходит, но я не могу понять, почему это происходит здесь. Любая помощь будет оценена.
После шести месяцев поисков я наконец нашел решение этой проблемы.
Я и раньше видел ту КБ, упомянутую brain99. Это неопределенно намекает на «проблему аппаратной синхронизации», но не дает никаких подробностей. Поскольку я действительно видел это только на виртуальных машинах, идея «проблемы с аппаратной синхронизацией» казалась странной, но она заставила меня задуматься о том, как виртуальные машины взаимодействуют со своим хостом.
Это были виртуальные машины VMware, и в VM Tools есть параметр «Синхронизация времени между виртуальной машиной и сервером ESX», который был проверен. ООНпроверка, решающая проблему.
Все это время я ни разу не возился с инструментами VMware, и решение оказалось таким простым. :П
В соответствии с эта статья Microsoft KB, ошибка связана с проблемами синхронизации, но не обязательно указывает на проблему. В нем явно не упоминаются отрицательные значения, но очевидно, что они связаны, поскольку в статье конкретно упоминается проблема чтения счетчика использования процессора.
К сожалению, в статье не приводится конкретного решения.