码迷,mamicode.com
首页 > 系统相关 > 详细

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

时间:2019-07-26 21:38:52      阅读:791      评论:0      收藏:0      [点我收藏+]

标签:用户名   uid   ram   grep   http   conf   token   这一   src   

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

  上接《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-177.67-pkg2.run

sudo service lightdm start  

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

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

 

技术图片

 

  第二步,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 i ~/.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分钟左右。-----> 设置网络------->装驱动------>别的

 

 

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

标签:用户名   uid   ram   grep   http   conf   token   这一   src   

原文地址:https://www.cnblogs.com/carle-09/p/11252814.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!