analyzer(1)

名前
analyzer - プログラムパフォーマンス実験ファイルを解析するための GUI インタフェース

形式

analyzer [-j|--jdkhome jvm-path] [-J jvm-options] [-f|--fontsize size] [-v|--verbose] [experiment-list]

analyzer -V|

analyzer -?| -h| --help

analyzer [-f|--fontsize size][ -v|--verbose] target [target-arguments]

オプション

オプション
    意味

-j|--jdkhome jvmpath
アナライザを実行する Java(TM) 仮想マシン (JVM) へのパスを指定します。 最初に JDK_1_4_HOME、JDK_HOME、JAVA_PATH 環境変数順に Java のパスにデフォルトのパスがないか調べられます。 何も設定されていない場合、デフォルトのパスは、 このリリースと一緒に Java インストールされた場所です。そのパスもない場合は、 ユーザーの PATH によって設定されているパスです。 (JVM (Java Virtual Machine) は、Java(TM) プラットフォーム用の仮想マシンです)

-Jjvm-options
    JVM(TM) ソフトウェアオプションを指定します。

-f|--fontsize size
    アナライザで使用するフォントの大きさを指定します。

-v|--verbose
    起動する前に、バージョン情報と Java の実行時引数を出力します。

-V|--version
    バージョン情報を出力し、終了します。

-?|-h|--help
    使用方法に関する情報を出力し、終了します。

機能説明

パフォーマンスアナライザとは、 collect コマンド、IDE、または dbx の collector コマンドなどのコレクタを使用して収集されたパフォーマンスデータを、解析するグラフィカルデータ解析ツールです。 プロセスが実行されている間、実験を作成するためのパフォーマンス情報が、コレクタによって収集されます。パフォーマンスアナライザはその実験を読み込み、データを解析し、その内容を表形式および図形式で表示します。 analyzer のコマンドラインバージョンは、 er_print として使用できます。

パフォーマンスアナライザを起動するには、コマンド行で以下のように 入力します。

analyzer[ experiment-list]

または、IDE でエクスプローラを使用して実験を開きます。 experiment-list コマンドの引数は、実験の名前または実験のグループ名、 あるいはその両方を空白文字で区切ったリストです。

コマンド行には複数の実験または実験グループを指定できます。 内部に派生実験を持つ実験を指定すると、すべての派生実験が 自動的に読み込まれますが、派生実験のデータの表示は無効になります。 派生実験を個別に読み込むには、実験を明示的に指定するか、 実験グループを作成します。 実験グループを作成するには、まず先頭に次の行を記載した プレーンテキストファイルを作成します。

#analyzer experiment group

次に、後続行に実験の名前を追加します。ファイルには、 という拡張子を付ける必要があります。

「アナライザ」ウィンドウの「ファイル」メニューを使用して実験 または実験グループを追加することもできます。実験をディレクトリ として開くことは、ファイル選択ダイアログで許可されていないため、 派生プロセスで記録される実験を開くには、「実験を開く」ダイアログ ボックス (または「実験ファイルの追加」ダイアログボックス) で ファイル名を入力する必要があります。

ただし、アナライザが複数の実験を表示する際には、読み込み方法に 関わらず、すべての実験データに統合されます。

「実験を開く」ダイアログボックスまたは「実験ファイルの追加」 ダイアログボックスで読み込む実験または実験グループの名前を クリックして、プレビュー表示を行うことができます。

パフォーマンスアナライザを起動して実験を記録するには、コマンド行で以下のように入力します。

analyzer target[target-arguments]

「収集」パネルが開き、 target とその引数、および実験を収集するための設定が 表示されます。 「実験の記録」を参照してください。

  「アナライザ」ウィンドウ

「アナライザ」ウィンドウには、メニューバー、ツールバー、 および多様な表示を行うタブを含む分割区画があります。 左側の区画には、アナライザの主な表示内容についての以下の タブがあります。

•   「関数」タブ、

•   「呼び出し元-呼び出し先」タブ、

•   「ソース」タブ、

