ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

【tensorflow-2.x-gpu 】python3配置tensorflow-2.x gpu环境(2)

2021-02-12 21:58:32  阅读:370  来源: 互联网

标签:D03 cuda install gpu tensorflow 安装 python3


【tensorflow-2.x-gpu 】python3配置tensorflow-2.x gpu环境<2>

1.背景

参考之前博客:
【tensorflow-2.x-gpu 】python3配置tensorflow-2.x gpu环境(1)
https://blog.csdn.net/jn10010537/article/details/108917295

利用Anaconda3安装tensorflow-2.x gpu。
最近我重装了系统后,按照该博客实现,发现并不能使用GPU,原因是我重装的电脑上并没有安装英伟达的cuda。

之前笔记本上借给同事用了几周,应该是他在我电脑上安装了cuda。所以我在安装了tensorflow-2.x gpu后可以直接使用gpu进行训练以及推理。

本博客演示刷机后的新windows10系统:
安装tensorflow-2.x gpu,并配置cuda,cuDnn,最后成功利用你的GPU进行加速。

说明:
CUDA(Compute Unified Device Architecture)是一种用于GPU通用计算的并行计算平台和编程模型。它以C语言为基础,并多C语言进行了扩展,能够在显卡芯片上执行程序。
CUDA提供了一个深度神经网络的GPU加速库cuDNN(CUDA Deep Neural Network),完成了对卷积、池化、归一化和激活函数层等标准操作的快速实现。

2.TF官网的gpu支持

查看tensorflow官网关于GPU支持:
https://tensorflow.google.cn/install/gpu

对GPU支持的描述总结如下:
对于 Ubuntu 和 Windows,需要安装支持 CUDA® 的显卡,才能实现 GPU 支持。
即,你需要查一下你的显卡是否被CUDA框架所支持,然后安装CUDA软件,配置cudnn(深度学习加速库),再安装tensorflow-gpu,才能使用GPU进行深度学习加速训练以及推理。
注意:这里涉及的显卡是N卡,即英伟达公司的GPU.

下面是TF官网关于cuda环境变量的配置:
在这里插入图片描述

3.查看显卡的计算能力

比如我的是GeForce RTX2060
对应的计算能力是7.5
该GPU是支持CUDA 框架的,支持深度学习加速!

参考英伟达的官网链接:
https://developer.nvidia.com/zh-cn/cuda-gpus
在这里插入图片描述

4.查看TF官网中测试过的构建配置

https://tensorflow.google.cn/install/source#gpu

Linux-GPU构建配置如下:
在这里插入图片描述

Windows-GPU构建配置如下:
在这里插入图片描述
我的操作系统是windows10
考虑到tensorflow-gpu的1.x与2.0这两个版本我都可能使用。下面框选的区域的tensorflow-gpu版本:
tensorflow-gpu1.13.0~2.0.0,我最会频繁的使用:
在这里插入图片描述
我选组的组合是:

序号软件包版本
1python3.6.8
2tensorflow-gpu1.14.0
3CUDA10.0
4cuDNN7.4

5.安装tensorflow-gpu

建议下载whl后,再使用清华镜像源进行pip安装。
如下,先下载tensorflow_gpu-1.14.0-cp36-cp36m-win_amd64.whl,再安装:

pip install -i https://pypi.tuna.tsinghua.edu.cn/simple tensorflow_gpu-1.14.0-cp36-cp36m-win_amd64.whl

如果多次安装不上,那么大概率是你使用的网络很差造成的,请更换更大下载带宽的网络,或者选择在下班人少的时候安装。

注意:下载tensorflow的whl时,你可能遇到RC标志,下面解释一下:
RC->Release Candidate 预发行版
一般出了预发行版后,正式版就要出了。

安装前,查看python包:

C:\Users\Administrator>pip list
Package    Version
---------- -------
pip        21.0.1
setuptools 40.6.2

安装后,查看python包:

E:\E05_project\packages>pip list
Package              Version
-------------------- -------
absl-py              0.11.0
astor                0.8.1
cached-property      1.5.2
gast                 0.4.0
google-pasta         0.2.0
grpcio               1.35.0
h5py                 3.1.0
importlib-metadata   3.4.0
Keras-Applications   1.0.8
Keras-Preprocessing  1.1.2
Markdown             3.3.3
numpy                1.19.5
pip                  21.0.1
protobuf             3.14.0
setuptools           53.0.0
six                  1.15.0
tensorboard          1.14.0
tensorflow-estimator 1.14.0
tensorflow-gpu       1.14.0
termcolor            1.1.0
typing-extensions    3.7.4.3
Werkzeug             1.0.1
wheel                0.36.2
wrapt                1.12.1
zipp                 3.4.0

注意:
此时导入tensorflow会报错,报错如下:

