我正在用CUDA C实现一个排序和流压缩算法。然而,我刚刚意识到,要自己以良好的性能实现这些算法并不是那么简单。考虑到我正在处理矩阵,我不能使用CUDPP,所以,虽然我避免了它,但我将不得不使用推力库(我对C++一无所知)。
我一直在用C语言编程,我真的只想使用C++来处理推力,所以基本上我想知道我是否可以用C语言编写大部分代码,然后再使用少量的C++代码(我猜我必须使用“外部”函数),但我想确定这在CUDA中是否可行。
提前谢谢。
发布于 2011-05-20 19:24:08
在主代码端,推送很容易集成。尽管您可能认为您编译的任何.cu文件中的主机端代码都是C语言,但无论如何它都是使用C++编译器编译的(大多数CUDA内部依赖于C++特性进行编译)。所以您现在实际上是在C++中工作,而没有意识到这一点。
发布于 2011-05-20 19:25:10
是的,可能会使你的构建过程变得复杂,但除此之外一切都很好。我们一直使用它将一些CUDA函数包装成C++类(这才是真正的亮点),然后再用JNI包起来,以便在Java语言中使用。如果我们能做到,你也能做到!开始吧!
https://stackoverflow.com/questions/6071129
复制相似问题