Red Hat Training

A Red Hat training course is available for Red Hat Enterprise Linux

6.2. パフォーマンスの問題の監視と診断

Red Hat Enterprise Linux 7 ではシステムパフォーマンスの監視およびプロセッサーやプロセッサーの設定に関連するパフォーマンスの問題の診断を行う際に便利なツールがいくつか用意されています。このセクションではこうしたツールの概要、およびプロセッサー関連のパフォーマンス問題を監視および診断する方法を例を使用して説明していきます。

6.2.1. turbostat

Turbostat は指定された間隔でカウンターの結果を出力し、過剰な電力使用量、ディープスリープ状態に入ることの失敗、システム管理割り込み(SMI)が不必要に作成されるなど、サーバーで予期しない動作を特定するのに役立ちます。
turbostat ツールは、kernel-tools パッケージの一部です。AMD64 および Intel® 64 プロセッサー搭載のシステムでの使用に対応しています。root 権限の実行、不変タイムスタンプカウンター、APERF および MPERF モデル固有のレジスターが必要になります。
使用例については man ページをご覧ください。
$ man turbostat

6.2.2. numastat

重要
このツールは Red Hat Enterprise Linux 6 ライフサイクルで大幅な更新が行われています。デフォルトの出力は Andi Kleen により開発されたオリジナルツールとの互換性を維持していますが numastat へのオプションやパラメーターを付ける形式についてはその出力から大きく変更されています。
numastat ツールは、プロセスおよびオペレーティングシステムの NUMA ノードごとのメモリー統計を表示し、プロセスメモリーがシステム全体に分散されているか、特定のノードで集中化されているかを表示します。
numastat 出力をプロセッサーごとの top 出力と相互参照し、プロセスメモリーが割り当てられている同じノードでプロセススレッドが実行していることを確認します。
numastat は numactl パッケージで提供されます。numastat 出力の詳細は man ページをご覧ください。
$ man numastat

6.2.3. /proc/interrupts

/proc/interrupts ファイルには、特定の I/O デバイスから各プロセッサーに送信された割り込みの数が一覧表示されます。内容は割り込み要求 (IRQ) 数、各プロセッサーで処理されたタイプ別割り込み要求数、送信された割り込みタイプ、記載割り込み要求に応答したデバイスをコンマで区切ったリストなどになります。
特定のアプリケーションまたはデバイスが大量の割り込みを生成しリモートのプロセッサーに処理させようとしている場合はパフォーマンスに影響を及ぼす可能性が高くなります。このような場合はそのアプリケーションまたはデバイスが割り込み要求を処理しているノード同じノードのプロセッサーに処理をさせるようにするとパフォーマンスの低下を軽減することができます。割り込み処理を特定のプロセッサーに割り当てる方法については、「AMD64 および Intel 64 での割り込み親和性の設定」 を参照してください。

6.2.4. pqos でのキャッシュおよびメモリー帯域の監視

intel-cmt-cat パッケージから利用可能な pqos ユーティリティーを使用すると、最近の Intel プロセッサーで CPU キャッシュとメモリー帯域幅を監視できます。
pqos ユーティリティーは、top ユーティリティーと同様に、キャッシュとメモリーの監視ツールを提供します。以下を監視します。
  • サイクルごとの命令 (IPC)。
  • 最終レベルのキャッシュ MISSES の数。
  • LLC で特定の CPU で実行されるプログラムのサイズ (キロバイト単位)。
  • ローカルメモリーへの帯域幅 (MBL)。
  • リモートメモリー (MBR) への帯域幅。
以下のコマンドを使用して監視ツールを開始します。
# pqos --mon-top
出力のアイテムは LLC 占有の高い順に並べ替えられます。

関連情報