使用CL_MEM_READ_WRITE和CL_MEM_READ标志创建内存的读取速度之间的差异

时间:2015-07-03 14:09:42

标签: opencl

在第一阶段的项目中,我生成一些顶点然后在第二阶段我读取这些顶点然后创建连接数组。对于我的顶点,我使用了CL_MEM_READ_WRITE。我想知道如果我在第一阶段使用CL_WRITE内存然后将其复制到第二阶段的另一个CL_READ内存中,我会有性能提升吗?因为可能每个人都有自己的优化来获得最大的性能。

2 个答案:

答案 0 :(得分:3)

CL_CREATEBUFER的第二个参数中传递的标志仅指定内核端如何访问内存空间。

答案 1 :(得分:1)

可能不是。我希望缓冲区副本比任何优化都要昂贵得多。

另外,我查看了AMD APP OpenCL编程指南,在使用READ_ONLYWRITE_ONLY缓冲区时,我没有找到任何关于优化的指示。

我的理解是访问标志仅供OpenCL运行时使用,以决定何时需要在不同的内存空间/区域之间复制缓冲区数据。