软件环境:Windows10,OpenCV 3.4.2,CUDA 10.1,cuDNN 7.6.5.32,Visual Studio 2017
显卡:RTX 2060 6GB显存
参考博客:WIN10+YOLOv4,windows上完美执行YOLOv4目标检测
因为Boss的要求,我选择的是VS2017,而原帖选择的是VS2019
安装过程并不是很顺利,遇到了一些问题,记录一下。
1.安装CUDA遇到的问题
这里原作者安装的是CUDA 10.2,最先我也是装的10.2,但是出现了下图的错误
网上有帖子说取消勾选visual studio integration,但是考虑后面需要用VS编译,所以并没有采取这种方案。
更换CUDA 10.1过后成功安装了,猜测是可能是VS与CUDA版本匹配的问题?
2.VS2017编译遇到的问题
(1)这里与原贴不一样的地方,因为打开看到darknet是在VS2015下开发的
所以平台工作集最好选择无升级(V140)
(2)原贴中的2.3 修改darknet.vcxproj应该放在2.2 VS2019项目配置之前。
用任意编辑器打开darknet.vcxproj,搜素CUDA,把后面修改为自己的版本
如果不先修改darknet.vcxproj,可能出现项目属性里不存在
CUDA C/C++(这个属性很重要)
(3)最重要的部分来了。按照原帖的步骤完成后,开始编译,出现error MB372
nvcc fatal : Unsupported gpu architecture ‘compute_86’
我的显卡是RTX 2060算力是7.5,darknet里选项——》属性——》CUDA C/C++——》Device中code generation默认为compute_35,sm_35;compute_86,sm_86,所以编译出现了错误。
解决方法:删掉compute_86,sm_86或者将其改为自己显卡算力的数值。
3.编译完成
编译完成候会在./darknet/build/darknet/x64/下生成
接下来就可以使用命令行进行训练和测试了!