Windows

Windows 性能計數器數據點是否提供先前間隔的快照或平均值?

  • September 30, 2010

我特別想知道“程序/%處理器時間”計數器。如果將其設置為 10 秒的間隔,數據點是該 10 秒間隔的 CPU 使用率的快照,還是過去 10 秒的平均使用率?似乎自然是前者,而不是後者,但我和我的同事之間存在一些混淆,我想澄清一下。

兩個都。:)

有些東西,比如磁碟上的可用 MB 將是一個快照 - 沒有理由對其進行平均。

但是,諸如處理器性能之類的東西是使用“烹飪類型”或公式“烹飪”的。所以,基本上它是一個平均值。 http://msdn.microsoft.com/en-us/library/aa392761%28VS.85%29.aspx

我必須編寫一些東西,以兩個間隔獲取原始性能計數器,然後根據時間間隔進行一些數學運算。如果不根據時間進行數學運算,您將不會獲得與 perfmon 中相同的值 - 所以它是一個平均值。

您可以在 MSDN 中搜尋哪個公式控制您正在尋找的東西的原始性能數據(淨使用率、proc perf 等)以獲得您想要的東西,並查看它的烹飪類型 - 以便與您的同事進行辯論。

http://msdn.microsoft.com/en-us/library/ms974615.aspx

文章摘錄:

Here's the actual formula for PERF_COUNTER_COUNTER:

(CounterValue2 - CounterValue1) / ((TimeValue2 - TimeValue1) / TimeBase)

引用自:https://serverfault.com/questions/186278