•   「行」タブ、

•   「逆アセンブリ」タブ、

•   「PC」タブ、

•   「タイムライン」タブ、

•   「リーク一覧」タブ、

•   「統計」タブ、

•   「実験」タブ

デフォルトでは「関数」タブが表示されます。

右側の区画には、「概要」タブ、「イベント」タブ、および 「凡例」タブがあります。デフォルトでは「概要」タブが表示 されます。「タイムライン」タブを選択しない限り、ほかの 2 つ のタブは選択不可です。

関数、行、PC またはロードオブジェクトが選択されている場合、 その名前がメニューバーのテキストボックスに表示されます。

ツールバーには検索ツールがあり、「関数」、 「呼び出し元-呼び出し先」、「ソース」、および 「逆アセンブリ」のタブで、テキストや強調表示された行を 探すために使用できます (以降の「テキストおよびデータの検索」を参照)。

分割区画を設定するため、分割線をドラッグして区画のサイズを 変更したり、分割線のズームボタン (三角形) をクリックして 最大サイズまで区画を拡大したり、またはデフォルトのサイズに 戻すことができます。三角形は、クリックした際に分割線が移動 する方向を示します。キーボードから分割線を選択するには、 F8 キーを押します。矢印キーで分割線を移動できます。Home キーを 押すと、分割線は左端まで移動します。End キーを押すと、 分割線は右端まで移動します。

テーブル内の列を並べ替えるには、列ヘッダーを希望の位置まで ドラッグします。「関数」タブと「呼び出し元-呼び出し先」タブの テーブルを列の内容でソートするには、列のヘッダーをクリックします。

メニューバーの一番右にあるのは「ヘルプ」メニューです。 「ヘルプ」メニューを使用すると、新機能の説明、 クイックリファレンスガイド、およびキーボードショートカットのリストを 含むアナライザのヘルプを表示できます。 また、F1 キーを押すと、選択されているタブのコンテキストヘルプが 表示されます。

「関数」タブ
    「関数」タブには、関数と関数についてのメトリックから成るリストが 表示されます。メトリックは、実験において収集されたデータから 派生します。メトリックは排他的な場合と包括的な場合があります。 排他的メトリックとは関数自体の内部での使用法を表すもので、 包括的メトリックとは関数とその関数が呼び出したすべての関数内部の 使用法を表すものです。利用可能なメトリックのリストは、 collect(1) のマニュアルページで説明してあります。 メトリックがゼロ以外の関数のみリストされます。 時間のメトリックは秒、ミリ秒の精度で表示されます。 割合 (%) は 0.1% 精度で表示されます。メトリックの値が正確 に 0 の場合、その時間と割合は「0」と表示されます。 この値が 0 ではないが精度未満の場合、値は「0.000」と 表示され、割合は「0.0」と表示されます。カウントメトリックは 整数のカウントで表示されます。

    最初に表示されるメトリックは、収集されたデータから、 さらに様々な .rc ファイルから読み込まれたデフォルト設定に 基づいています (以下のデフォルトを参照)。 クロックベースのプロファイルでは、このデフォルトセットは、 包括的および排他的なユーザー CPU 時間から構成されています。 同期遅延トレースでは、このデフォルトセットは包括的 Sync 待ちカウント と包括的 Sync 待ち時間から構成されています。 HW カウンタのオーバーフローのプロファイルでは、 このデフォルトセットは包括的および 排他的な時間 (サイクルでカウントするカウンタ用) またはイベントカウント (その他のカウンタ用) から構成されています。 ヒープトレースでは、このデフォルトセットはヒープ割り当てと 割り当てられるバイト数から構成されています。 ヒープトレース時 mmap への呼び出しは、メモリー割り当てとして扱われます。 複数の種類のデータが収集されている場合、収集されたデータの種類ごとに デフォルトのメトリックが表示されます。

    表示されるメトリックは、「データ表示方法の設定」ダイアログボックスを 使用して変更できます。

    メトリックの列を並べ替えるには、列のヘッダーを表示したい位置まで ドラッグします。

    ソートメトリック(ソート基準のメトリック)を選択するには、 適切な列ヘッダーをクリックします。 ソートメトリックのメトリック名がボールド書体で表示され、 ヘッダーに三角形が表示されます。

    関数を検索するには、ツールバーにある検索ツールを使用します。

