VSC アクセラレータ バッファーから xrt:bo
に移動するには、次のコードを使用します。
xrt::bo vpp::sc::get_xrt_bo(void* buf);
ヒント: このようなバッファーのライフタイムは、VSC ランタイム層によって完全に制御されることに注意してください。VSC バッファーのライフタイムは、
vpp_acc::alloc_buf
を使用して、send_while
ループの反復で割り当てられた時間から、対応する receive_all
反復の終了までの時間です。次に例を示します。
Acc::send_while([=]()->bool {
auto* Abuf = Acc::alloc_buf(Abp, size);
xrt::bo Abo = vpp::sc::get_xrt_bo(Abuf);
auto run = xo_kernel(Abo, ...);
run.wait();
...