什么应该替换OpenCL内核中的“memcpy”?

时间:2011-04-13 17:13:03

标签: opencl c99 memcpy

扩展C99的OpenCL语言不提供memcpy功能。应该使用什么?

1 个答案:

答案 0 :(得分:4)

据我所知,OpenCL中没有类似的内容。 OpenCL没有提供像动态内存这样的概念,因此不需要这样的功能。

您可以使用for运行数组并按元素复制数据元素。但是,目标数组的大小是固定的,因为需要在编译时指定数组长度。

另一方面,OpenCL(和OpenGL作为一种来源)以更静态的方式定义。需要将数据提供给GPU,并且需要定义结果大小。 GPU计算预定义输出位置的输入。它并不意味着在GPU中创建更多进程,也不是为了动态分配动态内存而不是干扰主机正在执行它。