查看ubuntu版本
(base) user@ubuntu:~$ cat /etc/issue
Ubuntu 16.04.7 LTS \n \l
查看conda环境
(base) user@ubuntu:~$ conda info --env
# conda environments:
#
base * /home/user/anaconda3
d2l /home/user/anaconda3/envs/d2l
python2 /home/user/anaconda3/envs/python2
yolov5 /home/user/anaconda3/envs/yolov5
新建python虚拟环境,方便版本管理
conda create -n yolov5 python==3.7
查看cuda版本,三种办法
①:
(base) user@ubuntu:~$ nvidia-smi
Tue Mar 8 14:24:19 2022
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 460.32.03 Driver Version: 460.32.03 CUDA Version: 11.2 |
|-------------------------------+----------------------+----------------------+
| GPU Name Persistence-M| Bus-Id Disp.A | Volatile Uncorr. ECC |
| Fan Temp Perf Pwr:Usage/Cap| Memory-Usage | GPU-Util Compute M. |
| | | MIG M. |
|===============================+======================+======================|
| 0 Tesla V100-PCIE... Off | 00000000:65:00.0 Off | 0 |
| N/A 41C P0 35W / 250W | 0MiB / 32510MiB | 0% Default |
| | | N/A |
+-------------------------------+----------------------+----------------------+
+-----------------------------------------------------------------------------+
| Processes: |
| GPU GI CI PID Type Process name GPU Memory |
| ID ID Usage |
|=============================================================================|
| No running processes found |
+-----------------------------------------------------------------------------+
②:
(base) user@ubuntu:~$ nvcc -V
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2019 NVIDIA Corporation
Built on Fri_Feb__8_19:08:17_PST_2019
Cuda compilation tools, release 10.1, V10.1.105
③:
(base) user@ubuntu:~$ cat /usr/local/cuda/version.txt
CUDA Version 10.1.105
细心地同学会发现,有时①查看的cuda版本和②、③查出来的会不同,这是什么原因呢。原来cuda的API分为两种类型,一种是驱动(driver)API,另一种是运行(runtime)API。而我们通过nvidia-smi查看的cuda版本正是驱动API版本。通过nvcc -V 和 cat /usr/local/cuda/version.txt查看的一般是运行API,因此两者存在出入是正常的。
但是我们运行程序时所使用的是运行API,我们时常讲的cuda,cudnn,tensorflow-gpu版本之间的对应,也是针对运行API来讲的,也就是后两者查看的版本。
安装cudnn
可在cuDNN的官网上下载对应版本的cuDNN安装包,官网网址:cuDNN Archive
cuDNN的安装方法有两种,需要下载不同的安装包
一、Tar File形式的安装
.tgz 文件安装
该方法仅需下载一个安装包,如图所示
下载完毕后,进入文件所在位置,解压安装包(其中 xxx 为安装包的补充名称)
tar -xzvf cudnn-xxx.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*
二、Debian File形式的安装
.deb 文件安装
该方法需要下载三个安装包,如下图所示
分别对这三个安装包执行以下命令进行安装,文件名请自行修改,要注意,必须按以下顺序进行安装,否则会因依赖问题而报错
sudo dpkg -i libcudnn7_7.6.4.38-1+cuda9.0_amd64.deb
sudo dpkg -i libcudnn7-dev_7.6.4.38-1+cuda9.0_amd64.deb
sudo dpkg -i libcudnn7-doc_7.6.4.38-1+cuda9.0_amd64.deb
三、验证cudnn是否安装成功
当选择Debian File进行安装时会在/usr/src/cudnn_samples_v7有一些cudnn的例子
编译mnistCUDNN sample进行验证
cp -r /usr/src/cudnn_samples_v7/ $HOME
cd $HOME/cudnn_samples_v7/mnistCUDNN
make clean && make
./mnistCUDNN