复制OpenCL内核的正确方法是什么?

时间:2015-09-07 09:54:34

标签: opencl

似乎我可以通过从内核获取程序对象和内核名称来复制内核。然后我可以创建一个新的。

这是正确的方法吗?但它看起来并不那么好。

1 个答案:

答案 0 :(得分:2)

编辑:正确回答问题:是的,这是正确的方法,在CL 2.0或更早版本中没有其他方法。

CL代码创建的编译(因此,慢速步骤)在"程序"创建(clProgramBuild + clProgramLink)。

创建内核时。您只是创建一个包装对象:

  • 程序代码中函数的入口点
  • 输入+输出到该功能的参数
  • 一些记忆要记住所有上述呼叫之间的数据

这是一项应该几乎免费的简单任务。

这就是为什么最好有多个内核具有不同的输入参数。而不是单个内核,并且每个循环都会更改参数。