Ubuntu系统---安NVIDIA 驱动后 CUDA+cuDNN 安装

Ubuntu系统---安NVIDIA 驱动后  CUDA+cuDNN 安装

  --------------------------------------------@20190726---------------------------------------------------------------------------------------------

  上接《Ubuntu系统---NVIDIA 驱动安装》。预配置环境:Ubuntu16.04 + GTX2080Ti + CUDA10.0 + yolo v3+Opencv3.4.2

  这一步,紧接着“NVIDIA 驱动已安完”后的“CUDA安装”。根据Ubuntu16.04 + GTX2080T 在英伟达官网上选择合适的驱动,有很多版本可选这里选择了NVIDIA-Linux-x86_64-410.78.run 。没安装之前踩了很多坑,觉得有点难度,装完之后发现很简单,只是方法没找对。

  首先,在强调一下NVIDIA 驱动安装过程:

第一步:下载NVIDIA-Linux-x86_64-410.78.run

第二步,禁用nouveau
安装NVIDIA需要把系统自带的驱动禁用,打开文件:
sudo gedit /etc/modprobe.d/blacklist.conf

在文本最后添加以下内容:
blacklist nouveau
option nouveau modeset=0
命令窗口会提示warn,无视之。

保存退出,执行以下命令生效:
sudo update-initramfs -u

重启电脑后输入:
lsmod | grep nouveau
没有任何输出说明禁用成功。

第三步,进入tty。
按住CTRL+ALT+F2 进入命令行界面
Login : 安装ubuntu的用户名
紧接着输入密码

sudo service lightdm stop 
sudo init 3

cd setup //进入NVIDIA的.run文件目录下

sudo  ./NVIDIA-Linux-x86_64-410.93.run

sudo service lightdm start  

然后按Ctrl-Alt+F7即可恢复到图形界面。

sudo  reboot //按照提示安装完成,简单方法重启就好了     

 

另外,nouveau也可以这样禁用。

用vim编辑器打开(vim使用方法自行百度):
sudo vim /etc/modprobe.d/blacklist.conf

在该文件后添加以下几行:
blacklist vga16fb
blacklist nouveau
blacklist rivafb
blacklist rivatv
blacklist nvidiafb
并执行: sudo update
-initramfs -u 重启后执行: lsmod | grep nouveau Ubuntu系统登录界面变大,并且循环输入正确密码无法进入桌面的解决方案@https://blog.csdn.net/qq_36427732/article/details/80914653

 

 

 

 

  第二步,CUDA安装

  首先也是去官网上 下载和驱动对应的cuda文件https://developer.nvidia.com/cuda-toolkit-archive,需要注册一个账号。

一定要选择runfile.下载完成之后进入放runfile的文件夹,执行:sudo sh cuda_10.0.1.130_410.48_linux.run

然后,疯狂按空格/Enter键, 直到 100%。如果不按,它会一直保持0%。

第一次,傻傻不知道,就在那里等,然后重装两遍,试了其他方法无效,意外狂按就出来了。

还以为是GCC内核的问题,查的版本和说明文档不一致,掉坑里好久。目前先跳过了这一步,后续真用起来才知道与这一步有没有关系。

 

 

  上步骤完成后,进行环境配置:

环境变量的配置:
sudo gedit ~/.bashrc
末尾添加: export PATH
=/usr/local/cuda-10.0/bin:$PATH export LD_LIBRARY_PATH=/usr/local/cuda-10.0/lib64:/usr/local/cuda-10.0/extras/CUPTI/lib64:$LD_LIBRARY_PATH
重启计算机
测试CUDA安装结果: nvcc
--version
cd NVIDIA_CUDA
-10.0_Samples make cd /NVIDIA_CUDA-10.0_Samples/bin/x84_64/linux/release 执行./deviceQuery #如果显示的是一些关于GPU的信息,则说明安装成功了。

  

  第三步,cuDNN安装

   同样,也还是去官网上下载CUDA10.0对应的cuDNN版本,下载地址:https://developer.nvidia.com/rdp/cudnn-download

网上的教程,五花八门,这里选其中一个尝试,好用。

@https://blog.csdn.net/qq_39418067/article/details/87978848  下载1个文件 

cuDNN Libary for Linux

@https://blog.csdn.net/qq_33427431/article/details/89235639  下载4个文件

