スレッド化の結果を検証

インテル® Advisor はスレッド化の結果を検証するいくつかの方法を提供しています。

CLI で結果を表示

コマンドラインからスレッド化のパースペクティブを実行すると、CLI で収集された結果を出力し、.txt.csv、または.xml に保存できます。

例えば、OpenMP* スレッド化モデルのスータビリティー・レポートを生成するには、つぎのコマンドを実行します。

advisor --report=suitability --project-dir=./advi_results --threading-model=openmp

次のような結果が得られるはずです。

Target CPU Count: 8 Threading Model: OpenMP* Maximum gain for all sites: 6.10998 All Sites Site Label Source Location Impact to Total Serial Time Total Parallel Time Site Gain Average Serial Time ...Program Gain ..._____________________________________________________________________________________________________________________________... solve nqueens_serial.cpp:154 6.11x 4.080s 0.631s 6.47x 4.080s ...Site Details Annotation Annotation Label Source Location Number of Instances Maximum Instance Average Serial ...Time Time ..._____________________________________________________________________________________________________________________________...Selected Site solve nqueens_serial.cpp:154 1 4.080s 4.080s ...Task setQueen nqueens_serial.cpp:156 14 0.477s 0.267s ...Lock ? 365596 < 0.001s < 0.001s ...Site Options Benefit Loss If Site Option Done? If Done Not Done Recommended _________________________________________________________________________ solve Reduce Site Overhead No solve Reduce Task Overhead No solve Reduce Lock Overhead No solve Reduce Lock Contention 0.16x No solve Enable Task Chunking No

結果は、./advi_results/e<NNN>/st<NNN> にあるテキストファイル advisor-suitability.txt にも保存されます。

実行する解析のレポートを生成できます。汎用レポートのコマンドは、次のようになります。

advisor --report=<analysis-type> --project-dir=<project-dir> --format=<format>

説明:

スータビリティー・レポートを生成する場合、追加オプションを使用して結果表示を制御できます。

次のように、実行されたすべての解析データを含むレポートを生成し、--report=joinedアクションを使用して CSV ファイルに保存することもできます。

advisor --report=joined --report-output=<path-to-csv>

説明:--report-output=<path-to-csv>は保存されるレポートの.csvのパスとファイル名です。例: /home/report.csv など。このオプションはレポートを結合して生成するのに必要です。

オプションについては、advisor コマンドオプションのリファレンスをご覧ください。

GUI で 結果を表示

コマンドラインからスレッド化パースペクティブを実行すると、--project-dir で指定されたディレクトリーにプロジェクトが作成されます。収集されたすべての結果と解析設定は、*.advixeproj プロジェクトに保存され、インテル® Advisor で表示できます。

GUI でプロジェクトを開くには、次のコマンドを実行します。

advisor-gui <project-dir>

レポートが開かない場合は、[Welcome (ようこそ)] ペインで [Show Result (結果を表示)] をクリックしてください。

GUI からスレッド化パースペクティブを実行し、収集が完了すると結果は自動的に開きます。

最初に、コード内のベクトル化されたループ/関数のパフォーマンスと、アノテーション付きの並列サイト関連する全体的な情報を含むサマリーレポートが表示されます。

[ベクトル化のサマリーレポート

読み取り専用スナップショットを保存

スナップショットは、プロジェクトの結果を格納する読み取り専用のコピーであり、インテル® Advisor GUI でいつでも表示できます。インテル® Advisor GUI または CLI でプロジェクトのスナップショットを保存できます。

アクティブなプロジェクトの結果を GUI からスナップショットとして保存するには、次のコマンドを実行します。レポートの上部にあるリボンで ボタンをクリックします。[Create a Result Snapshot (結果スナップショットの作成)] ダイアログボックスで、スナップショットの詳細を入力して保存します。

アクティブなプロジェクトの結果を CLI からスナップショットとして保存するには、次のコマンドを実行します。

advisor --snapshot --project-dir=<project-dir> [--cache-sources] [--cache-binaries] -- <snapshot-path>

説明:

  • --cache-sources オプションは、アプリケーションのソースコードをスナップショットに追加します。
  • --cache-sources オプションは、アプリケーションのバイナリーをスナップショットに追加します。
  • <snapshot-path は、スナップショットのパスと名前です。例えば、/tmp/new_snapshot を指定すると、スナップショットは tmp ディレクトリーにnew_snapshot.advixeexpz で指定されたディレクトリーにプロジェクトが作成されます。これをスキップして、スナップショットを現在のディレクトリーに snapshotXXX.advixeexpz として保存できます。

インテル® Advisor GUI で結果のスナップショットを開くには、次のコマンドを実行します。

advisor-gui <snapshot-path>

保存した読み取り専用の結果と、現在アクティブな結果またはほかの読み取り専用の結果を視覚的に比較することができます。

詳細は、読み取り専用の結果スナップショットを作成を参照してください。

結果の解釈

GUI からスレッド化のパースペクティブを実行して、結果を調査し、さまざまなスレッド化の設計を試すことができます。

関連情報