要从 VSC 加速器缓冲器转至 xrt:bo
,请使用以下代码:
xrt::bo vpp::sc::get_xrt_bo(void* buf);
提示: 但请注意,此类缓冲器的寿命将完全受 VSC 运行时层控制。VSC 缓冲器的寿命从
send_while
循环边迭代中使用 vpp_acc::alloc_buf
分配该缓冲器开始截至对应的 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();
...