用于主机和设备代码的CUDA和C++

888*_*888 3 c c++ cuda

几周前我开始将CUDA集成到我的C++应用程序中.我一直在研究有关集成CUDA和C++的研究.但是,我仍然对这个话题感到不舒服.

有人可以帮助我根据最新的Toolkit 3.2或4.0 RC澄清一些问题吗?

  1. 它说费米在费米的白皮书中完全支持C++.这是否意味着它在主机和设备代码中只支持C++,或者仅仅是主机代码?

  2. 我可以在内核代码中使用哪种C++特性?我知道模板是支持的.类或结构怎么样?

  3. 我可以将用户定义的类实例(其中包含一些指向设备内存的指针)传递到内核中,并在内核代码中调用其成员函数吗?课程和结构有什么不同吗?

任何帮助表示赞赏!谢谢!

kar*_*lip 6

  1. 你的主机已经支持C++了,不是吗?但现在GeForce 400系列(代号Fermi)支持设备上的C++代码.

  2. 类也有一些限制.见附录d中的编程指南了解详情.

  3. 您可以传递该类的引用.检查编程指南的D.6.2部分.

通常,附录D显示了受支持的C++构造和代码片段.值得一读.