FPGA 向けのコンパイルが特殊である理由
FPGA はいくつか点で CPU や GPU とは異なります。CPU や GPU と比較した大きな違いは、FPGA ハードウェア専用のデバイスバイナリーが必要なことです。これはほとんどの場合、計算集約型で時間がかかる処理です。FPGA のコンパイルが完了するまで数時間かかるのは通常の動作です。そのため、FPGA 開発向けに事前 (オフライン) カーネル・コンパイル・モードのみがサポートされます。FPGA ハードウェアのコンパイルには時間がかかるため、ジャストインタイム (オンライン) コンパイルは実用的ではありません。
コンパイル時間が長くなるほど、開発者の生産性は悪化します。インテル® oneAPI DPC++/C++ コンパイラーは、FPGA をターゲットとする開発設計をすばやく反復できるメカニズムを提供します。可能な限り完全な FPGA コンパイルにかかる手順を回避することで、CPU および GPU 開発に近い感覚で高速なコンパイル時間の恩恵を受けられます。
FPGA 手順の詳細については、インテル® FPGA 向けインテル® DPC++/C++ コンパイラー・ハンドブック (英語) を参照してください。