プロファイリングおよび最適化

SDAccel™ 環境では、コンパイル中にシステムおよびカーネルのリソースとパフォーマンスに関するさまざまなレポートが生成されます。エミュレーションおよびシステム モードのコンフィギュレーションの両方で、アプリケーションの実行中にはプロファイリング データも収集されます。次のようなレポートが生成されます。

  • ホストおよびデバイスのタイムライン イベント
  • OpenCL™ API の呼び出しシーケンス
  • カーネルの実行シーケンス
  • AXI トランザクションを含む FPGA トレース データ
  • カーネルの開始および停止信号

これらのレポートとプロファイリング データは、アプリケーションのパフォーマンスのボトルネックを特定し、デザインを最適化してパフォーマンスを向上するために使用できます。

アプリケーションの最適化には、アプリケーション ホスト コードとハードウェアでアクセラレーションされるカーネルの両方の最適化が必要です。ホスト コードはデータ転送とカーネル実行がスムーズに実行されるように最適化する必要があり、カーネルではパフォーマンスとリソース使用量が適切なものになるよう最適化する必要があります。

SDAccel でアルゴリズムを最適化する際には、システムのリソース使用量とパフォーマンス、カーネル最適化、ホスト最適化、および PCIe® 帯域幅最適化の 4 つのエリアがあります。次の SDAccel レポートおよびグラフィカル ツールは、これらのエリアをプロファイリングおよび最適化するのに役立ちます。

  • システム見積もり
  • 設計ガイダンス
  • HLS レポート
  • プロファイル サマリ
  • アプリケーション タイムライン
  • 波形ビューおよびライブ波形ビューアー

SDAccel GUI または xocc/makefile フローでアクティブ ビルドを実行すると、レポートが自動的に生成されます。

3 つのビルド コンフィギュレーションの対して個別のレポート セットが生成され、該当するレポート ディレクトリに保存されます。

重要: 高位合成 (HLS) レポートおよび HLS ガイダンスは、C および OpenCL カーネルのハードウェア エミュレーションおよびシステム ビルド コンフィギュレーションに対してのみ生成され、RTL カーネルには生成されません。

プロファイル サマリおよびアプリケーション タイムライン レポートは、3 つのビルド コンフィギュレーションすべてに対して生成され、デフォルトのアプリケーション サブディレクトリに保存されます。

レポートはウェブ ブラウザーまたは SDAccel GUI のスプレッドシート ビューアーで表示できます。SDx™ 統合設計環境からこれらのレポートを開くには、[Assistant] ビューでレポートをダブルクリックします。

この後のセクションで、さまざまなレポートおよびグラフィカル表示ツールについて説明し、デザインのプロファイリングおよび最適化に使用する方法を示します。各レポートの詳細、最適化手順、およびコーディング ガイドラインは、『SDAccel 環境プロファイリングおよび最適化ガイド』 を参照してください。