検出されたすべてのループでインテル® Advisor を使用してターゲット・アプリケーションを実行すると、ターゲット・アプリケーションの実行時間が大幅に増加する場合があります。パースペクティブで選択した精度レベルと解析に応じて、アプリケーションの実行時間には異なるオーバーヘッドが追加されます。以下に例を示します。
ランタイム・オーバーヘッド/解析 |
サーベイ |
特性化 |
依存関係 |
MAP |
---|---|---|---|---|
インテル® Advisor を使用した場合と、使用しない場合のアプリケーションの実行時間の比較 |
1.1x 増加 |
2 - 55x 増加 |
5 - 100x 増加 |
5 - 20x 増加 |
次の手法を使用して、注目しないモジュールをスキップしたり、注目するモジュールのみを解析したりできます。
収集とファイナライズのオーバーヘッドを最小化します。
適用される解析: サーベイ、トリップカウント & FLOP 収集を有効にした特性化。
次を使用します。
サードパーティーのコードなど、最適化できないモジュールを除外します。
注目する少数のモジュールのみを含めます。
注次のコマンドでは、コマンドを実行する前にmyApplicationをアプリケーションの実行可能ファイルのパスと名前に置き換えてください。アプリケーションが引数を必要とする場合、実行可能ファイル名の後にそれらを指定します。
目的の解析を実行する前と実行中に、次のいずれかを行います。
[Project Properties (プロジェクトのプロパティー)] > [Analysis Target (解析ターゲット)] > [[Name] Analysis (<解析名> 解析)] > [Modules (モジュール)] > [Exclude the following module(s) (次のモジュールを除外)] を設定してモジュールを識別します。ここで、[解析名] は [サーベイ] または [トリップカウント & FLOP] です。
advisor CLI アクションのオプション --module-filter-mode=exclude および --module-filter=<string> を使用します。次に例を示します。
advisor --collect=survey --project-dir=./advi_results --module-filter-mode=exclude --module-filter=foo1.so,foo2.so -- ./myApplication
[Project Properties (プロジェクトのプロパティー)] > [Analysis Target (解析ターゲット)] > [<Name> Analysis (<名前> 解析]) > [Modules (モジュール)] > [Include only the following module(s) (次のモジュールを含める)] を設定してモジュールを識別します。
advisor CLI アクションのオプション --module-filter-mode=include および --module-filter=<string> を使用します。次に例を示します。
advisor --collect=survey --project-dir=./advi_results --module-filter-mode=include --module-filter=foo1.so,foo2.so -- ./myApplication
フィルター処理機能を使用すると、対象の GPU カーネルのみを解析できるため、データ収集とファイナライズのオーバーヘッドが最小限に抑えられます。
適用される解析: サーベイ、トリップカウント & FLOP 収集を有効にした特性化。
注目する GPU カーネルをフィルター処理するには、目的の解析を実行する前に次の手順を実行します。
[Project Properties (プロジェクトのプロパティー)] > [Analysis Target (解析ターゲット)] > [<Name> Analysis (<名前> 解析]) を選択します。ここで、<Name> は、[Survey (サーベイ)] または [Trip Counts and FLOP (トリップカウントと FLOP)] です。
次に、解析プロパティーで、[GPU kernels of interest (対象の GPU カーネル)] リストの [Modify (変更)] をクリックし、注目するカーネルを指定します。あるいは、advisor CLI アクションオプション --gpu-kernel-of-interest =<kernel_names> を使用することもできます。次に例を示します。
advisor --collect=survey --profile-gpu -gpu-kernel-of-interest=test* -- ./myScript
注: このコマンドを実行する前に、myScript を適切な実行可能パスに置き換え、必要なその他のオプションを追加してください。