インテル® FPGA SDK for OpenCL: カスタム・プラットフォーム・ツールキット・ユーザーガイド

ID 683085
日付 10/31/2016
Public
ドキュメント目次

1.4.1.1.1. エクスポートされたボード・パーティションの一般的な品質に関する考察

配置配線のパーティションを生成する際、 インテル® FPGA SDK for OpenCL™ コンパイルで予期しない結果が起こり得るエクスポートされたボード・パーティションで、いくつかのデザイン考慮事項を考察しなければなりません。 ボード・パーティションのベストな最適化の方法は、さまざまな異なる OpenCL カーネルで試すことです。

下のキャプチャーは、SDKのコンパイル結果の品質に影響を与え得るいくつかのパラメーターです。

  • Resources Used

    パーティションが OpenCL カーネルで使用できるリソースを最大化するために使用するリソースの数を最小化します。

  • Kernel Clock Frequency

    インテル® は、カーネルクロックが高いクロック制約 ( 例えば、 Stratix® Vデバイスでは350 MHz以上 ) を有することを推奨しています。カーネルクロックでクロックされるパーティションでのロジックの量は、比較的少量でなければなりません。このロジックは、最もシンプルな OpenCL カーネルであっても、カーネルクロックのスピードを制限すべきではありません。したがって、少なくともパーティション内ではカーネルクロックは高いクロック制約でなければなりません。

  • Host-to-Memory Bandwidth

    ホストからメモリーへの帯域幅は、ホスト・プロセッサーからアクセラレーター・カード上の物理メモリーまでの転送速度です。このメモリー帯域幅を測定するには、カスタム・プラットフォーム・ツールキットに含まれているホスト・アプリケーションをコンパイルして実行します。

  • Kernel-to-Memory Bandwidth

    カーネルからメモリーへの帯域幅は、OpenCL カーネルとグローバルメモリーの間で可能な最大転送速度です。

    このメモリー帯域幅を測定するには、カスタム・プラットフォーム・ツールキットの/tests/boardtest/hostディレクトリーに含まれているホストプログラムをコンパイルして実行します。

  • Fitter Quality of Results (QoR)

    デバイスのリソースを多く消費する OpenCL デザインが依然として高いクロック周波数が達成させるために、パーティションを FPGA のエッジに領域制約します。制約は、OpenCL カーネルロジックがデバイスの中心を占有でき、すべてのノードとの接続性も最も高くなります。

    大規模なデザインをテストコンパイルし、パーティション内の他のフィッターが引き起こすアーティファクトがカーネルコンパイルの QoR を妨げないようにします。

  • Routability

    パーティションが消費する配線リソースは、コンパイルした OpenCL デザインの配線に影響を与えます。カーネルは、FPGA 上のすべての DSP ( デジタル信号処理 ) ブロックまたはメモリーブロックを使用する場合がありますが、しかしながら、パーティションが使用する配線リソースでこれらのブロックの 1 つが配線不能になる可能性があります。この配線問題は、 Quartus® Primeプロジェクトのコンパイルがフィッティング・ステップで失敗する原因となります。したがって、すべての DSP およびメモリーブロックを使用するデザインでのパーティションのテストが不可欠です。