仅对英特尔可见 — GUID: mwh1391806062635
Ixiasoft
产品终止通知
1. Intel® FPGA SDK for OpenCL™ Pro Edition最佳实践指南介绍
2. 查看您Kernel的report.html文件
3. OpenCL内核设计概念
4. OpenCL内核设计最佳实践
5. 分析(Profiling)您的内核来识别性能瓶颈
6. 提高单个Work-Item内核性能的策略
7. 提高NDRange内核数据处理效率的策略
8. 提高存储器访问效率的策略
9. 优化FPGA面积使用的策略
10. 优化英特尔 Stratix 10 OpenCL设计的策略
11. 提高主机应用程序性能的策略
12. Intel® FPGA SDK for OpenCL™ Pro版最佳实践指南存档
A. Intel® FPGA SDK for OpenCL™ Pro版最佳实践指南修订历史
仅对英特尔可见 — GUID: mwh1391806062635
Ixiasoft
4.1.2. 通道和管道的执行顺序
内核程序种的每个通道或管道调用都被转换成能在FPGA流水线中执行的指令。 如果有效的工作项通过管道执行,则执行通道调用或者管道调用。 然而,即使通道或管道调用之间无控制或数据依赖关系,它们的执行也可能无法实现内核流水线中完美的指令集并行。
请参考如下代码实例:
具有两个读取通道的内核 | 具有两个读取管道的内核 |
---|---|
|
|
左边的代码示例进行了两次读取通道调用。右边的代码示例进行了两次读取管道调用。大多数情况下,内核并行执行这些通道或管道调用;然而,通道和管道调用可能会乱序执行。乱序执行就意味着从c1的读取操作可以在从c0的读取操作之前发生并完成。