我在opencl中引用变量时遇到了麻烦,因为没有明确的例子说明是否可以这样做。
我有一个变量“double foo”,我有一个指针“double * fooptr”。我希望指针保存foo的地址。这可能在OpenCL中吗?
double foo=//some value
double* fooptr;
fooptr=&foo;
我可以在OpenCL中执行此操作吗?
答案 0 :(得分:0)
指针在OpenCL中工作,但是您无法将指针从主机代码传递到客户端代码(在CL设备上运行的代码)。这是有道理的,因为你的GPU显然无法引用CPU的内存,因为它有自己的专用内存 - 它有一个完全不同的地址空间。
你想在哪里执行此操作?它应该在您的内核代码中运行良好。