dataflow和pipeline验证情况

1 没有dataflow没有pipeline,无法并行

  • Performance & Resource Estimates:

PS: '+' for module; 'o' for loop; '*' for dataflow

+-----------------------------------------+------+------+---------+-----------+----------+---------+------+----------+------+----+-----------+-----------+-----+

| Modules | Issue| | Latency | Latency | Iteration| | Trip | | | | | | |

| & Loops | Type | Slack| (cycles)| (ns) | Latency | Interval| Count| Pipelined| BRAM | DSP| FF | LUT | URAM|

+-----------------------------------------+------+------+---------+-----------+----------+---------+------+----------+------+----+-----------+-----------+-----+

|+ kernel_core | -| 0.57| 410| 1.367e+03| -| 411| -| no| -| -| 336 (~0%)| 467 (~0%)| -|

| + kernel_core_Pipeline_VITIS_LOOP_33_1 | -| 1.33| 202| 673.266| -| 202| -| no| -| -| 93 (~0%)| 118 (~0%)| -|

| o VITIS_LOOP_33_1 | -| 2.43| 200| 666.600| 2| 1| 200| yes| -| -| -| -| -|

| + kernel_core_Pipeline_VITIS_LOOP_50_1 | -| 1.34| 202| 673.266| -| 202| -| no| -| -| 93 (~0%)| 94 (~0%)| -|

| o VITIS_LOOP_50_1 | -| 2.43| 200| 666.600| 2| 1| 200| yes| -| -| -| -| -|

+-----------------------------------------+------+------+---------+-----------+----------+---------+------+----------+------+----+-----------+-----------+-----+

2 有dataflow没有pipeline,可以并行

  • Performance & Resource Estimates:

PS: '+' for module; 'o' for loop; '*' for dataflow

+----------------------+------+------+---------+---------+----------+---------+------+----------+------+----+-----------+-----------+-----+

| Modules | Issue| | Latency | Latency | Iteration| | Trip | | | | | | |

| & Loops | Type | Slack| (cycles)| (ns) | Latency | Interval| Count| Pipelined| BRAM | DSP| FF | LUT | URAM|

+----------------------+------+------+---------+---------+----------+---------+------+----------+------+----+-----------+-----------+-----+

|+ kernel_core* | -| 0.59| 205| 683.265| -| 206| -| dataflow| -| -| 339 (~0%)| 473 (~0%)| -|

| + Block_entry1_proc | -| 0.59| 205| 683.265| -| 205| -| no| -| -| 230 (~0%)| 305 (~0%)| -|

| + send_pkt1_data | -| 1.33| 203| 676.599| -| 203| -| no| -| -| 96 (~0%)| 126 (~0%)| -|

| o VITIS_LOOP_33_1 | -| 2.43| 201| 669.933| 3| 1| 200| yes| -| -| -| -| -|

| + send_pkt2_data | -| 1.34| 203| 676.599| -| 203| -| no| -| -| 96 (~0%)| 102 (~0%)| -|

| o VITIS_LOOP_50_1 | -| 2.43| 201| 669.933| 3| 1| 200| yes| -| -| -| -| -|

+----------------------+------+------+---------+---------+----------+---------+------+----------+------+----+-----------+-----------+-----+

3 有pipeline(在循环内部,作用域循环体)没有dateflow,不能并行

  • Performance & Resource Estimates:

PS: '+' for module; 'o' for loop; '*' for dataflow

+-----------------------------------------+------+------+---------+-----------+----------+---------+------+----------+------+----+-----------+-----------+-----+

| Modules | Issue| | Latency | Latency | Iteration| | Trip | | | | | | |

| & Loops | Type | Slack| (cycles)| (ns) | Latency | Interval| Count| Pipelined| BRAM | DSP| FF | LUT | URAM|

+-----------------------------------------+------+------+---------+-----------+----------+---------+------+----------+------+----+-----------+-----------+-----+

|+ kernel_core | -| 0.57| 410| 1.367e+03| -| 411| -| no| -| -| 336 (~0%)| 467 (~0%)| -|

| + kernel_core_Pipeline_VITIS_LOOP_33_1 | -| 1.33| 202| 673.266| -| 202| -| no| -| -| 93 (~0%)| 118 (~0%)| -|

| o VITIS_LOOP_33_1 | -| 2.43| 200| 666.600| 2| 1| 200| yes| -| -| -| -| -|

| + kernel_core_Pipeline_VITIS_LOOP_50_1 | -| 1.34| 202| 673.266| -| 202| -| no| -| -| 93 (~0%)| 94 (~0%)| -|

| o VITIS_LOOP_50_1 | -| 2.43| 200| 666.600| 2| 1| 200| yes| -| -| -| -| -|

+-----------------------------------------+------+------+---------+-----------+----------+---------+------+----------+------+----+-----------+-----------+-----+

4 有pipeline(在循环外部,作用域整个函数)没有dataflow,可以并行

  • Performance & Resource Estimates:

PS: '+' for module; 'o' for loop; '*' for dataflow

+-------------------+------+------+---------+---------+----------+---------+------+----------+------+----+------------+------------+-----+

| Modules | Issue| | Latency | Latency | Iteration| | Trip | | | | | | |

| & Loops | Type | Slack| (cycles)| (ns) | Latency | Interval| Count| Pipelined| BRAM | DSP| FF | LUT | URAM|

+-------------------+------+------+---------+---------+----------+---------+------+----------+------+----+------------+------------+-----+

|+ kernel_core | -| 0.57| 203| 676.599| -| 204| -| no| -| -| 1774 (~0%)| 13261 (1%)| -|

| + send_pkt1_data | II| 1.45| 201| 669.933| -| 200| -| yes| -| -| 745 (~0%)| 8154 (~0%)| -|

| + send_pkt2_data | II| 2.43| 201| 669.933| -| 200| -| yes| -| -| 682 (~0%)| 3770 (~0%)| -|

+-------------------+------+------+---------+---------+----------+---------+------+----------+------+----+------------+------------+-----+

基于上述验证,使用dataflow可以做到并行;对需要并行的函数使用pipeline也可以做到并行;如果两个都有肯定可以并行;如果两个都没有肯定不行

相关推荐
Leinwin1 分钟前
微软上线 Deep Research 预览版:o3+必应赋能研究自动化
运维·microsoft·自动化
不脱发的程序猿22 分钟前
SoC程序如何使用单例模式运行
linux·嵌入式
F36_9_30 分钟前
团队协作效率低影响项目进度,如何提升效率
运维
hie9889437 分钟前
CentOS环境搭建-快速升级G++版本
linux·python·centos
星辰云-39 分钟前
【超详细】CentOS系统Docker安装与配置一键脚本(附镜像加速配置)
linux·docker·centos
ajassi20001 小时前
开源 Arkts 鸿蒙应用 开发(六)数据持久--文件和首选项存储
linux·开源·harmonyos
厚道1 小时前
如何管理和优化内核参数?
linux
小立爱学习1 小时前
Linux 内存管理之address_space
linux·c语言
CodeWithMe1 小时前
【Note】Linux Kernel 之 内核架构、源码文件、API/ABI 、FHS
linux·运维·架构
SKYDROID云卓小助手1 小时前
无人设备遥控器之无线电频率篇
服务器·网络·单片机·嵌入式硬件·算法