我可以使用OpenCL分配设备内存并使用指向CUDA内存的指针吗?

时间:2015-04-16 08:52:20

标签: c++ memory cuda opencl

假设我使用OpenCL来管理内存(以便GPU / CPU之间的内存管理使用相同的代码),但我的计算使用优化的CUDA和CPU代码(不是OpenCL)。我还可以使用OpenCL设备内存指针并将它们传递给CUDA函数/内核吗?

2 个答案:

答案 0 :(得分:2)

AFAIK这是不可能的,但没有技术上的理由说明为什么你不能这样做。

NVIDIA可以构建OpenCL API的扩展,以便与CUDA互操作,就像Direct3D和OpenGL的互操作性规定一样。

答案 1 :(得分:0)

由于CUDA和OpenCL都可以与OpenGL互操作,因此您可以将其作为中间层进行探索。我成功地能够从OpenCL(作为图像)和CUDA访问相同的OpenGL纹理,因此您可能能够为数据缓冲区执行相同的操作(我不会对OpenGL表示形式的内容做出反应)虽然)。