インテルのみ表示可能 — GUID: ewa1452797469857
Ixiasoft
インテルのみ表示可能 — GUID: ewa1452797469857
Ixiasoft
12.1.9. 外部メモリーと動作するOpenCLライブラリーの使用 (例2)
Example2.tgzターボールには、ライブラリー、カーネル、そしてホストシステムが含まれています。この例において、グローバルメモリーと通信するRTLコードは、カスタム・プラットフォームまたはリファレンス・プラットフォームに依存します。コンパイルが、Stratix® V Network Reference Platformに対応するボードをターゲットとしていることを確認してください。
インテルでは、RTLモジュールのcopyElement()およびsumOfElements() を、 インテル® FPGA SDK for OpenCL™オフライン・コンパイラーを使用し生成しました。 インテル® FPGA SDK for OpenCL™オフライン・コンパイラーはコードの追加入力を示します。
Example2.clカーネル・ソース・ファイルは2つのカーネルを含みます。カーネルtest6は、copyElement() RTL関数を呼び出すNDRangeカーネルであり、データを B[]からA[]へコピーしglobal_id+100をC[]に格納します。カーネルtest11は、RTL関数を使用する単一ワークアイテムのカーネルです。sumOfElements() RTL関数は、範囲[i, N]のA[]の要素の合計を確定し、残りをC[i]に追加します。
このデザイン例をコンパイルするには次の作業を実行します。
- OpenCLデザイン例のウェブページからexample2.tgzを入手します。
- 入手したデザイン例をローカル・ディレクトリーに解凍します。
- 解凍したデザイン例のトップレベルに位置するREADME.htmlファイルの指示に従います。
コンパイルされたホストプログラムを実行すると、次の出力が生成されます。
Loading example2.aocx ... Running test6 Launching the kernel test6 with globalsize=128 localSize=16 Loading example2.aocx ... Running test11 Launching the kernel test11 with globalsize=1 localSize=1 PASSED