Sun Studio 12: パフォーマンスアナライザ

-F option

派生プロセスのデータを記録するかどうかを制御します。option には次のいずれかの値を指定できます。

-F on オプションを指定すると、コレクタは、fork(2)、 fork1(2)、fork(3F)、vfork(2)、および exec(2) の関数とそのバリアントの呼び出しによって作成されたプロセスをたどります。vfork の呼び出しは、内部で fork1 の呼び出しに置換されます。

-F all オプションを指定すると、コレクタは、system(3C)、system(3F)、sh(3F)、および popen(3C)、および同様の関数の呼び出しによって作成されたものを含むすべての派生プロセス、そして関係する派生プロセスをたどります。

-F '= regexp ' オプションを指定すると、コレクタは、名前または系統が指定する正規表現と一致するすべての派生プロセスをたどります。正規表現については、regexp(5) のマニュアルページを参照してください。

派生プロセスのデータを収集するとき、コレクタは、派生プロセスごとに新しい実験を親の実験内に 1 つ開きます。これらの新しい実験は、次のように、下線、文字、および数字を実験接尾辞に追加することで命名されます。

たとえば初期プロセスの実験名が test.1.er の場合、3 回目の fork の呼び出しで作成された子プロセスの実験は test.1.er/_f3.er となります。この子プロセスが新しいイメージを実行した場合、対応する実験名は test.1.er/_f3_x1.er となります。この子プロセスが popen 呼び出しを使用して別のプロセスを作成した場合、実験名は test.1.er/_f3_x1_c1.er となります。

アナライザおよび er_print は、親の実験が読み取られたときに自動的に派生プロセスの実験を読み取りますが、派生プロセスの実験は、データ表示の対象として選択されません。

表示するデータをコマンド行から選択するには、er_printanalyzer にパス名を明示的に指定します。指定するパスには、親の実験名と、親ディレクトリ内の派生実験名を含める必要があります。

たとえば、test.1.er 実験の 3 回目の fork のデータを表示する場合は、次のように指定します。

er_print test.1.er/_f3.er

analyzer test.1.er/_f3.er

もう一つの方法として、関心のある派生の実験の明示的な名前を入れた実験グループファイルを用意する方法もあります。

アナライザで派生プロセスを調べるには、親の実験を読み込んで、「表示」メニューから「データをフィルタ」を選択します。実験のリストは、親の実験のみが選択されて表示されます。これを選択解除し、対象とする派生実験を選択します。


注 –

派生プロセスが追跡されている間に親プロセスが終了した場合、派生のデータ収集が継続する可能性があります。それに従って親の実験ディレクトリは拡大を続けます。