「呼び出し元-呼び出し先」タブ
    「呼び出し元-呼び出し先」タブでは、選択された関数が中央に表示され、 上の区画には関数の呼び出し元、下の区画には関数が呼び出す先が 表示されます。

    関数ごとの排他的および包括的なメトリック値に加えて、 タブには属性メトリックも表示されます。 選択された関数については、属性メトリックはその関数に関する 排他的メトリックを表します。 呼び出し先については、属性メトリックは中央の関数からの呼び出しに 帰する呼び出し先のメトリックの割り合いを表します。 呼び出し先と選択された関数に関する属性メトリックの合計は、 選択された関数に関する包括的メトリックになります。 呼び出し元については、属性メトリックは、呼び出し元からの呼び出しに 帰する選択された関数の包括的メトリックの割合を表します。 すべての呼び出し元に関する属性メトリックの合計も、 選択された関数についての包括的メトリックになります。

    「呼び出し元-呼び出し先」タブに表示するメトリックは、 「データ表示方法の設定」ダイアログボックスで選択します。 包括的または排他的なメトリックを選択すると、 「呼び出し元-呼び出し先」タブに対応する属性メトリックが 表示されます。

    メトリックの列を並べ替えるには、列のヘッダーを表示する位置まで ドラッグします。

    ソートメトリックを選択するには、適切な列ヘッダーをクリックします。 ソートメトリックのメトリック名がボールド書体で表示され、 ヘッダーに三角形が表示されます。「呼び出し元-呼び出し先」タブでの ソートには、属性メトリックのみ使用できます。

    関数を検索するには、ツールバーにある検索ツールを使用します。

    任意のタブでほかの関数を選択すると、「呼び出し元-呼び出し先」タブの 中央で、選択された関数が更新されて表示されます。

「ソース」タブ
    「ソース」タブでは、可能であれば、選択された関数のソース行を含む ファイルが、パフォーマンスメトリックの注釈付で表示されます。 ソースファイル、対応するオブジェクトファイル、 およびロードオブジェクトのフルネームが、ソースコードの 列ヘッダーに表示されます。 同一のソースファイルを使って複数のオブジェクトファイルを コンパイルすることがまれにありますが、この場合は、 選択された関数を含むオブジェクトファイルのパフォーマンスデータが 表示されます。

    アナライザは、絶対パス名下で選択された関数を含むファイルを 実行可能ファイルで記録されたものとして検索します。 検索されなかった場合、現在の作業ディレクトリ内で同じベース名で 検索します。ソースを移動したり、実験が異なるファイルシステムに 記録された場合は、現在のディレクトリに実際のソースのシンボリック リンクを作成して、注釈付きのソースを表示できます。

    ソースコードは、選択されたコンパイラコメントと共にインタリーブ されます。 表示されるコメントのクラスは、「データ表示方法の設定」ダイアログ ボックスで設定できます。デフォルトのクラスは、デフォルトファイルで 設定できます (以下のデフォルト参照)。

    「ソース」タブで表示するメトリックは、「データ表示方法の設定」 ダイアログボックスで選択できます。

    ソースファイル内にある行のメトリックの最大しきい値の割合と同じか それを超えるメトリックの行は強調され、重要な行を簡単に見つけることが できます。しきい値は、「データ表示方法の設定」ダイアログボックスで 設定できます。デフォルトのしきい値は、デフォルトファイルで設定 できます (以下のデフォルト参照)。

    テキストや強調表示された行を検索するには、ツールバーにある検索ツールを 使用します (以降の「テキストおよびデータの検索」を参照)。

    メトリックの列を並べ替えるには、列のヘッダーを表示したい位置まで ドラッグします。

