尝试使用CUDA 10.0,cudnn 7.4和OpenCV 3.4.0编译Darknet。使用Cmake 3.10.1生成VS 2017社区的项目文件。
使用CUDA 10.0编译的OpenCV。
将AlexeyAB / darknet分支用于Windows Darknet构建。
配置的Cmake以匹配README.md文件中引用的Cmake屏幕截图。屏幕截图如下:
<< img src =“ https://image.soinside.com/eyJ1cmwiOiAiaHR0cHM6Ly9pLnN0YWNrLmltZ3VyLmNvbS9pZGJ4Mi5wbmcifQ==” alt =“图像屏幕截图”>
为VS 2017社区配置的生成的生成文件,已打开的生成文件。
编译几乎立即失败并显示错误:
Description: Item 'src\activation_kernels.cu' Code Generation value is not in the expected format '[Arch],[Code]'
Project: darknet
File: CUDA 10.0.targets, line 235
我查看了文件的第235行,但这并不能帮助我更好地理解该错误。 VS并没有提供错误代码,并带有指向错误说明的链接,并且我没有找到任何有助于我理解该错误并进行故障排除的信息。
硬件是具有GTX 1060 GPU(计算模型6.1)的戴尔笔记本电脑。没有GPU的Darknet可以毫无问题地构建。
对解决此问题的任何见解都将不胜感激
我不确定这是否是我遇到的相同问题。我收到了相同的错误消息。原来,我是在调试模式下输入Device参数的,而编译是在发布模式下完成的。 CUDA C / C ++下正确的设备参数应为:
compute_30,sm_30;compute_35,sm_35;compute_37,sm_37;compute_50,sm_50;compute_52,sm_52;compute_60,sm_60;compute_61,sm_61;compute_70,sm_70;compute_75,sm_75;
删除不适合您的设备的内容。
我发布的错误内容是:
compute_30,sm_30,compute_35,sm_35
而不是
compute_30,sm_30;compute_35,sm_35;
分号是分隔符,而不是逗号。
希望这可以帮助您和其他人。