アプリケーションでのプロファイリングのイネーブル で説明するように、ザイリンクス ランタイム (XRT) は、opencl_trace
、xrt_native_api
、data_transfer_trace
などの特定のオプションが xrt.ini ファイルでイネーブルになっている場合に、ホスト アプリケーションおよびカーネルのプロファイリング データを収集します。XRT では、OpenCL または XRT API 呼び出しを使用してランタイムに呼び出しコールを発信するときに、ホスト アプリケーションのプロファイル データを取得します。ホスト アプリケーションのカスタム プロファイリング で説明されるように、ホスト アプリケーションにユーザー呼び出しを追加すると、追加のプロファイリング情報も取得できます。カーネル演算の詳細を取得するには、次のセクションで説明する --profile オプション を使用してカーネルを .xclbin にインプリメントする必要があります。
アプリケーションの実行が終了すると、ホスト コードがコンパイルされたディレクトリに Profile Summary レポートが .csv ファイルとして保存されます。Profile Summary には、全体的なアプリケーション パフォーマンスに関する注釈付きの詳細が表示されます。アプリケーションの実行中に生成されたすべてのデータが複数のカテゴリに分類されます。Profile Summary では、カーネル実行とデータ転送の統計を確認できます。
ヒント:
Profile Summary レポートは、すべてのビルド コンフィギュレーションで生成できます。ただし、ソフトウェア エミュレーション ビルドでは、カーネル実行効率およびデータ転送効率の下にデータ転送の詳細は含まれません。この情報は、ハードウェア エミュレーションおよびシステム ビルド コンフギュレーションでのみ生成されます。
次に Profile Summary レポートの例を示します。
図 1. プロファイル サマリ