Linux中查看已经安装的CUDA多个版本以及当前软链接的版本、cudnn版本
- 1、查看GPU使用情况:
- 2、查看 CUDA 版本:
- 3、查看 CUDNN 版本
- 4、 不同版本cuda的切换(需要有足够的权限)
- ⑤查看 Linux下已安装的所有 cuda 版本
- ⑥ 更改 cudnn 版本
- linux 中cuda默认安装在/usr/local目录中:
-可以使用命令:
ls -l /usr/local | grep cuda
查看该目录下有哪些cuda版本:
如果输出:
lrwxrwxrwx 1 root root 21 5月 19 2021 cuda -> /usr/local/cuda-11.0/
drwxr-xr-x 18 root root 4096 11月 11 2020 cuda-10.1
drwxr-xr-x 4 root root 4096 5月 19 2021 cuda-11.0
则表示当前机器上安装了10.1、11.0两个 cuda 版本,/usr/local/cuda是一个软链接,链接到了/usr/local/cuda-11.0目录,表示当前使用的是cuda-11.0版本。
- 具体的版本可以通过:
nvcc -V # (V大写)
查看。
1)如果使用pytorch,可以使用如下语句查询是否可用:
import torch
print(torch.__version__) # 查看torch当前版本号
print(torch.version.cuda) # 编译当前版本的torch使用的cuda版本号
print(torch.cuda.is_available()) # 查看当前cuda是否可用于当前版本的Torch,如果输出True,则表示可用
- 如果nvidia-smi命令列出的CUDA版本与nvcc -V列出的版本号不一致,可能是由以下原因之一引起的:
1)安装多版本cuda后,还没有刷新环境变量,刷新即可;
2)CUDA有两种API,分别是运行时API和驱动API,即所谓的Runtime API与Driver API,nvidia-smi的结果除了有GPU驱动版本型号,还有CUDA Driver API的版本号,这里是10.0,而nvcc的结果是对应CUDA Runtime API
补充说明:在安装CUDA 时候会安装3大组件,分别是 NVIDIA 驱动、toolkit和samples。NVIDIA驱动是用来控制GPU硬件,toolkit里面包括nvcc编译器等,samples或者说SDK 里面包括很多样例程序包括查询设备、带宽测试等等。上面说的CUDADriver API是依赖于NVIDIA驱动安装的,而CUDA Runtime API 是通过CUDA toolkit安装的。
1、查看GPU使用情况:
命令: nvidia-smi
2、查看 CUDA 版本:
cat /usr/local/cuda/version.txt
cuda 版本为:10.1.243
3、查看 CUDNN 版本
cat /usr/local/**cuda-11.x**/include/cudnn_version.h | grep CUDNN_MAJOR -A 2
cuda-11.x 实际的安装版本
cudnn 版本为:7.5.1
- Windows下:
4、 不同版本cuda的切换(需要有足够的权限)
切换 = ①删除原始软链接 + ②建立新的软链接
①删除之前创建的软链接
rm -rf /usr/local/cuda
②建立新的软链接, 将 cuda10.1 连接到 默认cuda上
sudo ln -s /usr/local/cuda-10.1 /usr/local/cuda
②再次核查 cuda版本:
cat /usr/local/cuda/version.txt
⑤查看 Linux下已安装的所有 cuda 版本
可以通过安装位置文件夹来识别已经装的cuda版本,如下:
查看 /usr/local/ 文件夹下存在的不同cuda版本文件夹
⑥ 更改 cudnn 版本
重新官网下载对应cuda匹配的cudnn版本重新安装,步骤如下,
以cudnn-10.0-Linux-7.4.1为例:
终端下,切换到cudnn文件所在目录,通过tar -xzvf cudnn-10.0-linux-x64-v7.4.1.5.tgz命令解压文件,会得到一个cuda文件夹,逐一执行下面的命令进行cudnn的安装:
# ① 复制文件夹内容
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
sudo chmod a+r /usr/local/cuda/lib64/libcudnn*
完成后,通过下面的命令查看安装情况:
cat /usr/local/cuda/include/cudnn.h | grep CUDNN_MAJOR -A 2
如果结果如下图逐行显示版本号,则安装成功。