マニュアルページ analyzer.1
名前
analyzer - プログラムパフォーマンス実験ファイルを解析する た
めの GUI インタフェース
形式
analyzer [-j|--jdkhome jvm-path][-Jjvm-options]
[-f|--fontsize size][-v|--verbose][experiment-list]
analyzer -V|--version
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
次に、後続行に実験の名前を追加します。ファイルには、 erg と
いう拡張子を付ける必要があります。
「アナライザ」ウィンドウの「ファイル」メニューを使用して実験
または実験グループを追加することもできます。実験をディレクト
リとして開くことは、ファイル選択ダイアログで許可されていない
ため、派生プロセスで記録される実験を開くには、「実験を開く」
ダイアログボックス (または「実験ファイルの追加」ダイア ロ グ
ボックス) でファイル名を入力する必要があります。
ただし、アナライザが複数の実験を表示する際には、読み込み方法
に関わらず、すべての実験データに統合されます。
「実験を開く」ダイアログボックスまたは「実験ファイルの追加」
ダイアログボックスで読み込む実験または実験グループの名前をク
リックして、プレビュー表示を行うことができます。
パフォーマンスアナライザを起動して実験を記録するには、コマン
ド行で以下のように入力します。
analyzer target[target-arguments]
「収集」パネルが開き、 target とその引数、および実験を収集す
る た めの設定が表示されます。「実験の記録」を参照してくださ
い。
「アナライザ」ウィンドウ
「アナライザ」ウィンドウには、メニューバー、ツールバー、およ
び多様な表示を行うタブを含む分割区画があります。左側の区画に
は、アナライザの主な表示内容についての以下のタブがあります。
o 「関数」タブ、
o 「呼び出し元-呼び出し先」タブ、
o 「ソース」タブ、
o 「行」タブ、
o 「逆アセンブリ」タブ、
o 「PC」タブ、
o 「タイムライン」タブ、
o 「リーク一覧」タブ、
o 「統計」タブ、
o 「実験」タブ
デフォルトでは「関数」タブが表示されます。
右側の区画には、「概要」タブ、「イベント」タブ、およ び 「凡
例」 タ ブがあります。デフォルトでは「概要」タブが表示されま
す。「タイムライン」タブを選択しない限り、ほかの 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 つまたは複数の列にチェック
ボックスがあります。
「ソート」タブには、メトリックの表示順序と、ソート基準として
使用するメトリックの選択肢が表示されます。
「ソース/逆アセンブリ」タブには、提供情報の選択に利 用 で き
る、次のような一群のチェックボックスが用意されています。
o ソースリストおよび逆アセンブリリストに表示するコンパ イ
ラのコメント
o ソースリストおよび逆アセンブリリストで重要な行を強調 表
示するしきい値
o 逆アセンブリリストにおけるソースコードの交互表示
o 逆アセンブリリストにおけるソース行のメトリック
o 逆アセンブリリストにおける命令の 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)、および
『プログラムのパフォーマンス解析』