在OpenCL中使用内核导致另一个内核

时间:2012-11-13 15:15:10

标签: kernel opencl

我使用API​​的clCreateImage2D编写了卷积图像的代码,用于创建空间,clEnqueueWriteImage用于写入设备,read_imageui用于读取内核中的图像,write_imageui用于将图像写回主机。

现在我想使用卷积内核的结果,该内核指向另一个内核参数中的缓冲区。没有将结果移回主机和设备。这是可能的。

如果结果来回移动......我认为这将是昂贵的。

这方面的任何帮助都是非常宝贵的。

1 个答案:

答案 0 :(得分:7)

从Host的角度来看,您应该能够获取缓冲区对象,并将其作为参数传递给另一个内核。之后你就像对待任何其他缓冲区一样对待它。唯一的技巧是确保在创建缓冲区时,它具有足够的读写权限,可以输出和输入内核。