一、环境配置
几个注意事项先写在前面:
- 环境问题:一定要VS2019以上的!!!切记注意,目前VS2019以下已经不更新了,这里我就是用的2019,然后下面参考文档还是2015,反正过程没错,把VS版本改成2019即可;
- GPU及CUDA版本:我这边是NV RTX 3050Laptop 和 CUDA 11.8版本,建议CUDA版本别太低;
- 按照以下步骤在添加文件的时候没有NVIDIA的选项也没关系,创建后缀为".cu"的文件即可,其实是".c",核函数的格式是c语言的格式,而非C++,所以不能写在.cpp的文件中,不然会报错:error C2059: 语法错误:“<” 问题;
-
环境配置参考这篇基本没什么问题:https://blog.csdn.net/weixin_45317919/article/details/125116274。
-
如果生成依赖项时找不到CUDA,则参考这篇博文:https://blog.csdn.net/a7_aaaaa/article/details/122470988
二、核函数代码书写格式
关于核函数的书写格式,看这篇比较易懂:https://www.cxyzjd.com/article/sinat_33718563/79156147
浅显的说,就是在cu文件中
extern "C"
声明C语言函数,然后在这个函数里面调用核函数,且核函数也放在cu文件中。第二步是在cpp文件中也用extern "C"
声明cu中的C语言函数,然后用的时候直接用即可。
三、小结
cuda核函数编程环境配置和写法,其实不是很难,第一次接触可能觉得麻烦点,在核函数里面的多grid和多线程编程还是有点麻烦的,这个写的时候要特别注意,也可以啥都不用直接1,1
在调用核函数的时候,然后可以参考下以下链接:
https://blog.csdn.net/zhanghaijun2013/article/details/107018029
https://blog.51cto.com/u_15316847/5949054
https://blog.csdn.net/weixin_41449637/article/details/120200121
https://cloud.tencent.com/developer/article/2065713