【发布时间】:2011-02-17 13:04:36
【问题描述】:
是否有可能在 OpenCL 内核中使用自定义 C++ - 类? 它应该像这样工作:
#include "element.cpp"
__kernel void do_something(__global element* input, __global element* output);
{
int index = get_global_id(0);
output[index] = input[index].update(index);
}
这很有趣,因为你可以在 element::update(int no) 中指定之后必须完成的工作。
我没有让它工作。这是 OpenCL 编译器告诉我的:
未知类型名称“类”
在 CUDA 中这是有效的。如果在 OpenCL 内核中使用对象的方法不起作用,还有其他想法吗?
提前感谢您的提示!
【问题讨论】:
-
CUDA 允许一些 C++ 功能,例如内核中的模板。