OpenCL错误代码-13(仅限AMD)

时间:2018-06-08 04:17:17

标签: opencl

我有一个opencl内核只能在AMD而不是NVIDIA上失败。它失败,错误代码为-13

在线,它给出了这样的解释:"如果将子缓冲区对象指定为作为缓冲区对象的参数的值,并且创建子缓冲区对象时指定的偏移量未与CL_DEVICE_MEM_BASE_ADDR_ALIGN对齐与队列关联的设备的值。"

我无法弄清楚这是什么意思。什么是CL_DEVICE_MEM_BASE_ADDR_ALIGN。当我调用createSubBuffer时,此例程失败。

1 个答案:

答案 0 :(得分:1)

CL_DEVICE_MEM_BASE_ADDR_ALIGN是clGetDeviceInfo的参数(有关文档,请参阅https://www.khronos.org/registry/OpenCL/sdk/1.0/docs/man/xhtml/clGetDeviceInfo.html,有关详细说明,请参阅https://forums.khronos.org/showthread.php/9134-Looking-for-a-better-explanation-of-CL_DEVICE_MEM_BASE_ADDR_ALIGN)。您需要查看该值以确定子缓冲区对齐。