问题描述:有很多朋友希望自己的MFC程序中能使用CUDA。就一直搜索MFC项目配置CUDA的资料。在这里以个人的经验和理解向还在迷茫的朋友们说几点,看完这几点说明,相信大家不会再迷茫。
1、首先微软提供过的各种项目模版只是简化了我们的开发时间,它的实质还是C或者C++语言。所以我们只要把神马MFC项目理解为普通的C\C++项目就可以了。
2、基于第一点,我们应该做些什么那?只要在我们的MFC项目下按照一般C\C++程序添加CUDA代码就可以了。这一点我们应该思考,添加了代码就可以了吗?当然不可以!应该思考一下文件的编译过程,在没有指定编译器的情况下你的CUDA程序怎么可能被正确编译那?你必须选择.cu文件的编译规则!如果你使用runtime,你要添加自定义编译规则,然后修改你的cu文件的属性,告诉VS你的cu问价是谁来编译的。
3、根据nvcc的编译规则,cu文件首先会被编译,然后生成一大堆的obj文件,然后是微软的编译器开始工作,他编译了剩下的程序。然后是连接器,它连接了所有obj,lib。然后你如果想执行,执行就是了。
4、如果大家觉得这种方法不可靠,完全可以把cuda的程序写成DLL的,然后在大家想使用CUDA的程序中添加lib、dll。
以上是我个人理解,如有可以探讨的问题,可以评论,我会及时做出回答。
http://blog.csdn.net/bendanban/article/details/7606116