cuDNN Library for Linux(Power)
cuDNN Runtime Library for Ubuntu16.04 (Deb)
cuDNN Developer Library for Ubuntu16.04 (Deb)
cuDNN Code Samples and User Guide for Ubuntu16.04 (Deb)

@https://blog.csdn.net/wangzi11111111/article/details/90447326 下载2个文件

cuDNN Runtime Library for Ubuntu16.04 (Deb)、

cuDNN Developer Library for Ubuntu16.04 (Deb)

  本文参照@https://blog.csdn.net/qq_36362060/article/details/80739573

  下载完成之后解压到/home目录下,文件夹重命名为cudnn7,然后执行下面的命令进行安装:

#set_cuDnn.sh

#
!/bin/bash echo "remove libcudnn* file of /usr/local/cuda/lib64" sudo rm -rf /usr/local/cuda/lib64/libcudnn.s* #删除旧版本cudnn echo "copy cudnn.h to usr/local/cuda/include" #sudo cp /home/user_name/cudnn6/include/cudnn.h /usr/local/cuda/include #复制cudnn.h文件到/usr/local/cuda/include目录下,这里的user_name改为自己的用户名 sudo cp /home/u/cuda10.0/cuDNN/include/cudnn.h /usr/local/cuda/include #复制cudnn.h文件到/usr sudo chmod 777 -R /usr/local/cuda/include #对复制后的文件解除权限 echo "copy lib* to usr/local/cuda/lib64" sudo cp /home/u/cuda10.0/cuDNN/lib64/lib* /usr/local/cuda/lib64 #同上 sudo chmod 777 -R /usr/local/cuda/lib64 #同上 sudo ldconfig #对所有的复制和解除权限操作执行生效

# vim setupcudnn.sh #新建一个shell脚本文件,文件里面复制下面的内容进去 # 然后保存setupcudnn.sh文件的内容,并执行下面的命令进行安装: # sudo bash set_cuDnn.sh #执行setupcudnn.sh脚本中的命令,安装cudnn #
**注意:**这里将安装命令写成脚本文件的好处是,后面如果要进行其他cudnn版本的安装,只要稍加修改这个脚本,然后运行就可以迅速完成安装。例如要安装cudnn7版本,下载cudnn7,解压文件重命名为cudnn7,把脚本文件里的cudnn6修改为cudnn7,然后执行sudo bash setupcudnn.sh 就完成了安装。

 

如何查看CUDA版本和CUDNN版本

cuda一般安装在 /usr/local/cuda/ 路径下,该路径下有一个version.txt文档,里面记录了cuda的版本信息:
cat /usr/local/cuda/version.txt 即可查询

cudnn的信息在其头文件里:
cat /usr/local/cuda/include/cudnn.h | grep CUDNN_MAJOR -A 2  即可查询

   综上,基本环境算是完事儿了。接下来配置OpenCV3.4.2。

  记一下,每重装一次Ubuntu系统,等待过程大概是45分钟左右。-----> 设置网络------->装驱动------>别的

 

--------------------------------------------@20190802更新---------------------------------------------------------------------------------------------

---------------------------------------------解决“Ubuntu 系统循环登陆”问题--------------------------------------------------------------------

   刚开始装好ubuntu系统后,装完驱动重启进入系统,有出现过“进入Ubuntu 系统  停留在循环登陆界面”。因为刚装好系统,又是刚装完英伟达驱动重启出现的问题,所以毋庸置疑是安装英伟达驱动出现了问题。当时的解决方式是:重装系统+重装英伟达驱动。虽然解决了当时的问题,用了不几天,刚把其他环境搭好。昨天用系统,一切安好,下班正常关机了,一早开机又出现了“进入Ubuntu 系统  停留在循环登陆界面”。我合计昨日是正常工作,并没安装什么东西,这几天开关机也正常,首先排除应该不是驱动的问题。

  这次,先是网上搜罗了一圈解决方法,尝试了几个没解决问题,本能的反应是再重装系统,但是已经装好了好多环境,不愿意重装啊。借来了U盘,想把重要文件拷贝出来(PS时刻备份很重要)。还好,这时候我吱声了一句,资深人建议了一点,加上又在网上搜罗,多数都说是驱动问题,合计试试。卸载驱动,在重装驱动试试,万一好使,就不用重装系统了。结果OK OK OK。

     后面做详细的记录,这里略。

posted on 2019-07-26 20:50  WP的烂笔头  阅读(1820)  评论(0编辑  收藏  举报