win10+1050Ti+tensorflow-gpu2.2.0+cudatoolkit10.1+cudnn7.6.5配置Tensorflow-gpu框架(无须本地安装cuda+cudnn)

安装心理路程(吐槽)

  历时两天时间,终于将Tensorflow-gpu安装成功, 期间观看不下于50篇的博客,也尝试多种的安装方法,其中电脑驱动就来回捣鼓数次,然后就是cuda和cudnn下载了多个版本,现在后悔它们都没用了,还有Python的版本问题也捣鼓了许久,呜呜呜(心疼手机流量)…最后我重装的系统,将win10的企业版换成了专业版,专业版一次成功,但应该和电脑系统没啥关系…个人猜测
  虽然失败了很多次,期间也想过放弃,使用CPU跑,但笔记的cpu跑深度学习,大规模数据和复杂网络结果出的真的慢,还是GPU香,废话不多说了,开干…
总结目前安装tensorflow-gpu主要是两种途径:
① 直接本地安装(cuda+cudnn,不推荐,如何第一次没成功卸载特别难受)
② 利用conda安装(cudatoolkit+cudnn,推荐,贼舒服)

安装环境选择

使用群体:使用win10的进行深度学习的同学,安装ubuntu(linux)的同学可以不用看了

  1. 整个环境的介绍:
    ① 安装Anaconda3:目的创建虚拟环境
    ② vscode:进行Python code,方便
    ③ 框架: Tensorflow

  2. 版本选择:
    ① NVIDIA显卡驱动:可以为最新
    ② Anaconda3: 直接最新版,Anaconda3支持python版本向下兼容
    ③ vscode:直接最新版
    ④ python环境:python 3.7(这个待会创建虚拟环境会设置)
    ⑤ cudatoolkit版本:10.1(重点)
    ⑥ cudnn版本:7.6.5(重点)
    ⑦ tensorflow-gpu:2.2.0

  3. 补充说明
    ① 官网说tensorflow2.1版本后tensorflow中包含GPU,但我没有试过,我安装仍然是tensorflow-gpu,感兴趣可以重创环境试下
    tensorflow-gpu和cudatoolkit和cudnn版本要对应,否则会出现意想不到的错误,下图是目前的最新版本对应:
    在这里插入图片描述

    查询Tensorflow版本对应的: tensorflow官方技术文档
    ③ 注意自己的电脑驱动支持的cuda版本,查看到支持版本一定大于等于将下载的版本:
    在这里插入图片描述
    上图中,表明我的电脑驱动版本为457.20,支持的最高版本的cuda为11.1(也就是我能安装的cuda不能高于11.1,如果想装更高的版本cuda,可以到官网下载驱动,更新自己的驱动)

安装过程详解

在这里插入图片描述
贴下我的配置依据

  1. 安装Anaconda3
  2. 更新下自己的conda的默认镜像源
  3. 创建虚拟环境:

conda create -n tensorflow2.2(名字,可修改) python=3.7
conda env list # 查存在的环境
conda activate tensorflow2.2 #进入虚拟环境

  1. 安装tensorflow-gpu2.2.0版本,使用pip安装,采用豆蔻镜像

pip install tensorflow-gpu==2.2.0 -i https://pypi.douban.com/simple/

  1. 安装cudatoolkit10.1+cudnn7.6.5

conda install cudatoolkit=10.1 cudnn=7.6.5

至此安装工作结束,推荐大家完全按照上述指令在cmd中进行操作,等成功后可尝试其他版本。

测试

  1. 查看是否安装成功,是够存在GPU
from tensorflow.python.client import device_lib
print(device_lib.list_local_devices())

在这里插入图片描述
2. 测试GPU是否能运行

import tensorflow as tf
import timeit
import os

os.environ['TF_CPP_MIN_LOG_LEVEL'] = '2'  # 代码用于忽略级别 2 及以下的消息(级别 1 是提示,级别 2 是警告,级别 3 是错误)。

with tf.device('/cpu:0'):
    cpu_a = tf.random.normal([10000, 1000])
    cpu_b = tf.random.normal([1000, 2000])
    print(cpu_a.device, cpu_b.device)
with tf.device('/gpu:0'):
    gpu_a = tf.random.normal([10000, 1000])
    gpu_b = tf.random.normal([1000, 2000])
    print(gpu_a.device, gpu_b.device)
def cpu_run():
    with tf.device('/cpu:0'):
        c = tf.matmul(cpu_a, cpu_b)
    return c
def gpu_run():
    with tf.device('/gpu:0'):
        c = tf.matmul(gpu_a, gpu_b)
    return c
# warm up
cpu_time = timeit.timeit(cpu_run, number=10)
gpu_time = timeit.timeit(gpu_run, number=10)
print('warmup:', cpu_time, gpu_time)

cpu_time = timeit.timeit(cpu_run, number=10)
gpu_time = timeit.timeit(gpu_run, number=10)
print('run time:', cpu_time, gpu_time)

print('GPU', tf.test.is_gpu_available())

运行结果:
warmup: 1.0394134999999993 0.2286729000000003
run time: 1.0295364999999999 0.0005075000000003271
GPU True
通过运行时间可以看出,说明tensorflow-gpu安装成功

祝大家都能成功,享受tensorflow-gpu的快乐!!!!!

  • 3
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 6
    评论
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Chuckie今天也要学习!

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值