PCの負荷を調べるために、CPUの使用率を計測してグラフ化したいと考えています。
ネットで調べますと、CPUの使用率は、
typeperf "\Processor(_Total)% Processor Time"
で調べられるとの事で実行してみると、どうもこのコマンドで取得できる値は、パフォーマンスモニタの%Processor Timeとは一致しているのですが、タスクマネージャーのCPU使用率とは異なっているようです。
パフォーマンスモニタの説明文を見ると、このようにあります。
% Processor Time は、プロセッサがアイドル以外のスレッドを実行するために使用した経過時間の割合をパーセントで表示します。プロセッサがアイドル スレッドの実行に使用する時間の割合を計測し、その値を 100% から引いて算出します (各プロセッサには、実行するスレッドが他にない場合にサイクルを消費するアイドル スレッドがあります)。このカウンターはプロセッサの処理状況を示す主な指標で、サンプリング間隔で計測されたビジー時間の平均割合をパーセントで表示します。プロセッサがアイドル状態かどうかの判断は、システム時計の内部サンプリング間隔 (10 ミリ秒) で実行されます。そのため、現在の高速プロセッサでは、システム時計のサンプリング間隔の間に、プロセッサがスレッド処理に多くの時間を費やしている可能性があり、% Processor Time でプロセッサ使用量が少なく見積もられる場合があります。処理負荷に基づくタイマー アプリケーションは、サンプルが取得された直後にタイマーが通知されるため正確に計測されない可能性の高いアプリケーションの一例です。
タスクマネージャーのCPU使用率と、パフォーマンスモニタの%Processor Timeは、違った計測値なのでしょうか?
あなたの回答
tips
プレビュー