在这之前要先按我这个处理一下
这个往往是安装失败的罪魁祸首。
1. 安装显卡驱动
检查一下你有没有驱动
nvidia-smi
如果没有,那就去安装一下。
显卡安装教程
2. 安装cuda
我的版本是cuda_10.0.130_410.48_linux.run
切换到该文件目录下
# 先更改权限以免报错
chmod a+x cuda_10.0.130_410.48_linux.run
# 再进行安装
sudo bash ./cuda_10.0.130_410.48_linux.run
2.1 cuda10.0以及更低
## 下面是输出是我设定的安装结果。
Do you accept the previously read EULA?
accept/decline/quit: accept
Install NVIDIA Accelerated Graphics Driver for Linux-x86_64 384.81?
(y)es/(n)o/(q)uit: no
Install the CUDA 10.0 Toolkit?
(y)es/(n)o/(q)uit: yes
Enter Toolkit Location
[ default is /usr/local/cuda-10.0 ]:
# 这个很有用,是构建一个软连接,对于多cuda环境很有帮助
Do you want to install a symbolic link at /usr/local/cuda?
(y)es/(n)o/(q)uit: yes
Install the CUDA 10.0 Samples?
(y)es/(n)o/(q)uit: no
# 输出
Please see CUDA_Installation_Guide_Linux.pdf in /usr/local/cuda-9.0/doc/pdf for detailed information on setting up CUDA.
***WARNING: Incomplete installation! This installation did not install the CUDA Driver. A driver of version at least 384.00 is required for CUDA 9.0 functionality to work.
To install the driver using this installer, run the following command, replacing <CudaInstaller> with the name of this run file:
sudo <CudaInstaller>.run -silent -driver
Logfile is /tmp/cuda_install_12169.log
2.2 cuda10.1版本以及更高
CUDA Installer
- [ ] Driver # 显示驱动
- [ ] 418.87.00 # 如果你已经安装过了nvidia的显卡驱动,这里就不要选
- [X] CUDA Toolkit 10.1 # 必选
- [ ] CUDA Samples 10.1 # 样例,装不装无所谓,可以不装
- [X] CUDA Demo Suite 10.1 # 套件,非必要,可以不装
- [X] CUDA Documentation 10.1 # 解释文档,可以不装可以装,看个人需求
Options
Install # <--上面有X的就是选中的意思
这就代表安装完毕了。
3. 配置CUDA
# 没有安装oh-my-zsh的
sudo gedit ~/.bashrc
## 文件最后加上 指向 cuda 文件夹的配置
export LD_LIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATH
export PATH=/usr/local/cuda/bin:$PATH
# 激活
source ~/.bashrc
检查一下
$ cat /proc/driver/nvidia/version
# 输出显示版本是435.21,GCC版本是5.4.0
NVRM version: NVIDIA UNIX x86_64 Kernel Module 435.21 Sun Aug 25 08:17:57 CDT 2019
GCC version: gcc version 5.4.0 20160609 (Ubuntu 5.4.0-6ubuntu1~16.04.11)
## 查看一下cuda版本
$ nvcc -V
# 这代表你装上了,版本是9.0
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2017 NVIDIA Corporation
Built on Fri_Sep__1_21:08:03_CDT_2017
Cuda compilation tools, release 9.0, V9.0.176
更改cuda软链接
# 修改cuda版本的命令,其中version替换为对应的cuda版本。
sudo ln -snf /usr/local/cuda-{version} /usr/local/cuda
4. 安装cudnn
下载的是cudnn-10.1-linux-x64-v7.6.5.64.tgz
,下载选择cuDNN Library for Linux
;理论上7.0版本的cudnn
都是可以的。
# 1. 解压
tar -zxvf cudnn-10.0-linux-x64-v7.6.0.64.tgz
#如果是tar.xz文件, 就使用 tar -xf
# 2. 拷贝,注意星号别丢了
sudo cp cuda/include/cudnn.h /usr/local/cuda/include/
sudo cp cuda/lib64/libcudnn* /usr/local/cuda/lib64/
# 3. 转移时候要设置权限大小,不然pycharm用不了Anaconda的虚拟环境
sudo chmod a+r /usr/local/cuda/include/cudnn.h
sudo chmod a+r /usr/local/cuda/lib64/libcudnn*
# 4. 软链接,可用可不用;我没有采用,只有提醒报错缺什么时候才会创建软连接
cd /usr/local/cuda/lib64
sudo chmod +r libcudnn.so.7.6.1
sudo ln -sf libcudnn.so.7.6.1 libcudnn.so.7
sudo ln -sf libcudnn.so.7 libcudnn.so
sudo ldconfig
'8.x版本以上'
# 解压
tar -xvf cudnn-linux-x86_64-8.x.x.x_cudaXY-archive.tar.xz
# 拷贝
sudo cp cudnn-*-archive/include/cudnn*.h /usr/local/cuda/include
sudo cp -P cudnn-*-archive/lib/libcudnn* /usr/local/cuda/lib64
sudo chmod a+r /usr/local/cuda/include/cudnn*.h /usr/local/cuda/lib64/libcudnn*
5. 卸载cuda
这是10.1以及新版本
# 打开卸载目录
$ cd /usr/local/cuda/bin
# 运行卸载
$ sudo ./cuda-uninstaller
会弹出来很多选项,我说过X
就是选中,选中全删,点Done
即可
然后再删除文档
## 1.打开
$ cd /usr/local/
## 2.删除:-r是循环删除文件夹,-f是不可逆转
$ sudo rm -rf cuda-10.1
cuda10.0及以前版本
$ cd /usr/local/cuda/bin
$ sudo uninstall_cuda_10.0.pl
同理,也要删除文件夹。
PS:对于/.basha
的环境配置是否删除,如果你是用软链接,其实都可以不用删,下次安装其他版本再用即可。
6.cuda和cudnn多版本共存
安装新的cuda
版本时候,先去 ~/.bashrc
文件里删掉 下面这一段:
# sudo gedit ~/.bashrc打开后删掉下面的或者屏蔽
export LD_LIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATH
export PATH=/usr/local/cuda/bin:$PATH
然后再激活一下
source ~/.bashrc
激活一下配置文件,不然就会提示你已经安装cuda,报错。
然后
# 去 /usr/local/下删掉cuda软链接
sudo rm -rf cuda
'注意!不是cuda/ , 而是 cuda, 没有 / 尾缀, 不然的话 emmmm 旧版本全删掉了、'
安装CUDA
.然后重新绑定新版本
# 然后创建软链接
sudo ln -s /usr/local/cuda-{你的新版本} /usr/local/cuda
# 检查一下
ls -al
# 如果显示如下就行了
# cuda -> /usr/local/cuda-{新版本}/
再去配置一下:
sudo gedit ~/.bashrc
export LD_LIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATH
export PATH=/usr/local/cuda/bin:$PATH
source ~/.bashrc
Other
- 安装tensorflow-1.14
- 如果需要anaconda安装环境:anaconda创建虚拟环境及操作
- 如果使用tensorflow报错
输入:
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple -U numpy==1.16
2.子用户安装cuda和cudnn
我们现在除了root
用户,有一个zy
用户,在/home/zy
。
- 安装显卡驱动,驱动cuda版本要高于后续安装的cuda和cudnn
- 下载
cuda113
和cudnn
,不做追叙 - 提前设计好文件夹:
cd ~
mkdir cuda-11.3
mkdir cuda-11.3/mylib
- 安装
cuda
bash cuda_11.3.1_465.19.01_linux.run
┌──────────────────────────────────────────────────────────────────────────────┐
| CUDA Installer │
│ - [ ] Driver │
│ [ ] 418.87.00 │
│ + [X] CUDA Toolkit 10.1 │
│ [ ] CUDA Samples 10.1 │
│ [ ] CUDA Demo Suite 10.1 │
│ [ ] CUDA Documentation 10.1 │
│ Options │
│ Install │
进入Options
:
┌──────────────────────────────────────────────────────────────────────────────┐
│ Options │
│ Driver Options │
│ Toolkit Options │
│ Samples Options │
│ Library install path (Blank for system default) │
│ Done │
│ │
进入Toolkit Options
中其他x
都去掉,
┌──────────────────────────────────────────────────────────────────────────────┐
│ CUDA Toolkit │
│ Change Toolkit Install Path │
│ [ ] Create symbolic link from /usr/local/cuda │
│ - [ ] Create desktop menu shortcuts │
│ [ ] Yes │
│ [ ] No │
│ [ ] Install manpage documents to /usr/share/man │
│ Done │
│ │
再 Change Toolkit Install Path
设置cuda
安装到自己具有写入权限的路径(提前建好),我这里是/home/zy/cuda-11.3/
):
┌──────────────────────────────────────────────────────────────────────────────┐
│ Change Toolkit Install Path │
│ /home/zy/cuda-11.3/ │
│ │
做完Done
,回到Options
菜单, 更改Library install path
(不改不行,它会偷偷写入/var/lib
)
┌──────────────────────────────────────────────────────────────────────────────┐
│ Library install path (Blank for system default) │
│ /home/zy/cuda-11.3/mylib/ │
就可以安装了!
然后:
更改环境变量:
vim ~/.profile
添加并且刷新
# CUDA
export PATH="/home/zy/cuda-11.3/bin:$PATH"
export LD_LIBRARY_PATH="/home/zy/cuda-11.3/lib64:/home/liminghao/cuda-10.1/mylib/lib64:$LD_LIBRARY_PATH"
source ~/.profile
# 测
nvcc -V
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2019 NVIDIA Corporation
Built on Sun_Jul_28_19:07:16_PDT_2019
Cuda compilation tools, release 10.1, V10.1.243
- 安装
cudann
(base) zy@zgy:~/down$ tar -xvf cudnn-linux-x86_64-8.5.0.96_cuda11-archive.tar.xz
cudnn-linux-x86_64-8.5.0.96_cuda11-archive/
--------------------------------------------------
(base) zy@zgy:~/down$ cd cudnn-linux-x86_64-8.5.0.96_cuda11-archive/
(base) zy@zgy:~/down/cudnn-linux-x86_64-8.5.0.96_cuda11-archive$ cp ./include/cudnn*.h /home/zy/cuda-11.3/include
(base) zy@zgy:~/down/cudnn-linux-x86_64-8.5.0.96_cuda11-archive$ cp ./lib/libcudnn* /home/zy/cuda-11.3/lib64
(base) zy@zgy:~/down/cudnn-linux-x86_64-8.5.0.96_cuda11-archive$ chmod a+x /home/zy/cuda-11.3/include/cudnn*.h
(base) zy@zgy:~/down/cudnn-linux-x86_64-8.5.0.96_cuda11-archive$ chmod a+x /home/zy/cuda-11.3/include/cudnn*.h /home/zy/cuda-11.3/lib64/libcudnn*