6.4. Performance Counters for Linux (PCL) ツールおよび perf
Performance Counters for Linux (PCL) は、パフォーマンスデータ収集および分析用のフレームワークを提供する新しいカーネルベースのサブシステムです。これらのイベントは、パフォーマンス監視ハードウェアおよびシステムのソフトウェア設定によって異なります。Red Hat Enterprise Linux 6 には、データ収集のためのこのカーネルサブシステムと、収集されたパフォーマンスデータを分析するためのユーザースペースツールである
perf
が含まれています。
PCL サブシステムは、削除した指示やプロセッサークロックサイクルを含むハードウェアイベントを測定するために使用できます。また、主なページフォルトやコンテキストスイッチなどのソフトウェアイベントも測定できます。たとえば、PCL カウンターは、Instructions Per Clock (IPC) を削除した指示のプロセスカウントとプロセッサーのクロックサイクルから計算できます。IPC 率が低いと、コードが CPU をうまく活用していないことを示します。CPU の低パフォーマンスを診断するために、他のハードウェアイベントも使用することができます。
パフォーマンスカウンターは、サンプルを記録するように設定することもできます。サンプルの相対的頻度を使用して、コードのどの領域がパフォーマンスに最も影響があるかを特定することが可能です。
6.4.1. Perf ツールコマンド
以下に便利な
perf
コマンドを挙げます。
- perf stat
- この
perf
コマンドは、実行された指示やクロックサイクルを含む一般的なパフォーマンスイベントの全体的な統計情報を提供します。オプションでは、デフォルトの測定イベント以外のものが選べます。 - perf record
- この
perf
はパフォーマンスデータをファイルに記録し、これは後でperf report
を使って分析できます。 - perf report
- この
perf
コマンドはファイルからパフォーマンスデータを読み取り、分析します。 - perf list
- この
perf
コマンドは、特定のマシン上で利用可能なイベントを一覧表示します。これらのイベントは、パフォーマンス監視ハードウェアおよびシステムのソフトウェア設定によって異なります。
perf
コマンドの完全な一覧表は、perf help
を使って取得できます。各 perf
コマンドの man
ページ情報を取得するには、perf help command
を使います。