有限差分計算 (3D) のデザイン例

お勧めの用途:

  • デバイス: 不明

  • Quartus®: バージョン 17.1

author-image

投稿者:

この例では、3D 有限差分ステンシルのみの計算の Open Computing Language (OpenCLTM) 実装を紹介します。order-k ステンシル計算では、各出力ポイントは 3k+1 個の入力ポイント (各方向に k 個の隣接ポイント) となります計算の構造上、異なる出力ポイントでのデータ再利用が非常に多いため、冗長なメモリーアクセスを最小限に抑えるための最適化が行われます。

この例のカーネルでは、データ再利用にスライディング・ボリューム計算パターン (スライディング・ウィンドウ・デザイン・パターンの 3D アナログ) を使用することで、従来の OpenCL 実装に比べてメモリー帯域幅の要件を削減しています。詳細については、サンプルパッケージをご覧ください。

3D 有限差分計算のパフォーマンス

機能

  • 効率的な 3D スライディング・ボリューム
  • 単一動作項目カーネル

ダウンロード

このデザイン例は、OpenCL™ デバイス (.cl) およびホスト・アプリケーション用のソースコードを提供します。ホスト・アプリケーションをコンパイルするため、Linux* パッケージには Makefile が含まれており、Windows* パッケージには Microsoft Visual Studio 2010 プロジェクトが含まれています。

以下のダウンロードは、この例のために提供されています。

このデザインの使用には、ハードウェア・リファレンス・デザイン・ライセンス契約の使用条件が適用されます。

ソフトウェア要件とハードウェア要件

このデザイン例には、以下のツールが必要です。

  • インテル® FPGA ソフトウェア・バージョン 17.1 以降
  • インテル® FPGA SDK for OpenCL™ バージョン 17.1 以降
  • Linux* の場合: GNU make および gcc
  • Windows* の場合: Microsoft Visual Studio 2010*

インテル® のデザインツールをダウンロードするには、OpenCL™ ダウンロードページをご覧ください。基盤となるオペレーティング・システムの要件は、インテル® FPGA SDK for OpenCL™ の要件と同じです。

OpenCL および OpenCL ロゴは Apple Inc. の商標であり、Khronos の許可を得て使用しています。

* 製品は Khronos 公開の仕様に基づいており、Khronos コンフォーマンス・テスト・プロセスに合格しています。現在のコンフォーマンス条件は、www.khronos.org/conformance で確認できます。