因为最近需要搭建darknet 深度学习框架,所以需要配置一些环境,linux 系统,需要的配置为opencv+cuda+cudnn
在这里参考了
及
一.首先确保opencv 安装好
指令:pkg-config --modversion opencv
我的版本是:3.2.0
二. 安装DVIDIA 驱动
1.首先下载对应版本的驱动(一定要对应版本)
查看自己电脑的NVIDIA显卡信息 -指令:lspci | grep VGA
我的显卡信息: GeForce GT 730
2.寻找对应版本的驱动
查询及下载网址:https://www.nvidia.cn/Download/Find.aspx?lang=cn
我下载的版本是:NVIDIA-Linux-x86_64-455.38.run
3.查询自己电脑中的NVIDIA 版本信息,如果没有版本信息,直接进行下一步,如果存在版本信息,需要针对版本进行查询是否匹配,不匹配的话需要卸载。
NVIDIA 版本查询:nvidia-smi
卸载之前安装的NVIDIA驱动:sudo apt-get --purge remove nvidia-*
4.禁用nouveau ,这是ubuntu 自带的驱动程序
1)检查nouveau 指令:lsmod | grep nouveau(没被禁用的话,出现版本信息,禁用的话没变化)
2)未被禁用情况下:修改配置文件blacklist.conf,指令:sudo gedit /etc/modprobe.d/blacklist.conf
在最后的几行添加:
blacklist vga16fb
blacklist nouveau
blacklist rivafb
blacklist nvidiafb
blacklist rivatv
options nouveau modeset=0
保存后退出。
3)更新系统,$sudo update-initramfs -u;
重启系统:reboot
[本人在重启过程中遇到了开机卡死的问题,此问题很严重,最后的解决办法是:在未启动前按e,进入grub页面,在倒数第二段加上 nomodeset(一定要滑到最下面,在quiet splash那一段后面),F10保存退出后,等待开机,进入后
分辨率会下降,因为nouveau驱动被禁用了,而DVIDIA驱动未被安装]
4)验证nouveau是否被禁用,$lsmod | grep nouveau
如果没有任何输出,则表示禁用成功。
5 .安装NVIDIA驱动
1)cd指令进入到.run文件目录 例如我的是:1):cd ~/Download 2)切换到root 指令下安装 :su root 3)ls [会显示我的.run文件名NVIDIA-Linux-x86_64-455.38.run」
进行安装: ./NVIDIA-Linux-x86_64-455.38.run
3)验证驱动是否安装成功:nvidia-smi
三.安装CUDA
1.我的驱动对应的CUDA版本是11.1,所以我下载的是CUDA 11.1,下载地址:https://developer.nvidia.com/cuda-11.1.0-download-archive?下载哪个版本就将cuda-11.1.0更改就好了,进去后将各种版本信息选对,系统,版本,Ubuntu及版本信息。安装类型选择runfile 。
2.根据他里面给出的帮助命令(图片中灰色的部分),输入至命令行。
执行 sudo sh cuda_11.1.0_455.23.05_linux.run 文件时,会出现下图,因为自己已经安装了驱动,所以该上面的驱动一定要选择去掉,选择install
出现下图,表示安装成功。
(该步骤参考)
3.添加环境变量
1)vi ~/.bashrc
在文件末尾添加
export PATH="/usr/local/cuda-11.1/bin:$PATH" (注意里面要与自己的cuda 版本对应)
export LD_LIBRARY_PATH="/usr/lcoal/cuda-11.1/lib64:$LD_LIBRARY_PATH"
最后使其生效
source ~/.bashrc
2)终端输入
cd /usr/local/cuda-10.1/samples/1_Utilities/deviceQuery
sudo make
./deviceQuery
result =pass 成功。
{本人在这里出现问题,cuda 的驱动突然找不到,因此,需要重新装,
nvidia-smi 查看驱动是否还在(主要涉及到invidia重装问题)
卸载:$ sudo apt-get autoremove --purge nvidia-*
sudo /usr/bin/nvidia -uninstall
reboot}
查看cuda是否安装好 ,输入命令:nvcc --version
四.安装cudnn
参考
1)https://developer.nvidia.com/rdp/cudnn-archive
下载对应版本的cudnn ,(需要注册或登录),下载一个.tjz的文件
解压缩:解压缩到你需要的文件夹(我建立了一个文件夹,在终端打到该命令行,并解压缩)tar zxvf cudnn-11.1-linux-x64-v8.0.4.30.tgz
我将这个压缩包解压在了/NVIDIA_CUDA-11.1_Samples/cudnn目录下,那么该文件的绝对路径为/NVIDIA_CUDA-11.1_Samples/cudnn/cuda
2)将解压后的文件中的lib64文件夹关联到环境变量中。这一步很重要。
cd ~
sudo gedit .bashrc
3)进入include文件中:cd ~/NVIDIA_CUDA-11.1_Samples/cudnn/cuda/include
复制头文件:
sudo cp lib* /usr/local/cuda/lib64/
再将进入lib64目录下的动态文件进行复制和链接:
cd ~/NVIDIA_CUDA-11.1_Samples/cudnn/cuda/lib64
sudo cp lib* /usr/local/cuda/lib64/
最后运行sudo chmod a+r /usr/local/cuda/include/cudnn.h /usr/local/cuda/lib64/libcudnn*
cudnn安装完成