仅对英特尔可见 — GUID: ewa1399053428262
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: ewa1399053428262
Ixiasoft
5. 分析(Profiling)您的内核来识别性能瓶颈
Intel® FPGA dynamic profiler for OpenCL™ 使用性能计数器来收集设计执行期间的kernel性能数据。该数据可使用 Intel® VTune Profiler。
提示: 如果您在寻找有关DPC++的Intel FPGA动态profiler的信息,则请参阅FPGA Optimization Guide for Intel® oneAPI Toolkits中的 Intel® FPGA Dynamic Profiler for DPC++部分。
考虑以下OpenCL kernel程序:
__kernel void add (__global int * a, __global int * b, __global int * c) { int gid = get_global_id(0); c[gid] = a[gid]+b[gid]; }
如图所示,Profiler Profiler instruments和connects性能计数器以菊花链的形式遍布于针对kernel程序生成的流水线中。然后主机通过这些计数器读取收集到的数据。例如,在基于PCI Express® (PCIe®)的系统中,主机通过PCIe控制寄存器访问(CRA)或者控制和状态寄存器(CSR)端口读取数据。
图 71. Intel® FPGA Dynamic Profiler for OpenCL™ : Performance Counters Instrumentation(性能计数器探测)
Work-item执行停顿可能出现在 Intel® FPGA SDK for OpenCL™ 流水线的不同阶段。具有大量存储器访问,或者加载和存储操作的应用程序可能会规律性停顿才能完成存储器传输。Profiler有助于识别导致内核流水线内大多数停顿的加载和存储操作或者通道访问。