更换GPU——重跑Mask-RCNN Demo
使用GPU跑Mask-RCNN Demo
使用CPU跑深度学习当然没问题,但是随着深度学习往CV方向(计算机视觉)发展,需要计算机不断对图像进行处理,由此伴随着网络层数的加深,可能会让你的CPU会越来越力不从心!
而GPU(Graphics Processing Unit)就是为了处理图像而诞生的,因此这是GPU与生俱来的优势,
让我们通过以下这个短视频来体会一下CPU与GPU的区别吧
视频需要使用Dplayer视频插件,日后更新上来
OK,了解完GPU的强大之处后,就让我们把之前的Mask-RCNN项目换成GPU跑一遍吧!
注: 本文以下内容:需要电脑至少有一块NVIDA(英伟达)GPU处理器才能顺利进行
本文Demo运行的外部环境: Win10(64bits) + Anaconda3(2020.11版) + GTX 1060 Max-Q
CUDA&cuDNN
CUDA(Compute Unified Device Architecture),是显卡厂商NVIDIA推出的运算平台。
cuDNN(CUDA Deep Neural Network)是基于CUDA运算平台,用于深度神经网络的GPU加速库。
要想实现使用GPU运行Mask-RCNN Demo,必须先安装CUDA和cuDNN
查看CUDA版本支持
首先,来查看你电脑上能支持的CUDA的最高版本吧!
Step1:打开cmd命令行窗口,输入nvidia-smi
可以看到如下内容:
圈起来的部分就是你的NVIDIA显卡所支持的CUDA版本,本文所使用的电脑最高支持CUDA11.1。
如果输入
nvidia-smi
提示未找到命令,需要在环境变量Path中添加:``C:\Program Files\NVIDIA Corporation\NVSMI`
在后面的下载安装步骤中,首先需要保证 选择安装的cuda版本 <= cmd内显示的支持版本
并且你需要参考下图版本对应关系,保证CUDA、cuDNN、Python、tensorflow-gpu的版本一致性。
本文基于的环境配置版本为:
tensorflow-gpu-1.5.0
python3.6
CUDA9.0
cuDNN7.0.5
安装CUDA
CUDA已发布版本 :https://developer.nvidia.com/cuda-toolkit-archive
本文选择下载安装CUDA9.0(因为之前跑Demo时已经安装tensorflow-gpu-1.5.0了)
国内下载速度较慢,需要使用外网,如果你也选择安装CUDA9.0版本,可以选择从我的百度网盘中下载。
Step1: 访问NVIDIA官网,选择下载CUDA9.0
Step2: 安装CUDA9.0
运行安装程序:
选择自定义,然后勾选全部安装:
安装位置推荐不要改动,就在C盘就行:
这里还要求电脑安装过Visual Studio (2015/2017),不然装不上nsight:
本文电脑已安装VS2017
安装完成:
安装cuDNN
CUDNN历史版本 :https://developer.nvidia.com/rdp/cudnn-archive
本文选择下载安装cuDNN7.0.5(与CUDA9.0版本对应)
国内下载速度较慢,需要使用外网,如果你也选择安装cuDNN7.0.5版本,可以选择从我的百度网盘中下载。
Step1: 访问NVIDIA官网,选择下载cuDNN9.0
下载好cuDNN,解压,把对应文件夹中的东西复制进去即可。
Tensorflow-gpu
如果你有参考我上一篇文章,并成功跑起了Demo,那么已经安装过tensorflow-gpu了
运行如下程序来简单测试是否正在使用GPU进行运算:
import os
# os.environ['TF_CPP_MIN_LOG_LEVEL'] = '2'
# 使用编号为0的GPU
os.environ["CUDA_VISIBLE_DEVICES"] = '0'
import tensorflow as tf
from tensorflow.python.client import device_lib
print(device_lib.list_local_devices())
print(tf.test.gpu_device_name())
sess=tf.Session()
a=tf.constant(1)
b=tf.constant(3)
print(sess.run(a+b))
可能遇到的问题:
为什么Tensorflow还是使用的CPU而非GPU?
Demo运行
碰壁
为什么Tensorflow还是使用的CPU而非GPU
如果你既安装了tensorflow,又安装了tensorflow-gpu,请保证tensorflow-gpu版本>=tensorflow版本
最保险的方法,是把tensorflow和tensorflow-gpu都卸了,并只重新安装tensorflow-gpu
# 卸载
conda uninstall tensorflow==1.5.0
conda uninstall tensorflow-gpu==1.5.0
# 重新安装
conda install tensorflow-gpu==1.5.0
然后再运行上面的测试.py试试。
本博客所有文章均采用 CC BY-NC-SA 4.0 协议 ,禁止商用,转载请注明出处!