「行」タブ
    「行」タブでは、ソース行とそのメトリックから構成されるリストが 表示されます。ソース行は、関数名、行番号、ソースファイル名で 示されます。 関数の行番号情報が入手できない場合や関数のソースファイルが不明な 場合には、関数のすべての PC が関数の 1 項目として、 まとめて表示されます。関数が非表示であるロードオブジェクトの関数の
     PC は、ロードオブジェクトの 1 項目として、まとめて表示されます。 「行」タブで行を選択すると、その行のすべてのメトリックが 「概要」タブに表示されます。「行」タブで行を選択し、 「ソース」タブまたは「逆アセンブリ」タブを選択すると、 適切な行が表示されます。

「逆アセンブリ」タブ
    「逆アセンブリ」タブでは、命令ごとにパフォーマンスメトリックの注釈を付けて、選択された関数を含むオブジェクトファイルに対する逆アセンブリリストが表示されます。

    逆アセンブリリストでは、ソースコード (ある場合) と表示用に選択 されたコンパイラコメントが交互に現れます。 逆アセンブリ」タブで ソースファイルを検出するアルゴリズムは、「ソース」タブで使用さ れているアルゴリズムと同じです。表示されるコメントのクラスは、 「データ表示方法の設定」ダイアログボックスで設定できます。デフォ ルトのクラスは、デフォルトファイルで設定できます (以下のデフォル ト参照)。

    重要な行を簡単に見つけられるよう、アナライザは、メトリックがその メトリック別しきい値に等しいか、しきい値を超える行を強調表示しま す。しきい値は、「データ表示方法の設定」ダイアログボックスで設定 できます。デフォルトのしきい値は、デフォルトファイルで設定できま す (以下のデフォルト参照)。

    テキストや強調表示された行を検索するには、ツールバーにある検索 ツールを使用します (以降の「テキストおよびデータの検索」を参照)。

    メトリックの列を並べ替えるには、列のヘッダーを表示したい位置まで ドラッグします。

「PC」タブ
    「PC」タブでは、PC とそのメトリックから構成されるリストが表示されます。PC は、関数名とその関数内でのオフセットで示されます。関数が非表示であるロードオブジェクトの関数の PC は、ロードオブジェクトの 1 項目として、まとめて表示されます。「PC」タブで行を選択すると、その PC のすべてのメトリックが「概要」タブに表示されます。「PC」タブで行を選択し、「ソース」タブまたは「逆アセンブリ」タブを選択すると、適切な行が表示されます。

「データオブジェクト」タブ
    「データオブジェクト」タブは、データオブジェクトとそのメトリック の一覧です。実験にデータ空間プロファイルが含まれている場合、この タブは自動的に表示されます。このタブは、アグレッシブなバックト ラックオプションが有効になっているハードウェアカウンタ実験で、C コンパイラで -xhwcprof オプションを指定してコンパイルしたソースファイルに対してのみ適用 されます。

    このタブの表示を有効にすると、プログラム中のさまざまなデータ構造 体と変数のハードウェアカウンタメモリーオペレーションのメトリック が表示されます。

「データレイアウト」タブ
    「データレイアウト」タブは、データ駆動型メトリックデータを 持つあらゆるプログラムデータオブジェクトに関する注釈付きデー タオブジェクトのレイアウトを表示します。レイアウトの表示順は、 実験のロードオブジェクトに定義されている順序です。このタブに は、集合体データオブジェクト各々について、その属性メトリック の合計と、オフセット順でその要素がすべて表示されます。要素は それぞれ専用のメトリックと 32 バイトブロック単位でのそのサイ ズおよび位置のインジケータを持ちます。

    「データオブジェクト」タブ同様、実験にデータ空間プロファイルが 含まれている場合、このタブは自動的に表示されます。

