本文介绍: Tensorflowgpu保姆级安装教程(Win11, Anaconda3,Python3.9)

前言

CPU版本GPU版本区别主要在于运行速度GPU版本运行速度更快,所以如果电脑显卡支持cuda,推荐安装gpu版本的。

Tensorflowgpu版本安装的准备工作

重要的事说三遍:

安装前 一定查看自己电脑环境配置然后查询Tensorflow-gpuPythoncuda cuDNN 版本关系,要 一对

安装前 一定查看自己电脑环境配置然后查询Tensorflow-gpuPythoncuda cuDNN 版本关系,要 一对

安装前 一定 要查看自己电脑环境配置然后查询Tensorflow-gpuPythoncuda cuDNN 版本关系,要 一对

Tensorflow-gpu 与 Python、 cuda、cuDNN 版本关系查询

在这里插入图片描述

我的安装环境为:

操作系统 显卡 Python
win11 NVIDIA GeForce RTX2050 3.9.13

我的tensorflow-gpu 安装版本为:

tensorflowgpu cuda cuDNN
tensorflowgpu 2.7.0 cuda 11.5.2 cuDNN 8.3.2

注: 我这个对应关系是在网上查询别人安装成功的案例不要自己随意组合,不然很容易安装失败,或者就按官网查询的组合安装,安装过程是一样的!

(一)、查看电脑的显卡

1)、右键此电脑右键管理设备管理器显示适配器
主要看独显:GeForce RTX 2050

在这里插入图片描述

可以看到点击出现了NVIDIA GeForce ...,即你的电脑显卡型号。

在这里插入图片描述

我的型号没有查到,NVIDIA近几年显卡的算力一般是够的。

2)、右键显卡属性驱动程序,可以查看显卡驱动程序

在这里插入图片描述

3)、查看GPU驱动版本,也就是我们“CUDA Version”,Windows 11 版本中一般是12.0版本,键盘上同时按win +r输入cmd打开命令窗口,在命令窗口输入

nvidia-smi

在这里插入图片描述

(二) 、Anaconda的安装

安装tensorflow提前安装好Anaconda这里我也不重点介绍了,我之前也重点详细地写过相关文章:
Anaconda安装-超详细版(2023)

Anaconda安装成功后,进入下面tensorflow的安装!

后面tensorflow的安装可成三步:

  1. cuda的安装
  2. cuDNN神经网络加速库安装
  3. 配置环境变量

(三)、cuda下载和安装

下载cudacuDNN。在官网上下载对应的cudacuDNN,版本可以低于上面查到的CUDA版本但不能高于电脑支持的版本。

1)、下载:

我下载的是CUDA Toolkit 11.5.2, 点击前面的 CUDA Toolkit 11.5.2
在这里插入图片描述

选择相应的系统、版本等选项点击Download下载:
在这里插入图片描述
2)、安装

a、 双击安装包,此时会出现一个提示框,让你选择临时解压位置(该位置内容在你安装完cuda之后会自动删除),这里默认即可,点击ok

在这里插入图片描述

b、点击同意并继续:

在这里插入图片描述

c、完成上一步后,选择自定义,然后点下一步:

在这里插入图片描述

d、完成上一步,这里CUDA一定要勾选上,下面的可选可不选,对后续没有影响

在这里插入图片描述

在这里插入图片描述

e、这个安装位置可以自己改。要截图记录一下你装到哪里了,后面要用到!我选择默认安装位置

在这里插入图片描述

f、正在安装

在这里插入图片描述

g、安装成功!

在这里插入图片描述

点击关闭即可

在这里插入图片描述

检查环境变量

完成安装后,检查一下环境变量是否存在,一般安装完成会自动配置环境变量,若是没有,则需手动配置,具体过程如下。

  1. 打开 电脑属性,找到 高级系统设置选择 环境变量 打开。

  2. 查看是否有以下系统变量,没有则需要自行添加,对应图片上的名称和值,配置你电脑CUDA安装所在的位置

在这里插入图片描述

  1. 打开系统变量Path,查看是否有一下两条内容,若没有则需自行添加,一定要配置对安装的位置。

在这里插入图片描述

配置好环境变量后,我们检查下CUDA是否安装成功。

  1. 打开cmd输入以下命令查看CUDA是否安装成功(二选一)
    如果不能显示以下信息,则说明安装失败
nvcc -V
nvcc --version

在这里插入图片描述

set cuda

在这里插入图片描述

在这里插入图片描述

CUDA的安装就结束了,接下来下载解压cuDNN文件

(四)、cudnn下载安装

CUDA并不是实现GPU神经网络加速库,如果希望针对的是神经网络进行加速,我们还需要安装cuDNN神经网络加速库。

1)、下载:

下载对应版本的cuDNN这里选择的是cuDNN v8.3.2 for CUDA 11.5

在这里插入图片描述

  1. 、下载解压安装包后,我们解压可以看到有四个文件
    在这里插入图片描述

