赞
踩
TensorFlow在Windows上的GPU设置仅支持2.10或更早的版本,2.10以后的TensorFlow版本不再支持在Windows系统上配置GPU(CPU版本不受影响)。如果需要在Windows系统上为2.10版本之后的TensorFlow配置GPU支持,则只能在WSL2 模式中进行配置。
博主写文时TensorFlow最新版本为2.16,python最新版本为3.12,由于一开始不知道上述问题,安装了2.16版本的TensorFlow之后无论如何设置都无法成功配置GPU支持,直到在TensorFlow的官网(Build from source on Windows | TensorFlow (google.cn))看到了下面这张图。。。
图1
根据上面这张图的说明,我最终决定安装3.10版本的python以及2.10版本的TensorFlow。
一般带NVIDIA显卡的电脑上已经默认安装了驱动程序,可以在cmd界面用nvidia-smi命令查看或者在英伟达控制面板查看:
图2
图3
出现上图界面则表示GPU驱动程序已经安装,不过需要注意的是由于TensorFlow支持的CUDA版本一般在11.x以上,而CUDA 11.x要求 GPU驱动程序为450.80.02 或更高的版本,因此如果不满足条件需要先升级GPU驱动程序的版本。
如果未安装GPU驱动程序,则需要先进入NVIDIA官网下载对应版本显卡的GPU驱动:Official Drivers | NVIDIA。另外也可以使用NVIDIA官方的NVIDIA Geforce Experience软件进行显卡驱动程序的管理和升级等操作。
图4
由于安装CUDA需要Microsoft Visual C++相关组件的支持,因此需要首先安装这些组件,主要包括安装“Visual C++可再发行组件包和Visual C++生成工具”。根据图1中的说明,我们需要安装2019版本的Visual C++组件(MSVC 2019),这些工具随附在Visual Studio 2019软件中,因此可以通过安装Visual Studio 2019来完成这些组件的安装。由于博主写文时Visual Studio 2019已经过时,因此我安装了更高版本的Visual Studio 2022(下载 Visual Studio Tools - 免费安装 Windows、Mac、Linux (microsoft.com)),在Visual Studio 2022中也附带了更早版本的相关组件,可以在安装界面进行单独选择,如下图右半部分(单个组件)。为了保险起见,博主将2017、2019和2022版本的“Visual C++可再发行组件包和生成工具”全部进行了安装。
图5
在“单个组件”中一共选择了5个项目,其中前两个表示2022版本的Visual C++可再发行组件包和更新包,后面三个分别表示2017、2019和2022版本的Visual C++生成工具。另外,2017和2019版本的Visual C++可再发行组件包不在此处,需要单独安装,可以在visual studio官网的旧版下载处(Visual Studio 旧版下载 - 2019、2017、2015 (microsoft.com))进行下载,文件名分别为Visual C++ Redistributable for Visual Studio 2017和Visual C++ Redistributable for Visual Studio 2019,下载完成后安装即可。需要说明的是,很多电脑上一般都安装了多个不同版本的Visual C++可再发行组件包,这种时候可以不需要再去单独下载安装了 ,如下图所示。
图6
根据图1的说明,我们需要下载11.2版本的CUDA Toolkit,在CUDA工具包的官网(CUDA Toolkit Archive | NVIDIA Developer)选择对应的版本和平台进行下载即可。
图7
安装CUDA是选择自定义:
图8
取消勾选visual studio integration,其他可以默认,然后就可以下一步选择安装位置进行安装了:
图9
安装完成:
图10
可以使用nvcc -V命令测试CUDA工具包是否安装成功:
图11
出现上述界面即安装成功。
根据图1,我们需要安装8.1版本的cuDNN,在cuDNN下载网址(cuDNN Archive | NVIDIA Developer)选择与CUDA11.2对应的cuDNN8.1版本下载即可。解压后有3个文件夹:
图12
在CUDA 工具包的安装目录中也有这3个同名的文件夹,只需要将cuDNN解压后每个文件夹中的内容复制到CUDA 工具包安装目录的同名文件夹中即可。
需要配置以下几个与CUDA相关的环境变量:
其中 D:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.2 为博主的CUDA安装目录。
根据图1,我们需要安装3.10版本的python,博主使用miniconda创建python 3.10的虚拟环境,命令如下,其中py310-tf为虚拟环境的名称:
conda create -n py310-tf python=3.10
使用如下命令激活py310-tf虚拟环境:
conda activate py310-tf
为了加快pip下载python包的速度,可以将pip的默认源更换为国内。在电脑的用户目录(博主的电脑为 C:\Users\Administrator)创建名为pip的文件夹,在pip文件夹中创建一个文本文件并命名为pip.ini,在pip.ini文件中写入如下内容保存即可,表示pip使用清华源下载python软件包(也可以使用其他的pip国内源):
[global]
index-url = https://pypi.tuna.tsinghua.edu.cn/simple
[install]
trusted-host = https://pypi.tuna.tsinghua.edu.cn
首先进入py310-tf虚拟环境。
然后最好使用以下命令更新pip到最新版本:
python -m pip install --upgrade pip
安装TensorFlow 2.10版本:
pip install tensorflow==2.10.0
安装完成后可以使用如下方式测试TensorFlow是否能使用GPU:
在cmd进入python命令行模式后引入tensorflow:import tensorflow as tf
然后输入代码:gpus = tf.config.list_physical_devices("GPU")
gpus表示保存了GPU设备基本信息的数组,如果数组为空则表示GPU配置不成功,出现如下界面表示TensorFlow的GPU设置成功:
图13
至此,在Windows下配置TensorFlow2版本的GPU支持大功告成!
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。