プロファイル サマリには、ホスト アプリケーションおよびカーネルに関する有益な統計が多数含まれます。このレポートには、アプリケーションの機能的なボトルネックの概要が示されます。次の表に、プロファイル サマリ レポートの説明を示します。
Settings
レポートおよび XRT のコンフィギュレーション設定を表示します。
Summary
デバイスの実行時間、デバイスの消費電力を含む、サマリ統計を表示します。
Kernels & Compute Units
[Kernel Execution] セクションは、スケジューリングおよび実行されたすべてのカーネル関数のプロファイル データ サマリを表示します。
名前 | 説明 |
---|---|
Kernel | カーネル名 |
Enqueues | カーネルがエンキューされる回数。カーネルが 1 回のみエンキューされる場合は、この後の統計はすべて同じです。 |
Total Time | すべてのエンキューの合計実行時間 (OpenCL API 実行モデルで START から END まで測定) (ms) |
Minimum Time | すべてのエンキューの最短実行時間 |
Average Time | カーネルの平均実行時間 (ms) (合計時間) / (エンキュー数) |
Maximum Time | すべてのエンキューの最長実行時間 (ms) |
[Top Kernel Execution] セクションは、最上位カーネル関数のプロファイル データ サマリを表示します。
名前 | 説明 |
---|---|
Kernel | カーネル名 |
Kernel Instance Address | カーネル インスタンスのホスト アドレス (16 進数) |
Context ID | ホストのコンテキスト ID |
Command Queue ID | ホストのコマンド キュー ID |
Device | カーネルが実行されたデバイス名 (フォーマット:<device>-<ID> ) |
Start Time | 実行の開始時間 (ms) |
Duration | 実行期間 (ms) |
[Compute Unit Utilization] セクションは、デバイス上の計算ユニットすべてのサマリ プロファイル データを表示します。
名前 | 説明 |
---|---|
Compute Unit | 計算ユニット名 |
Kernel | 計算ユニットが関連付けられているカーネル |
Device | デバイスの名前 (フォーマット: <device>-<ID> ) |
Calls | 計算ユニットが呼び出される回数 |
Dataflow Execution | CU がデータフローを使用して実行されているかを指定 |
Max Parallel Executions | データフロー領域での実行回数 |
Dataflow Acceleration | データフロー実行によるパフォーマンスの向上 |
CU Utilization (%) | カーネルの合計実行時間のうち CU で使用される時間の割合 |
Total Time | すべての呼び出しの合計実行時間 (ms) |
Minimum Time | すべての呼び出しの最短実行時間 (ms) |
Minimum runtime of all calls | (合計時間) / (ワーク グループ数) |
Maximum Time | すべての呼び出しの最長実行時間 (ms) |
Clock Frequency | 該当アクセラレータに使用するクロック周波数 (MHz) |
[Compute Unit Running Times & Stalls] セクションは、デバイス上の計算ユニットの実行時間およびストールのプロファイル サマリ データを表示します。
名前 | 説明 |
---|---|
Compute Unit | 計算ユニット名 |
Running Time | 計算ユニットが実行される合計時間 (µs) |
Intra-Kernel Dataflow Stalls (%) | カーネル内ストリームにより計算ユニットがストールしている時間の割合。 |
External Memory Stalls (%) | 外部メモリ アクセスにより計算ユニットがストールしている時間の割合 |
Inter-Kernel Pipe Stalls (%) | カーネル間パイプ アクセスにより計算ユニットがストールしている時間の割合。 |
Kernel Data Transfers
[Data Transfer] セクションは、カーネルからグローバル メモリへのデータ転送を表示します。
名前 | 説明 |
---|---|
Compute Unit Port | 計算ユニット/ポート名 |
Kernel Arguments | このポートに接続されるカーネル引数のリスト |
Device | デバイス数 (フォーマット: <device>-<ID> ) |
Memory Resources | このポートでアクセスされるメモリ リソース |
Transfer Type | カーネル データ転送のタイプ |
Number of Transfers | カーネル データ転送数 (AXI トランザクション数) 注記: printf 転送が含まれる場合があります。
|
Transfer Rate | カーネル データ転送レート (MB/s) 転送レート = (合計バイト数) / (合計 CU 実行時間) 合計 CU 実行時間は CU がアクティブな実行時間 |
Avg Bandwidth Utilization (%) | カーネル データ転送の平均帯域幅 帯域幅使用率 (%) = (100 * 転送レート) / (0.6 * 論理的な最大レート) |
Avg Size | カーネル データ転送の平均帯域幅 (KB) 平均サイズ (KB) = (合計 KB) / (転送数) |
Avg Latency | カーネル データ転送の平均レイテンシ (ns) |
[Top Data Transfer] セクションは、カーネルからグローバル メモリへの最上位データ転送を表示します。
名前 | 説明 |
---|---|
Compute Unit | 計算ユニット名 |
Device | デバイス名 |
Number of Transfers | 書き込みおよび読み出しのデータ転送数 |
Avg Bytes per Transfer | カーネル データ転送の平均バイト数 平均バイト数 = (合計バイト数) / (転送数) |
Transfer Efficiency (%) | カーネル データ転送の効率: 効率 = (平均バイト数) / min((メモリ バイト幅 * 256), 4096) |
Total Data Transfer | カーネルで転送された合計データ量 (MB): 合計データ量 = (書き込みの合計量) + (読み出しの合計量) |
Total Write | カーネルで書き込まれた合計データ量 (MB) |
Total Read | カーネルで読み出された合計データ量 (MB) |
Total Transfer Rate | 平均合計データ転送レート (MB/s): 合計転送レート = (合計データ転送) / (合計 CU 実行時間) 合計 CU 実行時間は CU がアクティブな実行時間 |
[Data Transfer Streams] セクションは、データ転送ストリームを表示します。
名前 | 説明 |
---|---|
Master Port | マスター計算ユニットおよびポートの名前 |
Master Kernel Arguments | このポートに接続されるカーネル引数のリスト |
Slave Port | スレーブ計算ユニットおよびポートの名前 |
Slave Kernel Arguments | このポートに接続されるカーネル引数のリスト |
Device | デバイス数 (フォーマット: <device>-<ID> ) |
Number of Transfers | ストリーム データ パケット数 |
Transfer Rate | ストリーム データ転送レート (MB/s) 転送レート = (合計バイト数) / (合計 CU 実行時間) 合計 CU 実行時間は CU がアクティブな実行時間 |
Avg Size | カーネル データ転送の平均帯域幅 (KB) 平均サイズ (KB) = (合計 KB) / (転送数) |
Link Utilization (%) | リンク使用率 (%): リンク使用率 = 100 * (リンク Busy サイクル数 - リンク ストール サイクル数 - リンク Starve サイクル数) / (リンク Busy サイクル数) |
Link Starve (%) | リンク Starve の割合 (%): リンク Starve の割合 = 100 * (リンク Starve サイクル数 / (リンク Busy サイクル数) |
Link Stall (%) | リンク ストールの割合 (%): リンク ストールの割合 = 100 * (リンク ストール サイクル数 / (リンク Busy サイクル数) |
Host Data Transfers
[Top Memory Writes] セクションは、 PCI Express® リンクを介したホストとデバイス メモリ間のすべての書き込み転送のプロファイル データを表示します。
名前 | 説明 |
---|---|
Buffer Address | バッファーのアドレス ロケーション |
Context ID | ホスト上での OpenCL コンテキスト ID |
Command Queue ID | ホスト上での OpenCL コマンド キュー ID |
Start Time | 書き込み操作の開始時間 (ms) |
Duration | 書き込み操作の時間 (ms) |
Buffer Size | 転送されたデータ量 (KB) |
Writing Rate | データ転送レート (MB/s): (バッファー サイズ)/(時間) |
[Top Memory Reads] は、 PCI Express® リンクを介したホストとデバイス メモリ間のすべての読み出し転送のプロファイル データを表示します。
名前 | 説明 |
---|---|
Buffer Address | バッファーのアドレス ロケーション |
Context ID | ホストのコンテキスト ID |
Command Queue ID | ホストのコマンド キュー ID |
Start Time | 読み出し操作の開始時間 (ms) |
Duration | 読み出し操作の時間 (ms) |
Buffer Size | 転送されたデータ量 (KB) |
Reading Rate | データ転送レート (MB/s): (バッファー サイズ) / (時間) |
[Data Transfer] セクションは、ホストからグローバル メモリへのデータ転送を表示します。
名前 | 説明 |
---|---|
Context:Number of Devices | コンテキスト ID およびコンテキスト内のデバイス数 |
Transfer Type | カーネル ホスト転送のタイプ |
Number of Buffer Transfers | ホスト バッファー転送数 注記: printf 転送が含まれる場合があります。
|
Transfer Rate | ホスト データ転送レート (MB/s) 転送レート = (合計バイト数) / (合計時間 (µs)) |
Avg Bandwidth Utilization (%) | ホスト バッファー転送の平均帯域幅: 帯域幅使用率 (%) = (100 * 転送レート) / (論理的な最大レート) |
Avg Size | ホスト バッファー転送の平均サイズ (KB) 平均サイズ (KB) = (合計 KB) / (転送数) |
Total Time | ホスト バッファー転送の合計時間 (ms) |
Avg Time | ホスト バッファー転送の平均時間 (ms) |
API Calls
ホスト アプリケーションで実行されるすべての OpenCL ホスト API 関数呼び出しのプロファイル データを表示します。上部には、合計時間に対する API 呼び出しの時間の割合が棒グラフで示されます。
名前 | 説明 |
---|---|
API Name | API 関数の名前 (例: clCreateProgramWithBinary 、clEnqueueNDRangeKernel ) |
Calls | ホスト アプリケーションからこの API が呼び出された回数 |
Total Time | すべての呼び出しの合計実行時間 (ms) |
Minimum Time | すべての呼び出しの最短実行時間 (ms) |
Average Time | 平均時間 (ms) (合計時間) / (呼び出し回数) |
Maximum Time | すべての呼び出しの最長実行時間 (ms) |
Device Power
デバイスの電源のプロファイルを表示します。
名前 | 説明 |
---|---|
Power Used By Platform | データセンター アクセラレータ カードの 3 つの電源レールのグラフを表示します。
|
Temperature | 温度測定値が 0 以外のデバイスごとに 1 つのチャートが作成されます。温度センサーごとに 1 行ずつ表示されます。単位は ℃ です。 |
Fan Speed | ファン速度が 0 以外のデバイスごとに、1 つのチャートが作成されます。ファン速度は RPM 単位で測定されます。 |
Kernel Internals
[CU Runtime and Stalls] セクションは、計算ユニットの実行時間 (µs) と、ストール時間の実行時間に対する割合を表示します。
名前 | 説明 |
---|---|
Compute Unit | 計算ユニットのインスタンス名 |
Running Time | CU の合計実行時間 (µs) |
Intra-Kernel Dataflow Stalls (%) | カーネル間のデータ ストリーミング中にストールした時間の実行時間に対する割合 |
External Memory Stalls (%) | CU 外のメモリ転送でストールした時間の実行時間に対する割合 |
Inter-Kernel Pipe Stalls (%) | CU 外とのデータ ストリーミング中にストールした時間の実行時間に対する割合 |
[CU Port Data Transfers] セクションは、計算ユニットの特定のポートでのデータ転送を表示します。
名前 | 説明 |
---|---|
Port | 計算ユニットのポート名 |
Compute Unit | 計算ユニットのインスタンス名 |
Write Time | ポート上でのデータ書き込み合計時間 (µs) |
Outstanding Write (%) | 実行時間で書き込み処理に使用された割合 |
Read Time | ポート上でのデータ読み出し合計時間 (µs) |
Outstanding Read (%) | 実行時間で読み出し処理に使用された割合 |
[Functional Port Data Transfers] セクションは、計算ユニットの関数ポートのデータ転送を表示します。
名前 | 説明 |
---|---|
Port | ポート名 |
Function | 関数名 |
Compute Unit | 計算ユニット名 |
Write Time | ポートに待機中の書き込みがあった合計時間 (µs) |
Outstanding Write (%) | ポートに待機中の書き込みがあった時間の割合 |
Read Time | ポートに待機中の読み出しがあった合計時間 (µs) |
Outstanding Read (%) | ポートに待機中の読み出しがあった時間の割合 |
[Functions] セクションは、計算ユニットの実行時間およびストールを表示します。
名前 | 説明 |
---|---|
Compute Unit | 計算ユニット名 |
Function | 関数名 |
Running Time | 関数が実行される合計時間 (ms) |
Intra-Kernel Dataflow Stalls | カーネル内ストリームにより関数がストールしている時間の割合 (ms) |
External Memory Stalls | 外部メモリ アクセスにより関数がストールしている時間の割合 (ms) |
Inter-Kernel Pipe Stalls | カーネル間パイプ アクセスにより関数がストールしている時間の割合 (ms) |
Shell Data Transfers
[DMA Data Transfer] セクションは、DMA データ転送を表示します。
名前 | 説明 |
---|---|
Device | デバイス数 (フォーマット: <device>-<ID> ) |
Transfer Type | データ転送のタイプ |
Number of Transfers | データ転送数 (AXI トランザクション数) |
Transfer Rate | データ転送レート (MB/s): 転送レート = (合計バイト数) / (合計時間 (µs)) |
Total Data Transfer | 転送されるデータの合計量 (MB) |
Total Time | データ転送の合計時間 (ms) |
Avg Size | データ転送の平均サイズ (KB) 平均サイズ (KB) = (合計 KB) / (転送数) |
Avg Latency | データ転送の平均レイテンシ (ns) |
DMA バイパスおよびグローバル メモリからグローバル メモリへのデータ転送については、上記の [DMA Data Transfer] 表を参照してください。
NoC Counters
[NoC Counters] には、[NoC Counters Read] および [NoC Counters Write] が表示されます。これらのセクションは、0 以外の NoC カウンター データがある場合にのみ表示されます。
各セクションには、転送レートと遅延の折れ線グラフとサマリ データを含む表があります。グラフには複数の NoC カウンターを含めることができるため、表の [Chart] 列のチェック ボックスを使用してカウンターのオン/オフを切り替えることができます。
デザインによっては、NoC カウンターを CU ポートに関連付けることができます。この場合、CU ポートが表に表示され、選択すると、システム ダイアグラム、プロファイル サマリ、および CU ポートを選択可能なオブジェクトとして含むその他のビューにクロスプローブされます。
名前 | 説明 |
---|---|
Name | NoC ポート名 |
Traffic Class | トラフィック クラスのタイプ |
Requested QoS | QoS (MB/s): 要求されたサービス品質 (MB/s) |
Min Transfer Rate | 最小データ転送レート (MB/s) |
Avg Transfer Rate | 平均データ転送レート (MB/s) |
Max Transfer Rate | 最大データ転送レート (MB/s) |
Avg Size | データ転送の平均サイズ (KB) 平均サイズ (KB) = (合計 KB) / (転送数) |
[Min Latency] | データ転送の最小レイテンシ (ns) |
[Avg Latency] | データ転送の平均レイテンシ (ns) |
[Max Latency] | データ転送の最大レイテンシ (ns) |
AI Engine Counters
AI エンジン カウンターは、0 以外の AI エンジン カウンター データがある場合に表示されます。AI エンジン カウンターの設定に互換性がない場合、このセクションには、設定がパフォーマンス プロファイリングをサポートしていないことを示すメッセージが表示されます。
このセクションには、アクティビティ時間と使用率の折れ線グラフとサマリ データを含む表があります。使用率チャートは、ストール プロファイリングが有効になっている場合にのみ使用できます。
グラフには複数の AI エンジン カウンターを含めることができるため、表の [Chart] 列のチェック ボックスを使用してカウンターのオン/オフを切り替えることができます。
タイルは、AI エンジン アレイ ビューおよびグラフ ビューにクロスプローブできるようになります。
名前 | 説明 |
---|---|
Tile | AI エンジン タイル [列、行] |
Active Time (ms) | このタイルがアクティブだった時間 (ms) |
Stall Time (ms) | このタイルがアクティブでも停止していた時間 (ms) |
Stall Time (%) | このタイルがアクティブでも停止していた時間の割合 (%) |
Active Utilization (ms) | このタイルがアクティブでも停止していなかった時間 (ms) |
Active Utilization (%) | このタイルがアクティブでも停止していなかった時間の割合 (%) |
Clock Frequency (MHz) | AI エンジン タイルに使用されるクロックの周波数 (MHz) |