win10下配置tensorflow-gpu(NVIDIA Quadro P2000)
win10下配置tensorflow-gpu(NVIDIA Quadro P2000)
用公司服务器配置的NVIDIA Quadro P2000显卡进行tensorflow-gpu计算,折腾了两天才完成环境搭建,写在这里mark下。主要的经验就是:
- 查看自己的显卡是否支持,否则白折腾。
- CUDA和cuDNN版本一定要对应。
- anaconda预装的tensorflow是CPU版本的,需要自己卸掉然后装tensorflow-gpu版本,否则肯定不行!
确定自己的GPU支持人工智能计算
首先查看自己GPU的型号:
如果设备列表里没有,就是没装驱动,建议去安装最新驱动。然后在NVIDIA的控制面板上查看支持的CUDA版本:
也可以参看NVIDIA官网GPU计算力排名 :
位列其中肯定是支持的。
CUDA和cuDNN的安装
CUDA是NVIDIA搞得计算平台,也就是说一般的显卡需要这个平台才能进行深度学习,cuDNN相当于补丁,能够加速训练。同时cuda和cuDNN版本一定要对应,否则不兼容。具体兼不兼容可以从这个官方网址来查看https://tensorflow.google.cn/install/source_windows.
我用的红框中的配置,也就是tensorflow_gpu-2.3.0,cuDNN为7.6,CUDA是10.1。如果版本不对会带来一系列问题!cuDNN和CUDA可以下载local版本(文件较大)或者network版本。
CUDA下载网址https://developer.nvidia.com/cuda-toolkit-archive.
cuDNN下载需要先注册然后下载,具体过程与CUDA类似。
查看CUDA版本在命令行下面输入:nvcc -V
这代表CUDA安装成功。cuDNN查看版本比较麻烦,可以参看查看cuda和cudnn版本win&linux 。
测试CUDA,命令界面进行deviceQuery和bandwidthTest,出现以下结果就是正确:
如果之前CUDA安装错了,需要全部卸载,方法就是进入win程序管理,将NVIDIA带版本号(比如11.0)的程序全部卸载,参见win10 卸载cuda ,cuDNN手动删除就行。然后重装就可以了。
tensorflow-gpu安装
我是采用anaconda来管理我的库,anaconda使用起来很方便,但是麻烦的是默认安装的tensorflow是cpu版本,需要自己卸了重装。在anaconda中点击绿色三角,然后点击Open Terminal,出现命令界面。
输入pip uninstall tensorflow,卸载原有tensorflow。
然后安装tensorflow-gpu_2.3.0,可以直接输入pip install tensorflow-gpu==2.3.0。我的网速不稳定,从清华镜像下载了tensorflow_gpu-2.3.0-cp38-cp38-win_amd64.whl直接安装:pip install tensorflow_gpu-2.3.0-cp38-cp38-win_amd64.whl。
测试
在python命令界面下,输入以下代码测试:
import tensorflow as tf
tf.test.is_built_with_cuda() # 结果是True
tf.test.is_gpu_available() # 结果是True
tf.config.list_physical_devices('GPU') # 输出可使用的GPU列表
出现以下结果表示正确:
代码修改
我用的keras2.0,代码层面不需要修改(是import tensorflow, 不是import tensorflow-gpu),畅快的炼丹吧!
运行过程中可以通过nvidia-smi查看GPU使用情况:
可以参见CUDA之nvidia-smi命令详解 。