3)、教程的这一步要格外注意

  • 要将cudnn文件中的对应文件夹下的所有文件复制 到对应的安装目录中,
  • 不是cudnn文件中的文件夹复制过去。eg:复制的不是cudnn中的bin文件夹,而是bin文件夹下的所有文件。(有重复的文件是正常的,覆盖掉就好!)

在这里插入图片描述

  1. 打开cudnn文件中的bin文件夹,将该文件夹中所有的 文件 复制粘贴CUDAv11.5bin文件夹中:

在这里插入图片描述

  1. 打开cudnn文件中的include文件夹,将该文件夹中所有的 文件 复制粘贴CUDAv11.5include文件夹中:

在这里插入图片描述

  1. 打开cudnn文件中的lib文件夹,将该文件夹中所有的 文件 复制粘贴CUDAv11.5libx64文件夹中:

在这里插入图片描述

  1. 打开cudnn文件中的剩下的文件复制粘贴CUDAv11.5文件夹中:

在这里插入图片描述
cuDNN其实就是CUDA一个补丁而已,专为深度学习运算进行优化的,然后我们再添加环境变量!继续往下走。

(五)、配置环境变量

  1. 、打开系统变量Path,在系统变量path路径添加以下路径:(具体要根据自己的安装路径下做调整)
C:Program FilesNVIDIA GPU Computing ToolkitCUDAv11.5bin
C:Program FilesNVIDIA GPU Computing ToolkitCUDAv11.5libnvvp
C:Program FilesNVIDIA GPU Computing ToolkitCUDAv11.5
C:Program FilesNVIDIA GPU Computing ToolkitCUDAv11.5libx64

添加好后是这样的:

在这里插入图片描述

2)、配置好环境后,我们需要验证环境变量是否配置成功:

打开cmd进入自己CUDA的安装下路径...CUDAv11.5extrasdemo_suite:,我是默认路径,所以我的是:

cd Program FilesNVIDIA GPU Computing ToolkitCUDAv11.5extrasdemo_suite

然后分别执行以下两个命令

.bandwidthTest.exe
.deviceQuery.exe

在这里插入图片描述
在这里插入图片描述

如果Result都为PASS的话则配置成功!

3)、都安装好之后,我们可以继续输入nvidia-smi查看CUDA信息,然后根据安装版本的信息再去实现其他的库(环境)安装和使用

nvidia-smi

在这里插入图片描述

如图所示,可以看到驱动的版本是527.41;最高支持的CUDA版本是12.0版本。

(六)、创建 tensorflow 环境

这里使用Anaconda(如果选择这一步,就不需要额外下载python,以及各种常用工具包,它会打包下载好)

1)、打开anaconda prompt

在这里插入图片描述

2)、创建tensorflow环境,输入命令conda create -n tensorflow python=3.9,表示创建一个名字为tensorflow的环境,这个环境用的python版本是3.9版本的,如果默认创建,会在C盘

w11下载anaconda在d盘,新建的虚拟环境总是在c盘怎么解决

conda create -n tensorflow python=3.9

在这里插入图片描述

3)、创建成功后,输入命令conda env list,可以看到tensorflow环境已经创建,星号为当前所在环境(基础环境base)。

conda env list

在这里插入图片描述

4)、进入环境,输入命令activate tensorflow,就可以进入tensorflow环境中

conda activate tensorflow

在这里插入图片描述

如果要退出环境,输入:

conda deactivate

5)、因为我的conda环境在D盘中,所以将路径改了以下。如果anaconda安装的时候是默认路径,这一步不需要。

d:
cd WorkSoftwareInstallAnaconda3envstensorflow

在这里插入图片描述

6)、 安装指定版本的tensorflow-gpu,,我安装的是2.7.0,根据你自己的配套版本安装,输入命令:

pip install tensorflow-gpu==2.7.0 -i  https://pypi.mirrors.ustc.edu.cn/simple  

在这里插入图片描述
报错结束应该是装好了。

7)、打开python环境,导入tensorflow包进行测试 ,查看tensorflow的版本信息, 输入命令:

import tensorflow as tf
  • 如果导入包有以下报错没有报错请忽略!):