「タイムライン」タブ
    「タイムライン」タブでは、コレクタで時間の関数として記録されたイベントと標本点のグラフが表示されます。データは、水平バーで表示されます。実験ごとに標本データを表すバーがあり、LWP ごとにバーのセットがあります。LWP のセットは、記録されるデータ (クロックベースのプロファイル、ハードウェアカウンタのプロファイル、同期トレース、ヒープトレース、および MPI トレース) の種類ごとに 1 つずつのバーがあります。

    標本データを含むバーでは、各標本のマイクロステートごとの経過時間を色分けして表します。標本点のデータは標本点間の経過時間を表すため、標本は期間を表します。標本をクリックすると、その標本のデータが「イベント」タブに表示されます。

    プロファイルデータまたはトレースデータのバーは、記録されるイベントごとのイベントマーカーを表します。イベントマーカーは、マーカーの一番上に表示されるリーフ関数からの呼び出しスタックを色分けして表します。イベントマーカーのカラーの矩形をクリックすると、対応する関数が選択され、そのイベントと関数のデータが「イベント」タブに表示されます。「イベント」タブと「凡例」タブでは選択項目は強調表示され、「ソース」タブまたは「逆アセンブリ」タブを選択すると、呼び出しスタック内のそのフレームに対応する行が表示されます。

    データによっては、イベントがオーバーラップして見えなくなることがあります。 複数のイベントがまったく同じ位置にある場合、描画できるのは 1 つのイベントだけです。 また、複数のイベントが 1 または 2 ピクセルの中にある場合は、すべてのイベントを描画できます。ただし、それらを視覚的に区別することは困難です。いずれの場合も、 オーバーラップを示す灰色のマークが描画イベントの下に表示されます。
    「データ表示方法の設定」ダイアログボックスの「タイムライン」タブを使用して、表示されるイベント固有のデータの種類の変更、スレッド、LWP、または CPU のイベント固有のデータの表示の選択、呼び出しスタックのルートまたはリーフへの配置、表示される呼び出しスタックのレベル数の選択を行うことができます。

    「タイムライン」メニューのカラーチューザまたはツールバーの「カラーチューザ」を使用して、選択された関数に割り当てられる色を変更できます。カラーチューザは、「凡例」タブでカラーボックスをダブルクリックして開くこともできます。 カラーチューザは、すべての機能の色、および指定した文字列に一致する機能の色を設定すること もできます。 また、ユーザーの CPU 以外のマイクロステートを表すクロックプロファイルの色を設定でき、 それらのイベントを非表示にすることもできます。

    ツールバーと「タイムライン」メニューには、イベント間を横方向に、バーの間を縦方向に進むためのコントロールや、時間軸を拡大縮小するコントロール、また表示を最大サイズに戻すコントロールがあります。また、領域内でドラッグすることで、拡大が可能です。

    表示する実験は、「データをフィルタ」ダイアログボックスを使用して選択します。このダイアログボックスでの LWP、スレッド、CPU の選択は、「タイムライン」タブでのデータの表示に影響を与えません。

「リーク一覧」タブ
    「リーク一覧」タブには上下 2 行が表示され、上の行はリークを、下の行は割り当てを示します。各行では、「タイムライン」タブと同様に呼び出しスタックが表示され、中央の上部にはリークしたか割り当てられたバイトに比例した長さのバーが、下部にはリークまたは割り当ての数に比例した長さのバーが表示されます。

    リークまたは割り当てを選択すると、選択したリークまたは割り当てのデータが「リーク」タブに表示されます。また、「タイムライン」タブと同様に、呼び出しスタック内のフレームが選択されます。

「統計」タブ
    「統計」タブでは、選択された実験と標本の全体にわたって合計されたさまざまなシステム統計情報の合計が表示され、続いて実験ごとに選択された標本についての統計が表示されます。表示される統計については、getrusage(3C) と proc(4) のマニュアルページを参照してください。

「実験」タブ
    「実験」タブは、2 つの区画に分割されています。上の区画には、収集された実験に関する情報や、収集対象がアクセスするロードオブジェクトに関する情報がツリー表示されます。表示される情報には、実験またはロードオブジェクトの処理中に生成されるエラーメッセージや警告メッセージが含まれます。下の区画には、アナライザセッションからのエラーメッセージや警告メッセージがリストされます。

