- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:パフォーマンスモニタの%Processor Timeが納得いきません)
パフォーマンスモニタの%Processor Timeが納得いきません
このQ&Aのポイント
- WindowsXPを使ってパフォーマンスモニタを確認すると、「%Processor Time」の「Processer」と「Process」の挙動に違いがあります。
- 「Processer」を選択すると、タスクマネージャの「CPU使用率の履歴」とほぼ同じ波形が表示されますが、
- 「Process」で「_Total」を選択すると、値が100を指し続けます。この挙動の違いについて質問です。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
A1 Processerの方は、Idle以外のプロセスの合計+カーネル(OS)です。 Processの方は、すべてプロセスの合計です。カーネルの分は含みません。 A2 そのとうりで、_Total以外の合計値です。 なぜ100を指すのかというと、CPUを使用してない時は、Idleというプロセスがすべて消費しています。(タスクマネージャ上ではSystem Idle Processというやつです。) つまり、このプロセスの使用率はCPUの未使用率になります。 しかし、Processの_TotalはIdleまで合計してしまうので、 使用率+未使用率-カーネル使用率となるので、カーネルが重い処理をしてなければ、ほぼ100を維持することになります。
お礼
ありがとうございました。 お礼が大変遅くなりました。申し訳ありません。 教えていただいたとおり、Idleを除いたProcessの合計値がだいたい_Totalと合致していることがわかりました。 .....と、ここまで書こうとしていた矢先にまたまた妙なものを見つけてしました。(実はそれでひっかかっていたために、"お礼"が延びてしまっていたのです。) パフォーマンスモニタで「パフォーマンスログ」なるものが取れますが、これをとってみるとCPU使用率が2000%(!)を超えたProcessが出てきたのです。 いろいろ調べてみると、ProcessにおけるCPU使用率はCPU数ぶんだけ増えると...またCPUがHSであればまたそれだけ増えると...つまり2CPU機ならProcessの合計値は最大200%までいく...それがHSならさらに増えて最大400%までいくのだそうですね。 でも、2000%は増えるにもホドがあるだろう! と、いうわけで悩んでしまっていたのでした。