软硬件环境
- 系统版本:Ubuntu Desktop 18.04 LST
- 显卡型号:NVIDIA TITAN RTX
- CUDA版本:10.0.130_410.48
- cuDNN版本:7.6.5.32
CUDA官方下载地址
cuDNN官方下载地址 下载cuDNN需要有NVIDIA 开发者账号
Ubuntu安装NVIDIA驱动
1.下载并安装CUDA
进入官网,选择自己需要的 CUDA版本,Ubuntu建议也使用runfile格式
下载好后进行安装,出现非常长的用户协议,别按回车一页一页的跳,除非你想把这个协议看完,不然按到手指疼。直接按q退出
sudo sh cuda_10.0.130_410.48_linux.run
问你是否同意刚刚那非常长的的用户协议,肯定得同意,除非你不想安装了
Do you accept the previously read EULA?
accept/decline/quit: accept
问你要不要安装显卡驱动,建议使用独立下载的相应的显卡驱动安装,这个驱动是公用版的,而且不是最新的,可能有问题。
Install NVIDIA Accelerated Graphics Driver for Linux-x86_64 410.48?
(y)es/(n)o/(q)uit: n
问你要不要安装CUDA,这不废话吗?给你一个反悔的机会?
Install the CUDA 10.0 Toolkit?
(y)es/(n)o/(q)uit: y
CUDA的安装路径,回车即代表使用默认地址,你也可以输入你想指定的路径。
Enter Toolkit Location
[ default is /usr/local/cuda-10.0 ]:
是否建立软链接,一般选y。但如果你是安装多版本CUDA,而这是第二个,就可以自己决定要不要建立了。
Do you want to install a symbolic link at /usr/local/cuda?
(y)es/(n)o/(q)uit: y
要不要安装CUDA项目实例,一般选n,没啥用还占地方。
Install the CUDA 10.0 Samples?
(y)es/(n)o/(q)uit: n
安装完成
配置环境变量
# 执行命令
sudo vim ~/.bashrc
# 增加环境变量
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda/lib64
export CUDA_HOME=$CUDA_HOME:/usr/local/cuda
export PATH=$PATH:$CUDA_HOME/bin
# 使环境变量生效
source ~/.bashrc
验证安装是否成功、环境变量是否配置成功
# 执行命令
nvcc -V
# 出现以下内容即代表成功
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2018 NVIDIA Corporation
Built on Sat_Aug_25_21:08:01_CDT_2018
Cuda compilation tools, release 10.0, V10.0.130
2.下载并安装cuDNN
进入官网,选择CUDA对应的cuDNN版本,建议下载压缩包格式的。
下载好后,解压
tar -zxvf cudnn-10.0-linux-x64-v7.6.5.32.tgz
复制解压好的文件到对应的目录
sudo cp cuda/include/cudnn.h /usr/local/cuda/include
sudo cp cuda/lib64/libcudnn* /usr/local/cuda/lib64
sudo chmod a+r /usr/local/cuda/include/cudnn.h /usr/local/cuda/lib64/libcudnn*
3.安装多版本CUDA
按照上面两节安装另外版本的CUDA。假设都是默认的安装路径/usr/local/
,现在安装了两个版本的CUDA
/usr/local/cuda-10.0
/usr/local/cuda-10.1
查看当前cuda软链接指向的是哪个版本
stat /usr/local/cuda
切换版本
# 建立需要切换版本的软链接,替换现有的软链接
sudo ln -sf /usr/local/cuda-10.1 /usr/local/cuda
4.使用中可能会遇到的问题
1、libcudnn.so.7 is not a symbolic link
找不到软链接,到cuda的lib64目录,默认的是/usr/local/cuda/lib64
,建立软链接
cd /usr/local/cuda/lib64
sudo ln -sf libcudnn.so.7 libcudnn.so
2、Could not dlopen library 'libcudnn.so.7’
到cuda的lib64目录,默认的是/usr/local/cuda/lib64
,找到自己安装的cudnn的版本对应的ibcudnn.so
# 建立软链接
sudo ln -sf libcudnn.so.7.6.5 libcudnn.so.7
# 加载动态库
sudo ldconfig /usr/local/cuda/lib64
如果还不行
# 编辑配置文件
sudo vim /etc/ld.so.conf.d/cuda.conf
# 添加cuda的lib64路径到文件中
/usr/local/cuda/lib64
# 加载动态库
sudo ldconfig
记录,分享,交流。
转载:https://blog.csdn.net/choimroc/article/details/104735680