(tensorflow) C:UsersRmzh>python
Python 3.9.16 | packaged by conda-forge | (main, Feb  1 2023, 21:28:38) [MSC v.1929 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import tensorflow as tf
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "D:WorkSoftwareInstallAnaconda3envstensorflowlibsite-packagestensorflow__init__.py", line 41, in <module>
    from tensorflow.python.tools import module_util as _module_util
  File "D:WorkSoftwareInstallAnaconda3envstensorflowlibsite-packagestensorflowpython__init__.py", line 41, in <module>
    from tensorflow.python.eager import context
  File "D:WorkSoftwareInstallAnaconda3envstensorflowlibsite-packagestensorflowpythoneagercontext.py", line 33, in <module>
    from tensorflow.core.framework import function_pb2
  File "D:WorkSoftwareInstallAnaconda3envstensorflowlibsite-packagestensorflowcoreframeworkfunction_pb2.py", line 16, in <module>
    from tensorflow.core.framework import attr_value_pb2 as tensorflow_dot_core_dot_framework_dot_attr__value__pb2
  File "D:WorkSoftwareInstallAnaconda3envstensorflowlibsite-packagestensorflowcoreframeworkattr_value_pb2.py", line 16, in <module>
    from tensorflow.core.framework import tensor_pb2 as tensorflow_dot_core_dot_framework_dot_tensor__pb2
  File "D:WorkSoftwareInstallAnaconda3envstensorflowlibsite-packagestensorflowcoreframeworktensor_pb2.py", line 16, in <module>
    from tensorflow.core.framework import resource_handle_pb2 as tensorflow_dot_core_dot_framework_dot_resource__handle__pb2
  File "D:WorkSoftwareInstallAnaconda3envstensorflowlibsite-packagestensorflowcoreframeworkresource_handle_pb2.py", line 16, in <module>
    from tensorflow.core.framework import tensor_shape_pb2 as tensorflow_dot_core_dot_framework_dot_tensor__shape__pb2
  File "D:WorkSoftwareInstallAnaconda3envstensorflowlibsite-packagestensorflowcoreframeworktensor_shape_pb2.py", line 36, in <module>
    _descriptor.FieldDescriptor(
  File "D:WorkSoftwareInstallAnaconda3envstensorflowlibsite-packagesgoogleprotobufdescriptor.py", line 561, in __new__
    _message.Message._CheckCalledFromGeneratedFile()
TypeError: Descriptors cannot not be created directly.
If this call came from a _pb2.py file, your generated code is out of date and must be regenerated with protoc >= 3.19.0.If you cannot immediately regenerate your protos, some other possible workarounds are:
 1. Downgrade the protobuf package to 3.20.x or lower.
 2. Set PROTOCOL_BUFFERS_PYTHON_IMPLEMENTATION=python (but this will use pure-Python parsing and will be much slower).

More information: https://developers.google.com/protocol-buffers/docs/news/2022-05-06#python-updates
pip install protobuf==3.19.0 -i https://pypi.tuna.tsinghua.edu.cn/simple --trusted-host pypi.tuna.tsinghua.edu.cn

然后重新进入python 环境,查看tensorflow的版本信息, 输入命令:

import tensorflow as tf
tf.__version__

在这里插入图片描述

退出tensorflow环境:

conda deactivate

在这里插入图片描述
同时,conda控制台是默认打开base环境的,如果想管理这一设置

conda config --set auto_activate_base false / true

(七)、测试 Tensorflow-gpu 是否安装成功

  1. 打开Anaconda选择tensorflow环境,打开spyder,第一次打开需要安装Spyder,直接点下方的install即可

在这里插入图片描述

  1. 输入以下测试代码
import tensorflow as tf

print(tf.__version__)
print(tf.test.gpu_device_name())
print(tf.config.experimental.set_visible_devices)
print('GPU:', tf.config.list_physical_devices('GPU'))
print('CPU:', tf.config.list_physical_devices(device_type='CPU'))
print(tf.config.list_physical_devices('GPU'))
print(tf.test.is_gpu_available())
# 输出可用的GPU数量
print("Num GPUs Available: ", len(tf.config.experimental.list_physical_devices('GPU')))
# 查询GPU设备

在这里插入图片描述

  • 出现了当前环境tensorflow的版本以及一些其他信息,我的版本是2.7.0
  • 如果下面出现了True, 那就表明我们的tensorflow-gpu 已经成功的安装好并且能够正常使用了!
  1. 下面来测试一下GPU运算速度吧!
import tensorflow as tf
import timeit
 
#指定在cpu运行
def cpu_run():
    with tf.device('/cpu:0'):
        cpu_a = tf.random.normal([10000, 1000])
        cpu_b = tf.random.normal([1000, 2000])
        c = tf.matmul(cpu_a, cpu_b)
    return c
 
#指定在gpu上运行 
def gpu_run():
    with tf.device('/gpu:0'):
        gpu_a = tf.random.normal([10000, 1000])
        gpu_b = tf.random.normal([1000, 2000])
        c = tf.matmul(gpu_a, gpu_b)
    return c

cpu_time = timeit.timeit(cpu_run, number=10)
gpu_time = timeit.timeit(gpu_run, number=10)
print("cpu:", cpu_time, "  gpu:", gpu_time)

在这里插入图片描述

卸载重装

如果安装出错可以卸载重装:
tensorflow-gpu卸载

注:个人安装过程,仅供学习参考,如有不足,欢迎指正!

原文地址:https://blog.csdn.net/weixin_43412762/article/details/129824339

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。

如若转载,请注明出处:http://www.7code.cn/show_9771.html

如若内容造成侵权/违法违规/事实不符,请联系代码007邮箱:suwngjj01@126.com进行投诉反馈,一经查实,立即删除!

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注