カーネルのバイパス - 2023.2 日本語

AI エンジン カーネルおよびグラフ プログラミング ガイド (UG1079)

Document ID
UG1079
Release Date
2023-12-04
Version
2023.2 日本語

バイパス エンキャプスレーター コンストラクトは、カーネルを条件付きで実行するために使用されます。バイパスの制御はランタイム パラメーターを使用して実行します。

バイパス ランタイム パラメーター入力 bp0 はバイパスなし、1 はバイパスありです。制御パラメーターに加えて、バイパスされたカーネルまたはグラフの外部接続は、バイパス コンストラクト自身の外部ポートに接続されます。内部では、バイパス コンストラクトは、コンパイラによって自動的にバイパスされたカーネルまたはグラフに接続されます。

negate 修飾子は、入力制御のネゲートを示すために使用できます。デフォルトでは、この制御は同期 RTP です。非同期 RTP を使用するには、async 修飾子を使用します。

次に、必要なコード例を示します。

input_port control;
input_port in;
output_port out;
bypass b;
kernel k;
k = kernel::create(filter);
dimensions(k.in[0])={32};
dimensions(k.out[0])={32};
...
b = bypass::create(k);
connect<parameter> (control, async(negate(b.bp)));
connect(in, b.in[0]);
connect(b.out[0], out);
注記: バイパスが正しく動作するためには、入力と出力のバッファー ポートがタイプおよびサイズともに 1 対 1 で対応する必要があります。