如何在openCL中停止积极的编译器优化?

时间:2018-04-20 21:12:28

标签: optimization opencl global local

我试图将全局内存数组(opencl输入)复制到本地内存数组中,以减少opencl内核中数组的内存访问时间,因为我想经常从数组中读取数据。我这样复制(例如):

 __Kernel (__global float* inputs...) 
__local float in [64];

in[global_id] = inputs[global_id]

问题是当我编译内核以在板上运行它时,编译器会进行优化并且它似乎删除了本地内存,因为编译器在我写入本地内存(in)之后崩溃了。

编译器消息是:

  

编译器警告:积极的编译器优化:删除   不必要的存储到本地内存

即使我在aoc命令中使用参数-cl-opt-disable,它仍然是相同的,因为参数什么都不做。

那么有没有办法阻止编译器优化来解决这个问题?

0 个答案:

没有答案