「概要」タブ
    「概要」タブでは、選択された関数またはロードオブジェクトについて記録されているすべてのメトリックが、値と割り合いの両方ですべて表示されます。また、選択された関数またはロードオブジェクトに関する情報が表示されます。任意のタブで新しい関数またはロードオブジェクトが選択されると、「概要」タブは更新されます。

「イベント」タブ
    「イベント」タブでは、「タイムライン」タブで選択されたイベントについて、イベントの種類、リーフ関数、LWP、スレッド、および CPU ID を含む詳細なデータが表示されます。データパネルの下には、呼び出しスタックがスタックの関数ごとに色分けして表示されます。呼び出しスタックの関数をクリックすると、関数が選択されます。

    「タイムライン」タブで標本が選択されている場合、「イベント」タブでは、標本番号、標本の開始時間と終了時間、およびマイクロステートごとに経過時間が色分けされたマイクロステートが表示されます。

    左側の区画で「タイムライン」タブが選択されている場合のみ、「イベント」タブを使用できます。

「凡例」タブ
    「凡例」タブでは、「タイムライン」タブの関数やマイクロステートに割り当てられている色についての説明文が表示されます。このタブは、左側の区画で「タイムライン」タブが選択されている場合のみ使用できます。説明文で項目を選択し、「タイムライン」メニューからカラーチューザを選択するか、カラーボックスをダブルクリックして、項目に割り当てられた色を変更できます。

「リーク」タブ
    「リーク」タブでは、「リーク一覧」タブで選択したリークまたは 割り当ての詳細データが表示されます。 データパネルの下の「リーク」タブは、選択されたリークまたは 割り当てが検出された時点の呼び出しスタックを示します。 呼び出しスタック内の関数をクリックすると、その関数が選択されます。

  「データ表示方法」オプションの選択

「データ表示方法の設定」ダイアログボックスで、データの表示を制御 できます。このダイアログボックスを開くには、ツールバーで 「データ表示方法の設定」ボタンをクリックするか、「表示」メニューから 「データ表示方法の設定」を選択します。「データ表示方法の設定」 ダイアログボックスには、6 つのタブを表示する区画があります。

「メトリック」タブには、使用できるメトリックがすべて表示されます。 メトリックごとには、メトリックの種類によって「時間」、「値」 および 「%」のラベルがある 1 つまたは複数の列にチェックボックスがあります。

「ソート」タブには、メトリックの表示順序と、ソート基準として使用するメトリックの選択肢が表示されます。

「ソース/逆アセンブリ」タブには、提供情報の選択に利用できる、次のような 一群のチェックボックスが用意されています。

•   ソースリストおよび逆アセンブリリストに表示するコンパイラのコメント

•   ソースリストおよび逆アセンブリリストで重要な行を強調表示する しきい値

•   逆アセンブリリストにおけるソースコードの交互表示

•   逆アセンブリリストにおけるソース行のメトリック

•   逆アセンブリリストにおける命令の 16 進表示

「書式」タブでは、C++ 関数名の長形式または短形式、 あるいは Java メソッド名のいずれかを選択できます。 また、Java モードを「オン」、「上級」、「オフ」のいずれかに、データ領域表示を「有効化」、「無効化」のどちらかに設定できます。

「タイムライン」タブでは、表示されるイベント固有のデータの種類 の選択、スレッド、LWP、または CPU のイベント固有のデータの表示 の選択、呼び出しスタックのルートまたはリーフへの配置、表示される 呼び出しスタックのレベル数の選択を行うことができます。

「パスを検索」では、ソースファイル、オブジェクトファイルの検索に 使用するディレクトリの管理を行うことができます。特別な名前である 「$expts」は、読み込まれる実験を示します。 その他の名前は、ファイルシステム内のパス名です。

「データ表示方法の設定」ダイアログボックスには「保存」ボタンがあり、現在の設定を保存できます。

  テキストやデータの検索

