Run post-processing host code in parallel with F1 kernel

0

Hi
I have an application that needs some serious post-processing of the data output from a kernel running on the F1.
By breaking the data that needs to be processed into blocks, I want to run the post-processing host code in parallel with the kernel. (ie while kernel is working on block k, the host post-processing code is working on block k-1).
I have tried to implement this following the overlap_c example, however, from inserting timers in the code I only see serial operation of the post-processing code (although the IO overlaps with the kernel execution).
Can anyone point me to an example, as this must be a common problem?

Also, I can write the post-processing code as a (software) OpenCL kernel. Could I run hardware kernel(on the F1) and software kernel(on the vCPUs) , in Vitis, with the kernels communicating over streams?

質問済み 4年前307ビュー
1回答
0
承認された回答

Hello,

The overlap_c example shows how to overlap multiple requests from the host to the FPGA. This is expained in the header of the source code:
https://github.com/Xilinx/Vitis_Accel_Examples/blob/master/host/overlap/src/host.cpp#L39

If you are looking to overlap computation on the host and computation on the FPGa, a better example to look at would be this Lab:
https://github.com/Xilinx/SDAccel-AWS-F1-Developer-Labs/blob/master/modules/module_02/README.md
Part 2, Step 4 is where you will see a specific example of this. But I recommend that you start reading from the beginning of the lab.

回答済み 4年前

ログインしていません。 ログイン 回答を投稿する。

優れた回答とは、質問に明確に答え、建設的なフィードバックを提供し、質問者の専門分野におけるスキルの向上を促すものです。

質問に答えるためのガイドライン

関連するコンテンツ