プログラムの実行中に収集されたデータを「実験」といいます。実験は、1 つのディレクトリに格納される一連のファイルで構成されます。実験の名前は、ディレクトリの名前です。
コレクタは実験データを記録するばかりでなく、プログラムが使用したロードオブジェクトの独自のアーカイブも作成します。これらのアーカイブには、すべてのオブジェクトファイルとそのロードオブジェクト内のすべての関数のアドレス、サイズ、名前、ロードオブジェクトのアドレス、その最終変更日時を示すタイムスタンプが含まれます。
デフォルトでは、実験は現在のディレクトリに格納されます。このディレクトリがネットワーク接続されたファイルシステム上にある場合は、ローカルのファイルシステム上にあるときよりもデータの格納に長い時間がかかり、パフォーマンスデータにひずみが生じる可能性があります。可能であれば、常に、実験はローカルのファイルシステムに記録するようにしてください。コレクタを実行するときに、格納場所を指定することができます。
実験のデフォルト名は、test.1.er です。接尾辞 .er は必須です。この接尾辞のない名前を指定すると、エラーメッセージが表示され、名前は受け付けられません。
experiment .n.er という形式の名前を選択した場合 (ただし、n は正の整数)、コレクタは後続の実験の名前の中で、n を自動的に 1 ずつ増分します。たとえば、mytest.1.er の次は mytest.2.er となり、その次は mytest.3.er のように続きます。コレクタはまた、実験がすでに存在する場合も n を増分し、すでに実験名が使用されている場合は、使用されていない実験名が見つかるまで n の増分を繰り返します。実験が存在していても実験名に n が含まれていない場合、コレクタはエラーメッセージを出力します。
実験はグループにまとめることができます。グループは、デフォルト時に現在のディレクトリに格納される実験グループファイルにおいて定義されます。実験グループファイルは、1 行のヘッダー行のあとに 1 行につき 1 つの実験名が定義されているプレーンテキストファイルです。実験グループファイルのデフォルト名は、test.erg です。ファイル名の末尾が .erg でない場合はエラーとなり、ファイル名は受け付けられません。実験グループを作成すると、そのグループ名で実行したすべての実験がグループに追加されます。
次に示す行を最初に持つプレーンテキストファイルを作成すると、実験グループを手動で作成できます。
#analyzer experiment group |
このあとの行に実験の名前を追加します。ファイルの名前の最後は、.erg でなければなりません。
collect ユーティリティーの -g 引数を使用して、実験グループを作成することもできます。
MPI プロセスごとに実験が 1 つ作成される MPI プログラムから収集された実験では、デフォルトの実験名が異なります。デフォルトの実験名は test.m.er で、m はそのプロセスの MPI ランクです。group.erg という実験グループを指定した場合、デフォルトの実験名は group.m.er です。実験名を指定した場合は、これらのデフォルトが置き換えられます。詳細は、「MPI プログラムからのデータの収集」を参照してください。
派生プロセスの実験は、次のとおり、その系統に基づいて命名されます。派生プロセスの実験名は、その親の実験名に下線、コード文字、数字を追加して作成されます。コード文字は、fork の場合は f、exec の場合は x、組み合わせの場合は c です。数字は、fork または exec のインデックスで、成功したかどうかには関係ありません。たとえば親プロセスの実験名が test.1.er の場合、3 回目の fork の呼び出しで作成された子プロセスの実験は test.1.er/_f3.er となります。この子プロセスが exec の呼び出しに成功した場合、新しい派生プロセスの実験名は test.1.er/_f3_x1.er となります。
別のコンピュータに実験を移動して解析する場合には、実験が記録されたオペレーティング環境に解析結果が依存することを念頭に置いてください。
アーカイブファイルには、関数レベルでメトリックを計算してタイムラインを表示するのに必要な情報がすべて入っています。ただし、注釈付きソースコードや注釈付き逆アセンブリコードを調べるには、実験の記録時に使用されたものと同じバージョンのロードオブジェクトやソースファイルにアクセスできる必要があります。
パフォーマンスアナライザはソースファイル、オブジェクトファイル、および実行可能ファイルを次の場所で順に検索し、正しいベース名のファイルが見つかると検索を停止します。
実験の保管ディレクトリ
現在の作業ディレクトリ
実行可能ファイルまたはコンパイルオブジェクトに記録されている絶対パス名
アナライザ GUI から、または setpath および addpath 指令を使って、検索順序を変更したり、ほかの検索ディレクトリを追加したりできます。
プログラムの正しい注釈付きソースコードと注釈付き逆アセンブリコードが確実に表示されるようにするには、ソースコード、オブジェクトファイル、および実行可能ファイルを実験にコピーしてから実験の移動やコピーを行います。オブジェクトファイルをコピーしたくない場合には、-xs を使用してプログラムをリンクし、ソース行とファイル位置に関する情報が実行可能ファイルに挿入されるようにします。collect コマンドの -A オプション、または dbx collector archive コマンドを使用して、実験にロードオブジェクトを自動的にコピーすることができます。