首先参考下面几篇文章安装darknet,cuda的基础环境:
NVIDIA显卡驱动和CUDA驱动安装好之后,通过nvidia-smi命令验证安装效果,如果出现下面的界面,则证明安装OK
之后,就可以打开darknet/Makefile中的配置FLAG, GPU=1,OPENCV=1(事先安装OPENCV)
即可编译成功,但是此如如果打开CUDANN=1,则会报告如下错误:
所以,安装CUDA NN是我们不得不进行的一道工序,它独立于CUDA环境的安装,下面开始。
CUDANN安装地址在:
NVIDIA cuDNN | NVIDIA DeveloperNVIDIA cuDNN NVIDIA CUDA® 深度神经网络库 (cuDNN) 是经 GPU 加速的深度神经网络基元库。cuDNN 可大幅优化标准例程(例如用于前向传播和反向传播的卷积层、池化层、归一化层和激活层)的实施。 世界各地的深度学习研究人员和框架开发者都依赖 cuDNN 实现高性能 GPU 加速。借助 cuDNN,研究人员和开发者可以专注于训练神经网络及开发软件应用,而不必花时间进行低层级的 GPU 性能调整。cuDNN 可加速广泛应用的深度学习框架,包括 Caffe2、Chainer、Keras、MATLAB、MxNet、PyTorch 和 TensorFlow。如需获取经 NVIDIA 优化且已在框架中集成 cuDNN 的深度学习框架容器,请访问 NVIDIA GPU CLOUD 了解详情并开始使用。 下载 cuDNN https://developer.nvidia.com/zh-cn/cudnn
意外的是和安装CUDA和N卡驱动的白嫖不同,下载CUDANN还需要注册,胳膊宁不过大腿,还是先从了吧。
登陆成功后的界面,黄老板真帅。
之后就可以下载了:
因为我们安装的是CUDA11.5,所以我选择的版本是
cuDNN Runtime Library for Ubuntu18.04 x86_64 (Deb)
视需求可以下在别的资料,比如文档,由于我们是拿来使用而非基于它二次开发,所以不选择开发者版本。
下载过来的CUDA DEB包是这个样子,虽然是库,但也不小了,果然如其名,又粗又大。
安装:
安装后重开会话,重新编译darknet还是遇到同样的错误,查看DEB包内容,发现确实没有cudann.h文件。
怀疑是下错包了,选择名字顺眼的(带有Library)的重新下载:
cuDNN Library for Linux (x86_64)
下载后:
解压后,确实有我们需要的头文件:
安装过程极其简单,只需要手动将cuda目录中的include,lib64目录拷贝到/usr/local/cuda-11.5/include 和 /usr/local/cuda-11.5/lib64两个目录即可
之后编译:
执行推理:
这次推理用了449.553000ms,至此,cudaNN安装总算完成了。
MX250显卡算例水平和GT550M相当,总体在2.0T略高的水平,虽然和高端显卡没法比,但是比嵌入式端侧产品中的动辄零点几TFOPS的NPU相比,还是强大很多的。
数据来源:
CUDA GPU | NVIDIA Developer
https://developer.nvidia.com/zh-cn/cuda-gpus#compute配置深度学习环境:在Windows(Win10)中安装CUDA,CUDNN,Pytorch-GPU版