具有私有全局内核方法的C ++类

时间:2011-11-22 13:19:40

标签: c++ class cuda global

关于我遇到的链接和多个定义函数的另一个问题,我想简单地将我的cuda代码包装在单例类中。

一些事情

class Singleton{
public:
  __host__ void doSomething();
private:
  __global__ void someKernel();
};

显然只能使用设备方法,而上面给出“内存限定符的无效组合”。我想将我的代码包装在一个类中以获得更多结构化代码,但是如果我需要在外部放置每个内核,那就没那么有意义了。

之前在nvidias网站上提出了同样的问题,但没有答案 http://forums.nvidia.com/index.php?showtopic=176623

我也理解this指针的问题,但即使是静态方法也不能是全局的。

1 个答案:

答案 0 :(得分:1)

如果你想让代码看起来更有条理,你可以从一个方法调用你的内核,如果有帮助的话。