Windowsパフォーマンスモニターを利用したパフォーマンス解析

システム開発全般

性能テストや負荷テストを実施する際、サーバーのリソース状況を確認し十分なリソースが確保出来ているか?ボトルネックはないか?といった分析を行うと思います。
そういった場面でサーバーのリソース状況を確認するための便利なツールがWindowsに付属の「パフォーマンスモニター」です。

「パフォーマンスモニター」ではCPU利用率、メモリ使用率、ディスクI/Oの待ちキュー数などパフォーマンス分析を行うために必要なカウンターが多く用意されており、GUIで簡単に選択したカウンタの計測を行えます。

カウンターは標準で準備されているもの、各アプリケーションで独自に用意されているものなど多くありますが今回は一般的によく利用すると思わるカウンターを紹介します。
「基準」には一般的にこの範囲であれば問題がないと思われる値を記載しています。

CPU関連のカウンター

カウンター内容基準
System\Processor Queue LengthCPU待ち行列にあるスレッド数CPUあたり2未満
Processor(_Total)% Processor TimeCPU使用率
Processer% User TimeCPU使用率のうち、ユーザーモードで消費した割合
Process% User TimeCPU使用率のうち、ユーザーモードで消費した割合(プロセス単位)

「CPU使用率が高い=悪い」とは一概には言えません。CPU待ち行列が発生していない状況ではCPUを効率よく使えているとも言えるので注意しましょう。

メモリ関連のカウンター

カウンター内容基準
Memory\Available Mbytesプロセスが利用可能な物理メモリの空き容量
Memory\Pages /sec1秒あたりのページング数。
メモリとディスク間のデータのやりとりが発生した回数
20未満
Memory\Commited Bytesコミット済みの仮想メモリのサイズ
Memory% Commited Bytes In Use仮想メモリの使用率物理メモリの
75%以下
Memory\Commited Limitページングファイルを拡張せずに利用可能な仮想メモリのサイズ
Process\Working Setプロセスが利用するメモリサイズのうち物理メモリ上で確保されているサイズ
Paging File% Usage仮想メモリの使用率

「Pages/sec」が多い場合物理メモリが不足している可能性はありますが、キャッシュヒットしない場合などのケースもあるので、単純にメモリ不足を表しているものではありません。

ディスク関連のカウンター

カウンター内容基準
PhysicalDisk\Avg.Disk Queue Lengthディスクの読み書きを待つ要求の平均数ディスクあたり2未満
PhysicalDisk\Current Disk Queue Lengthディスクの読み書きを待つ要求数ディスクあたり2未満
PhysicalDisk\Avg. Disk Read Queue Lengthディスクの読み込みを待つ要求の平均数ディスクあたり2未満
PhysicalDisk\Avg. Disk Write Queue Lengthディスクの書き込みを待つ要求の平均数ディスクあたり2未満
Physical Disk\Disk Writes/Sec1秒あたりのI/O処理回数
(書き込み)
Physical Disk\Disk Reads/Sec1秒あたりのI/O処理回数
(読み込み)

ネットワーク関連のカウンター

カウンター内容基準
Network Interface\Received/sec毎秒ごとの受信バイト数
Network Interface\Bytes Sent/Sec毎秒ごとの送信バイト数
Network Interface\Bytes Total/Sec毎秒ごとの送受信バイト数
Network Interface\Output Queue Lengthネットワークインターフェースの送信を待つ要求数ネットワークインタフェースあたり2未満

以上

タイトルとURLをコピーしました