アナライザには、ツールバーに検索ツールがあり、 コンボボックスに表示される検索対象について 2 つのオプションを 使用できます。 「関数」タブまたは「呼び出し元-呼び出し先」タブの名前列や、 「ソース」タブおよび「逆アセンブリ」タブのコード列でテキストを 検索できます。「高メトリック」は「ソース」タブおよび「逆アセンブリ」 タブで検索できます。高いメトリックの項目がある行のメトリック値は、 緑色で強調表示されます。上下方向を検索するには、 検索フィールドの隣にある矢印ボタンを使用します。

  関数の表示または非表示

デフォルトでは、「関数」タブと「呼び出し元-呼び出し先」タブに、 各ロードオブジェクトのすべての関数が表示されます。 「関数の表示/非表示」ダイアログボックスを使用し、 ロードオブジェクトのすべての関数を非表示にできます。 ダイアログボックスは、ツールバーまたは「表示」メニューから 開くことができます。 ロードオブジェクトの関数が非表示の場合、ロードオブジェクトから 統合されたすべての関数を表す単一のエントリが表示されます。 同様に、「行」タブ、「PC」タブでも、ロードオブジェクトの全関数の 全 PC を統合した単一のエントリが表示されます。

フィルタとは対照的に、非表示の関数に対応するメトリックは、 すべての画面において一定の形式で表示されます。

  データのフィルタ : 実験、標本、スレッド、LWP、CPU の選択

デフォルトでは、すべての実験、標本、スレッド、LWP、CPU について 各タブにデータが表示されます。 また、「データをフィルタ」ダイアログボックスを使用して、 データのサブセットを選択することができます。 このダイアログボックスを開くには、ツールバーにある 「データをフィルタ」ボタンをクリックするか、「表示」メニューから 「データをフィルタ」を選択します。

「データをフィルタ」ダイアログボックスは、実験ファイルリストと、 標本、CPU、LWP、およびスレッドについてのセクションで構成され、 それぞれに選択を入力するためのテキストフィールドがあります。 実験ファイルリストでは、実験ファイルを選択するか、 または「すべてを選択」、「すべてを選択解除」、あるいは「反転」ボタン をクリックして、1 つまたは複数の実験ファイルを選択できます。 テキストボックスを使用して、選択した実験ファイルについて表示させる データを変更できます。複数の CPU、スレッド、LWP でフィルタされた データを解釈する際には注意を払う必要がありますが、3 個のフィルタを すべて同時に適用できます。「すべてを有効」、「選択されているものを 有効」、「すべてを無効」、または「選択されているものを無効」ボタンを 使用して、実験ファイルについて表示させるデータを有効または無効に することもできます。

実験選択
    アナライザでは、複数の実験が読み込まれている場合、実験で 絞り込む機能があります。実験は個別に読み込むことも、実験 グループ名で読み込むこともできます。

標本選択
    標本は 1 から N まで番号が付けられ、任意に組み合わせて 選択することができます。標本を選択するには、 標本番号や 1-5 のような範囲をコンマで区切って指定します。

スレッド選択
    スレッドは 1 から N まで番号が付けられ、任意に組み合わせて 選択することができます。スレッドを選択するには、スレッド番号や 範囲をコンマで区切って指定します。スレッドのプロファイルデータは、 スレッドが LWP 上で実際にスケジュールされた場合の実行の一部だけを 対象にします。

LWP 選択
    LWP は 1 から N まで番号が付けられ、任意に組み合わせて 選択することができます。LWP を選択するには、 LWP 番号や範囲をコンマで区切って指定します。 同期データが記録されている場合、報告される LWP は同期イベントの 開始時の LWP です。この LWP は同期イベントの終了時の LWP と異なる 場合があります。

CPU 選択
    CPU 情報が記録されている環境 (Solaris 9 以降) では、 CPU を任意に組み合わせて選択することができます。 CPU を選択するには、CPU 番号または範囲をコンマで区切って指定します。

  実験の記録

