インテルのみ表示可能 — GUID: mwh1391806062635
Ixiasoft
3.1.2. チャネルおよびパイプの実行順序
カーネルプログラムの各チャネルまたはパイプ呼び出しは、FPGAパイプラインで実行される命令に変換されます。 チャネルコールまたはパイプ呼び出しの実行は、有効なWork-Itemがパイプラインを通じて実行される場合に発生します。 ただし、チャネルまたはパイプ呼び出しの間に制御またはデータ依存がない場合でも、それらの実行はカーネル・パイプラインで完全な命令レベルの並列性を達成できないことがあります。
次のコードの例を検討してみましょう。
2つのリードチャネルコールを持つカーネル | 2つのパイプ呼び出しを読み込んだカーネル |
---|---|
|
|
左側のコード例は、2つの読み出しチャネル呼び出しを行います。右側のコード例は、2つの読み出しパイプ呼び出しを行います。ほとんどの場合、カーネルはこれらのチャネル呼び出しまたはパイプ呼び出しを並列に実行します。ただし、チャネルおよびパイプ・コールの実行が順不同で行われる可能性があります。アウト・オブ・シーケンス実行は、C1からの読み出し動作が発生し、C0からの読み出し動作の前に完了することができることを意味します。