C:\Users\Administrator>python
Python 3.6.8 (tags/v3.6.8:3c6b436a57, Dec 24 2018, 00:16:47) [MSC v.1916 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import tensorflow as tf
Traceback (most recent call last):
  File "D:\D02_pythonDevelop\D02_01_Python3\install_python3.6.8\lib\site-packages\tensorflow\python\platform\self_check.py", line 75, in preload_check
    ctypes.WinDLL(build_info.cudart_dll_name)
  File "D:\D02_pythonDevelop\D02_01_Python3\install_python3.6.8\lib\ctypes\__init__.py", line 348, in __init__
    self._handle = _dlopen(self._name, mode)
OSError: [WinError 126] 找不到指定的模块。

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "D:\D02_pythonDevelop\D02_01_Python3\install_python3.6.8\lib\site-packages\tensorflow\__init__.py", line 28, in <module>
    from tensorflow.python import pywrap_tensorflow  # pylint: disable=unused-import
  File "D:\D02_pythonDevelop\D02_01_Python3\install_python3.6.8\lib\site-packages\tensorflow\python\__init__.py", line 49, in <module>
    from tensorflow.python import pywrap_tensorflow
  File "D:\D02_pythonDevelop\D02_01_Python3\install_python3.6.8\lib\site-packages\tensorflow\python\pywrap_tensorflow.py", line 30, in <module>
    self_check.preload_check()
  File "D:\D02_pythonDevelop\D02_01_Python3\install_python3.6.8\lib\site-packages\tensorflow\python\platform\self_check.py", line 82, in preload_check
    % (build_info.cudart_dll_name, build_info.cuda_version_number))
ImportError: Could not find 'cudart64_100.dll'. TensorFlow requires that this DLL be installed in a directory that is named in your %PATH% environment variable. Download and install CUDA 10.0 from this URL: https://developer.nvidia.com/cuda-90-download-archive
>>> print(tf.__version__)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
NameError: name 'tf' is not defined
>>>

import导入上述tensorflow版本1.14.0报错(我的笔记本显卡是GeForce RTX2060,对应的计算能力是7.5,支持 CUDA 框架的!)
在cmd终端输入 nvcc --version查看cuda版本:
在这里插入图片描述
可以看到我电脑还没安装cuda!需要继续安装cuda

6.安装cuda

6.1 下载 CUDA工具包:
我下载的是cuda_10.0.130_411.31_win10.exe,
顺便提一下:笔记本上安装了Visual Studio Community 2019.

下载地址:
https://developer.nvidia.com/zh-cn/cuda-downloads
但是现在通过该链接下载的是11.1,我会在博文后上传cuda_10.0.130_411.31_win10.exe的资源。
在这里插入图片描述

6.2 安装NVIDIA CUDA 10.0
避免将cuda安装到系统盘(我的系统盘是C盘)!

点击 同意并继续(A)
在这里插入图片描述

安装的时候,选择自定义(高级)安装:在这里插入图片描述

选择安装组件:在这里插入图片描述

在系统盘外安装。如下
在这里插入图片描述

将CUDA Documentation、Samples、CUDA Development分别安装到系统盘之外。
如下自定义了安装目录:

CUDA DevelopmentD:\D03_GeneralDevelop\D03_01_cuda\install\cuda_development
CUDA DocumentationD:\D03_GeneralDevelop\D03_01_cuda\install\cuda_documentation
SamplesD:\D03_GeneralDevelop\D03_01_cuda\install\cuda_samples

在这里插入图片描述
这里需要检测msvs2017版本,本机是2019,这个问题暂无影响。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
6.3 配置cuda环境变量
将 自定义安装目录下的bin 文件夹,即
D:\D03_GeneralDevelop\D03_01_cuda\install\cuda_development\bin
加入系统环境变量。

再次在cmd终端输入 nvcc --version查看cuda版本:在这里插入图片描述

再次导入tensorflow,继续报错如下:
在这里插入图片描述
根据上诉提示,需要安装cuDNN 7(根据上述配置表,选择7.4)

7.下载并配置cuDNN

-7.1 下载 cudnn-10.0-windows10-x64-v7.4.2.24.zip将解压后的bin、include、lib文件夹拷贝至cuDNN文件夹下;

-7.2 将cuDNN文件夹剪切至安装目录下: D:\D03_GeneralDevelop\D03_01_cuda\install\cuda_development

-7.3 将:
D:\D03_GeneralDevelop\D03_01_cuda\install\cuda_development\cuDNN\bin
D:\D03_GeneralDevelop\D03_01_cuda\install\cuda_development\libnvvp
D:\D03_GeneralDevelop\D03_01_cuda\install\cuda_development\extras\CUPTI\libx64
添加至系统环境变量之中。
在这里插入图片描述
再次导入,ok
在这里插入图片描述

8.验证tensorflow的gpu使用

import tensorflow as tf
hello = tf.constant("hello, world!")
sess = tf.Session()
sess.run(hello)

运行如下:
在这里插入图片描述

9.资源

标签:D03,cuda,install,gpu,tensorflow,安装,python3
来源: https://blog.csdn.net/jn10010537/article/details/113791239

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有