|
背景由于近期更换了电脑,所以需要在新电脑上重新配置Tensorflow的运行环境。本着使用最新版本的原则,按照官方指导教程进行安装以及配置CUDA,cuDNN等。此时我安装的最新版本为2.11.0,经测试tensorflow无法使用GPU。测试是否能够使用GPU的代码:importtensorflowastfgpus=tf.config.experimental.list_physical_devices(device_type='GPU')cpus=tf.config.experimental.list_physical_devices(device_type='CPU')print(gpus,cpus)1234程序运行结果为:[][PhysicalDevice(name='/physical_device:CPU:0',device_type='CPU')]1显然tensorflow没有找到GPU,只有CPU。以下是官网给出的安装教程:官方链接:使用pip安装TensorFlow在虚拟环境中使用pip安装tensorflowpipinstalltensorflow1接着配置相关软件NVIDIA®GPU驱动程序-CUDA®11.2要求450.80.02或更高版本。CUDA®工具包:TensorFlow支持CUDA®11.2(TensorFlow2.5.0及更高版本)CUDA®工具包附带的CUPTI。cuDNNSDK8.1.0cuDNN版本。(可选)TensorRT6.0,可缩短用某些模型进行推断的延迟时间并提高吞吐量。配置环境变量确保安装的NVIDIA软件包与上面列出的版本一致。特别是,如果没有cuDNN64_8.dll文件,TensorFlow将无法加载。如需使用其他版本,请参阅在Windows下从源代码构建指南。将CUDA®、CUPTI和cuDNN安装目录添加到%PATH%环境变量中。例如,如果CUDA®工具包安装到C:\ProgramFiles\NVIDIAGPUComputingToolkit\CUDA\v11.0,并且cuDNN安装到C:\tools\cuda,请更新%PATH%以匹配路径:SETPATH=C:\ProgramFiles\NVIDIAGPUComputingToolkit\CUDA\v11.0\bin;%PATH%SETPATH=C:\ProgramFiles\NVIDIAGPUComputingToolkit\CUDA\v11.0\extras\CUPTI\lib64;%PATH%SETPATH=C:\ProgramFiles\NVIDIAGPUComputingToolkit\CUDA\v11.0\include;%PATH%SETPATH=C:\tools\cuda\bin;%PATH%1234问题解决tensorflow版本从2.x开始不再区分CPU版和GPU版,因此在软件配置正确的情况下,应该是可以找到GPU设备的。我反复按照官网教程确认了各软件的版本以及环境变量等均没有错误,但问题仍没有解决。我将官网的语言调到英文时,发现了这样一条提示(在中文版的网页中是没有的):根据该条提示,Tensorflow2.10是最后一个在本地windows上支持GPU的版本。从2.11版本开始,需要在windowsWLS2(适用于Linux的Windows子系统)上安装才能使用GPU。所以要在native-windows上使用GPU,就只能安装2.10.0版本及以下的版本,或者安装老版的tensorflow-gpu。所以我卸载了之前安装的2.11.0版本,安装了2.10.0版本:pipinstalltensorflow==2.10.01然后测试是否能够使用GPU:可见,找不到GPU的问题已经解决。
|
|