ターゲット名とターゲット引数を指定してアナライザを起動すると、 指定したターゲット名で実験を記録できるように 「収集」ダイアログが表示されます。 引数なし、または実験リストを指定してアナライザを起動した場合は、 新しい実験を記録できるように 「収集」ダイアログが表示されます。 これは、ツールバーで「収集」ボタンをクリックするか、 「ファイル」メニューから「収集」を選択することでも行うことが できます。

「収集」ダイアログには、実験を実行するためのターゲット、 引数、およびその他のパラメータを措定するパネルがあります。 対応するオプションは、 collect
 コマンドで利用できます。 詳細は、 collect(1) のマニュアルページを参照してください。 このパネルの下部には「プレビューコマンド」ボタンとテキストフィールド があります。このボタンを押すと、「実行」ボタンを押すと使用される 収集コマンドがテキストフィールドに表示されます。

このボタンの下部には、収集から取得した出力を表示するパネルと、 プロセスを出力するパネルがあります。 ダイアログの最下部には「実行」、「一時停止」、「再開」、実行中にプロセスに 信号を送る「標本」(対応する信号が指定されている場合のみ)。 「終了」、「閉じる」ボタンがあります。

実験の進行中にこのパネルを閉じても実行は継続されます。 パネルを再度表示すると、閉じずに開いていたのと同じ様に その実験の進行状況が表示されます。 実験の進行中にアナライザを終了すると、その実験を終了するか 継続するかを確認するダイアログが表示されます。

  マップファイルの生成と関数の順序変更

データ解析以外に、アナライザには関数の順序変更機能もあります。 また、アナライザは実験ファイルに基づいてマップファイルを生成します。 このマップファイルを、アプリケーションの再リンクを行う 静的リンカ (ld) とともに使用して実行可能ファイルを作成すると、 より小さなワーキングセットで済み、内部キャッシュの動作も 改善されます。

関数がマップファイルに記録され、実行可能ファイルで関数の順序変更に 使用される順序は、関数リストのソートに使用されるメトリックによって 決定します。通常、マップファイルの生成には、排他的な ユーザー CPU 時間か排他的なユーザー CPU サイクル時間が使用されます。 同期遅延トレースやヒープトレースなどによるメトリック、 または名前やアドレスでは、マップファイルについて意味のある順序付けは 行われません。

  その他の機能

アナライザは、「ファイル」メニューで、現在のセットに実験または 実験グループを追加したり、削除したりすることができます。

デフォルト

analyzer は、カレントディレクトリに .er.rc ファイルが 存在すれば、そこから指令を実行します。存在しない場合は、 ユーザーのホームディレクトリに .er.rc ファイルが存在すれば そこから、それ以外はシステム内にある .er.rc ファイルから指令を 実行します。これらのファイルは、メトリックとソートのデフォルト設定、 およびソースと逆アセンブリ出力のコンパイラのコメントオプションを 指定したり、しきい値を強調表示するためのデフォルト設定を含むことが できます。また、他のコンパイラの C++ 名の復号化パス、 「タイムライン」タブのデフォルト設定、 名前の書式設定のデフォルト設定、Java モード (javamode) と データ領域表示モード (datamode) の設定、ソースファイルと オブジェクトファイルの検索パスを制御する指令を含めることができます。 これらの指令とファイルおよび処理については、er_print(1) の マニュアルページを参照してください。

互換性

analyzer は、Forte Developer 7、Sun ONE Studio 8、 Sun Studio 8、または Sun Studio 9 のいずれかのソフトウエアを 使用して記録した実験ファイルに対してのみ実行することができます。 以前のバージョンのツールで記録された実験ファイルでアナライザ を起動すると、警告メッセージが表示されます。実験を記録する ために使用したリリースのアナライザを使用してください。

関連項目
collect(1)、 collector(1)、 dbx(1), er_archive(1)、 er_cp(1)、 er_export(1)、 er_mv(1)、 er_print(1)、 er_rm(1)、 er_src(1)、 libcollector(3)、 および
『プログラムのパフォーマンス解析』