Windows系统安装CUDA,cudnn & TensorFlow全过程

目录

    • 概述
    • CUDA & cuDNN 直观理解
    • CUDA, cuDNN 与tensorflow GPU版本匹配
        • 1) GPU硬件check
        • 2)确定Tensorflow及所需软件版本
    • CUDA & cuDNN 安装步骤
        • 1)下载CUDA和cuDNN
        • 2)CUDA安装与验证
        • 3)cuDNN安装
        • 4)添加环境变量
    • 虚拟环境(含Tensorflow-gpu)搭建

概述

  • 本文最终目的是在anaconda虚拟环境中,安装包含TensorFlow-gpu的虚拟环境。
  • 在此之前,本机已安装GPU驱动,Visual Studio 2015, 和 anaconda, 还需安装版本匹配的CUDA,cuDNN,以及虚拟环境。

CUDA & cuDNN 直观理解

  • CUDA
    是NVIDA推出的针对NVIDIA GPU的通用并行计算模型,可以看做是一个工具包(ToolKit)(所以在一台电脑上可以安装多个版本的CUDA)。

    其主要作用是:
    1)简化开发过程:使开发人员无需学习特定的显卡指令或结构,直接专注于用熟悉的C语言写程序,就可以在显卡上执行,不必花时间在如何实现/执行其所写程序上。
    2)支持异构计算:应用程序若同时使用CPU和GPU,则CUDA可将程序的穿行部分放在CPU运行,并行部分卸载到GPU运行,两者可同时进行计算,而不会争用内存资源。

    CUDA与显卡驱动之间没有捆绑关系,也非一一对应,但离线安装的CUDA会默认包含与之匹配的最新显卡驱动程序。

  • cuDNN

    是NVIDA推出的针对深度神经网络的GPU加速库。

    若要用GPU训练模型,cuDNN并非是必须的,但通常都会采用该加速库。

    至于cuDNN是如何加速神经网络训练的,有需要再深究和补充。

CUDA, cuDNN 与tensorflow GPU版本匹配

Tensorflow需要以下软硬件支持:
1)NVIDIA GPU (支持CUDA且算力在3.5及以上)
2)CUDA
3)CUPTI
4)cuDNN

其中,tensorflow版本与上述软件版本之间需要相互匹配,才能正常工作,所以,在安装tensorflow之前,需先确定软件版本的匹配关系。

  • 1) GPU硬件check

    • 算力
      在官网查询链接查询,本机显卡支持CUDA,算力为7.5,满足要求。

    • GPU驱动版本
      CUDA版本需与GPU驱动版本相匹配。

      若需现安装或更新GPU驱动,详细可参考显卡驱动安装方法。

      若已安装GPU驱动,可通过以下方法查看驱动安装版本:

      打开【设备管理器】→【显示适配器】,右击所针对的显卡,点击【属性】→【驱动程序】。如下图所示。

    Windows系统安装CUDA,cudnn & TensorFlow全过程_第1张图片
    • (当前显卡所支持的最高CUDA版本)
      方法之一:

      桌面右键或在控制面板中,打开【NVIDIA控制面板】,点击【帮助】→【系统信息】→【组件】,在3D设置分组中,找到NVCUDA.DLL,其产品名称说明里有所支持的CUDA版本信息。

      如下图可知,所安装的驱动最高支持到CUDA10.2版本。

    Windows系统安装CUDA,cudnn & TensorFlow全过程_第2张图片
  • 2)确定Tensorflow及所需软件版本

    参见TensorFlow官网给出的版本匹配列表(for Windows)

    部分匹配关系截图如下:

    Windows系统安装CUDA,cudnn & TensorFlow全过程_第3张图片

    由于之前在另一主机的anaconda中,所搭建虚拟环境使用的是TensorFlow-gpu 1.9,所以,本机在复制该虚拟环境之前,选择安装CUDA 9cuDNN 7.

CUDA & cuDNN 安装步骤

Visual Studio版本
CUDA安装前,需先安装Visual Studio,由于所选CUDA支持到Visual Studio 2015,安装过程中发现,之前装的Visual Studio 2019不能支持CUDA完成安装,故将Visual Studio改回到2015版本。

  • 1)下载CUDA和cuDNN

    • CUDA
      在NVIDIA CUDA官方下载网站,根据本机操作系统,选择所要安装的CUDA版本。

      本文选择下载CUDA Toolkit 9.0,如下图,点击【Base Installer】一栏的下载按钮,进行下载。

      Windows系统安装CUDA,cudnn & TensorFlow全过程_第4张图片
    • cuDNN
      在NVIDIA cuDNN官方下载网站, 登录NVIDIA账户后,勾选【I Agree…】,展开【Archived cuDNN Releases】,可看到之前所有版本。

      本文选择下载cuDNN v7.0.5 [Dec 5, 2017]

    Windows系统安装CUDA,cudnn & TensorFlow全过程_第5张图片
  • 2)CUDA安装与验证

    双击运行,按照界面引导安装即可。

    (也可参考NVIDIA官方给出的CUDA安装教程)

    • 安装完成后,打开终端,执行nvcc -V,若安装成功,可返回CUDA版本号
      Windows系统安装CUDA,cudnn & TensorFlow全过程_第6张图片
    • 在Visual Studio中,打开样例 deviceQuery项目,点击开始执行,若安装成功,可返回下图信息。
      Windows系统安装CUDA,cudnn & TensorFlow全过程_第7张图片
  • 3)cuDNN安装

    • 解压cuDNN压缩包。
    • 打开CUDA安装位置,在该文件夹下找到所针对的CUDA版本(若安装了不止一个CUDA版本)。本机为默认位置为C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA
    • 将cuDNN压缩包中的bin, include, lib 目录下的文件,分别复制到对应的上述CUDA文件夹相应目录下。
    • cuDNN版本查看方法如下图。
    Windows系统安装CUDA,cudnn & TensorFlow全过程_第8张图片

(也可参考NVIDIA官方给出的cuDNN安装教程)

  • 4)添加环境变量

    • 打开【系统属性】→【环境变量】→【系统变量】
    • 查看是否已添加CUDA_PATH环境变量,没有则需添加该变量,以及CUDA安装位置。
      Windows系统安装CUDA,cudnn & TensorFlow全过程_第9张图片

虚拟环境(含Tensorflow-gpu)搭建

由于之前所用的虚拟环境已保存下来,所以在新主机上安装时就比较简单了。

  • 打开anaconda prompt
  • cd到所保存的虚拟环境所在路径
  • 运行 conda env create -f myEnvBla.yml命令,会自动开始解析、下载和安装该虚拟环境。

安装完毕后,可先激活该虚拟环境,用conda list查看TensorFlow等主要包是否装好,然后打开之前程序运行一下,没有import等错误,说明环境搭建成功。
为测试tensorflow-gpu是否能成功调用GPU,进行下述测试,可见TensorFlow可调用GPU。

以上。

你可能感兴趣的:(DL-基础配置)