仅对英特尔可见 — GUID: mwh1391807512881
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: mwh1391807512881
Ixiasoft
8.3.1. 常量缓存存储器
常量存储位于全局存储器中,但是内核在运行时将其加载到所有工作组共享的片上高速缓存(on-chip cache)中。 例如,如果您有全部工作组都使用的只读数据,并且常量缓冲区的数据大小适合存入常量cache,则将该数据分配到常量存储器中。常量cache最适合用于在多次内核调用之中保持不变的高带宽查找表。常量cache已针对高缓存命中性能进行了优化。
默认情况下,常量cache大小为16 kB。您可以通过将 -const-cache-bytes=<N> 选项包含在您的aoc命令中来指定常量cache的大小,其中<N>是以字节为单位的常量cache大小。
不同于具有额外硬件以容忍长时间存储器延迟的全局存储器访问,常量cache会因为未命中而遭受巨大的性能损失。如果您OpenCL™内核代码中的__constant自变量不能放入该高速cache中,您可以改用__global const自变量来获得更好的性能。如果主机应用程序写入已记载到常量cache的常量存储器中,则该高速缓存的数据将从常量cache中丢弃(即无效)。
有关 -const-cache-bytes=<N> 选项的更多信息,请参阅 Intel® FPGA SDK for OpenCL™ 编程指南中的配置常量存储器Cache的大小(-const-cache-bytes=<N>)小节。