因为最近需要搭建darknet 深度学习框架,所以需要配置一些环境,linux 系统,需要的配置为opencv+cuda+cudnn

在这里参考了

一.首先确保opencv 安装好

指令:pkg-config --modversion opencv

我的版本是:3.2.0

cuda 查看GPU_深度学习

二. 安装DVIDIA 驱动

1.首先下载对应版本的驱动(一定要对应版本)

查看自己电脑的NVIDIA显卡信息 -指令:lspci | grep VGA

cuda 查看GPU_linux_02

我的显卡信息: GeForce GT 730

2.寻找对应版本的驱动

查询及下载网址:https://www.nvidia.cn/Download/Find.aspx?lang=cn

cuda 查看GPU_cuda_03

 

我下载的版本是: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 查看GPU_cuda 查看GPU_04

三.安装CUDA

1.我的驱动对应的CUDA版本是11.1,所以我下载的是CUDA 11.1,下载地址:https://developer.nvidia.com/cuda-11.1.0-download-archive?下载哪个版本就将cuda-11.1.0更改就好了,进去后将各种版本信息选对,系统,版本,Ubuntu及版本信息。安装类型选择runfile 。

 

cuda 查看GPU_cuda 查看GPU_05

2.根据他里面给出的帮助命令(图片中灰色的部分),输入至命令行。

执行 sudo sh  cuda_11.1.0_455.23.05_linux.run 文件时,会出现下图,因为自己已经安装了驱动,所以该上面的驱动一定要选择去掉,选择install

cuda 查看GPU_ubuntu_06

出现下图,表示安装成功。

cuda 查看GPU_ubuntu_07

(该步骤参考)

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

cuda 查看GPU_linux_08

result =pass 成功。

{本人在这里出现问题,cuda 的驱动突然找不到,因此,需要重新装,

nvidia-smi 查看驱动是否还在(主要涉及到invidia重装问题)

卸载:$ sudo apt-get autoremove --purge nvidia-*

sudo /usr/bin/nvidia -uninstall

reboot}

查看cuda是否安装好 ,输入命令:nvcc --version

cuda 查看GPU_cuda 查看GPU_09

四.安装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安装完成