検索

第43章 OProfile

download PDF
OProfile はオーバーヘッドが低く、システム全体のパフォーマンス監視ツールです。プロセッサー上のパフォーマンス監視ハードウェアを使用して、メモリーの参照時、L2 キャッシュ要求の数、受信したハードウェア割り込みの回数など、システム上のカーネルおよび実行ファイルに関する情報を取得します。Red Hat Enterprise Linux システムでは、このツールを使用するには oprofile RPM パッケージをインストールする必要があります。
多くのプロセッサーには、専用のパフォーマンス監視ハードウェアが含まれます。このハードウェアを使用すると、特定のイベントが発生したタイミング(要求されたデータがキャッシュにないなど)を検出できます。ハードウェアは通常、イベントが発生するたびにインクリメントされる 1 つ以上の カウンター の形式を取ります。カウンター値が基本的にロールオーバーすると割り込みが生成され、パフォーマンス監視が生成する詳細(つまりオーバーヘッド)を制御できます。
OProfile はこのハードウェア(またはパフォーマンス監視ハードウェアが存在しない場合のタイマーベースの置換)を使用して、カウンターが割り込みを生成するたびにパフォーマンス関連のデータの サンプル を収集します。これらのサンプルは定期的にディスクに書き込まれます。後で、これらのサンプルに含まれるデータを使用して、システムレベルとアプリケーションレベルのパフォーマンスのレポートを生成できます。
OProfile は便利なツールですが、使用時にはいくつかの制限に注意してください。
  • 共有ライブラリー の使用:共有ライブラリー 内のコード用のサンプルは、--separate=library オプションが使用されない限り、特定のアプリケーションには含まれません。
  • パフォーマンスモニターリングのサンプル:パフォーマンス監視レジスターがサンプルをトリガーすると、割り込み処理はゼロ例外で除算さ れるのと正確ではありません。プロセッサーによる命令の順序外実行により、サンプルは近くの命令に記録される場合があります。
  • opreport はインライン関数のサンプルを適切に関連付けませんopreport は単純なアドレス範囲メカニズムを使用してアドレスがどの機能にあるかを判断します。インライン関数サンプルは inline 関数には属性されず、inline 関数が挿入された関数には含まれません。
  • OProfile は複数の実行からのデータの蓄積 を行います。OProfile はシステム全体のプロファイラーで、プロセスが複数回起動およびシャットダウンすることを期待します。そのため、複数の実行からのサンプルは累積されます。コマンド opcontrol --reset を使用して、以前の実行からのサンプルを消去します。
  • CPU の制限のないパフォーマンスの問題: OProfile は、CPU の制限プロセスの問題を検索することを目的としています。OProfile は、ロックを待機しているため、または他のイベントが発生する(I/O デバイスが操作を完了するなど)、sleep のプロセスを特定しません。

43.1. ツールの概要

表43.1「OProfile コマンド」 では、oprofile パッケージで提供されるツールの概要を説明します。
表43.1 OProfile コマンド
コマンド 説明
ophelp
システムのプロセッサーで利用可能なイベントと、それぞれの簡単な説明を表示します。
opimport
サンプルデータベースファイルをシステム用に外部のバイナリー形式からネイティブの形式に変換します。異なるアーキテクチャーからのサンプルデータベースを解析する場合にのみこのオプションを使用してください。
opannotate アプリケーションがデバッグシンボルでコンパイルされている場合は、実行可能ファイルのアノテーション付きのソースを作成します。詳細は、opannotateの使用」 を参照してください。
opcontrol
収集されるデータを設定します。詳細は、「OProfile の設定」 を参照してください。
opreport
プロファイリングデータを取得します。詳細は、opreportの使用」 を参照してください。
oprofiled
デーモンとして実行して定期的にサンプルデータをディスクに書き込みます。
Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

© 2024 Red Hat, Inc.