常识——windows的tensorflow安装gpu版本,cuda算力只有3.0也可以

文章目录

*
问题
windows安装tensorflow_gpu版本
检查显卡是否支持cuda
查看自己的显卡型号
去官网查看是否支持cuda
检查显卡的cuda算力
按照GPU算力3.0的电脑配置进行配置
安装python3.6的anaconda包
安装tensorflow-gpu 1.4
安装cuda8.0和cudnn6.0
现在cuda和cudnn都有了,是否可以开始安装了?
测试tensorflow能否运行
一些问题
如何知道我安装的tensorflow是cpu还是gpu版本
如何指定cpu或者gpu参与运算
RuntimeError: The Session graph is empty. Add operations to the graph before calling run().
Could not load dynamic library ‘cublas64_10.dll’; dlerror: cublas64_10.dll not found
FutureWarning: Conversion of the second argument of issubdtype from float to np.floating is
查询Anaconda安装路径
pycharm发现一些包安装了但是没有检索到

问题

cpu版本的tensorflow虽然安装方便,但是运行太慢了,同样是手写识别测试,gpu可以把cpu5分钟做完的事情40秒内做完
现在笔记本上大都有独立显卡,而且配置不低,如果不想使用tensorflow时CPU有难,GPU围观,最好还是安装gpu版本吧

常识——windows的tensorflow安装gpu版本,cuda算力只有3.0也可以

; windows安装tensorflow_gpu版本

检查显卡是否支持cuda

CUDA(Compute Unified Device Architecture),显卡厂商NVidia推出的运算平台。 通用并行计算架构,该架构使GPU能够解决复杂的计算问题。
查看cuda中是否有自己电脑显卡的型号
cuda是英伟达的,因此nvida的显卡可以用,其他的绕道,老实安装cpu版本吧

查看自己的显卡型号

常识——windows的tensorflow安装gpu版本,cuda算力只有3.0也可以

; 去官网查看是否支持cuda

http://developer.nvidia.com/cuda-gpus

常识——windows的tensorflow安装gpu版本,cuda算力只有3.0也可以

检查显卡的cuda算力

非常必须的是检查显卡对于cuda的算力 ,不同版本的tensorflow-gpu版本对显卡的算力要求不同,如果显卡算力达不到tensorflow-gpu版本期望的算力,他将不会使用你的GPU进行计算,也就是说安了也没用,它只是使用你的cpu计算
如下报错提示:
忽略具有计算能力3.0的可见gpu设备。所需的最小Cuda能力为3.5

因此应该下载和你的显卡算力相匹配的tensorflow-gpu版本
算力查看
后面的小数就是cuda的计算能力
我的显卡型号是gt645m显卡,算力只有3.0
不得不使用tensorflow-gpu 1.4+cuda8.0+cuddn6.0,这种tensorflow配置,再高的gpu版本,算力就要求3.5以上了
而且python3.6可以使用tensorflow-gpu 1.4,python3.7就不支持了,因此这些配置都是环环相扣的,在此仅仅针对于我的电脑配置
如果你的显卡很好,也可以使用此配置,因为只要算力超过3.0都能用,也不耽误你的gpu计算,而且也比较稳定
当然,最新的tensorflow版本会有一些革新,你可以使用更新的tensorflow-gpu版本体验新功能,查看那种tensorflow-gpu版本所要求的cuda算力门槛就行了

常识——windows的tensorflow安装gpu版本,cuda算力只有3.0也可以

; 按照GPU算力3.0的电脑配置进行配置

安装python3.6的anaconda包

官方地址:https://repo.anaconda.com/archive/
清华大学镜像:https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/
3.6的对应的是 Anaconda 5.2,5.3以后的都是python 3.7的了,安装时要注意版本对应问题,操作系统、以及32bit与64bit的选择。

安装时注意勾选自动配置环境变量path,

安装tensorflow-gpu 1.4

安装好anaconda包后以管理员身份进入Anaconda Prompt命令管理工具
因为涉及到一些文件的下载和安装,Anaconda Prompt需要权限

常识——windows的tensorflow安装gpu版本,cuda算力只有3.0也可以

进入cmd,运行pip install tensorflow-gpu==1.4.0
等待tensorflow-gpu自动从网络上下载文件安装完成,
如果中途有网络断了,重新运行此命令,已经下载的文件不会重复下载,会自动识别,从之前断掉的位置下载,因此不用担心

; 安装cuda8.0和cudnn6.0

为什么说这两个要一起安装?
因为他们是一体的,版本互相支持,但是被分成了两个文件,需要从官网分开下载,下错了一个都不能用,非常扯淡
点击他们的官网先注册一个账号,因为下载cudnn6.0的时候需要登录才能下载
或者先不注册,等下载的时候有弹窗,然后注册也行

从官网下载
cuda8.0
正确的8.0版本下载地址: https://developer.nvidia.com/cuda-80-ga2-download-archive
根据自己的电脑系统类型和版本选择
后面的两个8.0本体包和补丁包都要下载,暂时不要安装,接下来下cudnn6.0

常识——windows的tensorflow安装gpu版本,cuda算力只有3.0也可以
cudnn6.0下载地址
界面非常具有迷惑性,进入界面需要注册账号,同时展示的还不是cudnn6.0的
https://developer.nvidia.com/rdp/cudnn-download
常识——windows的tensorflow安装gpu版本,cuda算力只有3.0也可以
查看历史版本
注意到了吗?cuda和cudnn的版本都是相互对应的

常识——windows的tensorflow安装gpu版本,cuda算力只有3.0也可以

现在cuda和cudnn都有了,是否可以开始安装了?

不行,因为想要安装cuda需要安装Visual Studio 2015
CUDA8.0不支持Visual Studio 2017,使用VS2017会报错。
安装cuda8.0需要用到Visual Studio 2015的一些库
因此需要先安装Visual Studio 2015
ISO文件下载
https://download.microsoft.com/download/8/4/3/843ec655-1b67-46c3-a7a4-10a1159cfa84/vs2015.3.ent_enu.iso
使用虚拟光驱加载iso文件,然后安装即可
安装时需要注意勾选自定义配置,别的选项都可以使用默认值。VS2015的默认安装不包括C++的编译器,必须手动勾选Visual C++,不然会面临后续的CUDA编译错误。

常识——windows的tensorflow安装gpu版本,cuda算力只有3.0也可以

Visual Studio 2015安装好后就可以安装cudn8.0了,选择一个地址开始安装
先安装cuda本体

常识——windows的tensorflow安装gpu版本,cuda算力只有3.0也可以
然后再安装cuda的补丁,即同cuda8.0一起下载的第二个文件

然后解压cudnn6.0的压缩包,bin, include, lib,将文件夹下的内容全部复制到C:\ProgramData\NVIDIA GPU Computing Toolkit\v8.0这个文件夹下
此时去查看系统变量
CUDA_PATH和CUDA_PATH_V8.0已经存在,这是在安装cuda时自动创建的,路径是C:\ProgramData\NVIDIA GPU Computing Toolkit\v8.0

常识——windows的tensorflow安装gpu版本,cuda算力只有3.0也可以
查看cuda是否安装成功
V要大写,不然不识别,真是人才啊,当初使用v看到错误迷惑了好久
常识——windows的tensorflow安装gpu版本,cuda算力只有3.0也可以
查看cuda安装位置
常识——windows的tensorflow安装gpu版本,cuda算力只有3.0也可以
查看cuda是否安装成功
跳转到cuda安装的路径
常识——windows的tensorflow安装gpu版本,cuda算力只有3.0也可以

常识——windows的tensorflow安装gpu版本,cuda算力只有3.0也可以
结尾都是pass就成功了
常识——windows的tensorflow安装gpu版本,cuda算力只有3.0也可以
另外一种测试的方式是
双击打开cuda安装路径下的指示文件,会启动vs2015
常识——windows的tensorflow安装gpu版本,cuda算力只有3.0也可以
右键编译可以编译得到deviceQuery和bandwidthTest两个exe文件
常识——windows的tensorflow安装gpu版本,cuda算力只有3.0也可以

同上面一样,识别出了gpu,并且pass即可
如果出错也正好可以检测cuda是否正确安装

TRK0005: Failed to locate: “CL.exe”. The system cannot find the file specified.系统找不到CL.exe,无法编译文件。面对这个错误那就是你没选Visual C++,需要重新安装时选上这个组件。
MSB8036: Windows SDK 8.1 was not found.如果你同时看到了这个错误说你没有安装 Windows SDK 8.1,那也可以通过安装C++ Redistribution这个来解决。
error MSB3721:路径错误,去看看路径是否存在中文

常识——windows的tensorflow安装gpu版本,cuda算力只有3.0也可以

; 测试tensorflow能否运行

import tensorflow as tf
a = tf.constant([1.0, 2.0, 3.0, 4.0, 5.0, 6.0], shape=[2, 3], name='a')
b = tf.constant([1.0, 2.0, 3.0, 4.0, 5.0, 6.0], shape=[3, 2], name='b')
c = tf.matmul(a, b)
sess = tf.Session(config=tf.ConfigProto(log_device_placement=True))
print(sess.run(c))

此时可以发现调用了gpu运行,并得到了结果

常识——windows的tensorflow安装gpu版本,cuda算力只有3.0也可以
如果你发现了如下的错误,这里能够解决

一些问题

如何知道我安装的tensorflow是cpu还是gpu版本

import os
from tensorflow.python.client import device_lib

os.environ["TF_CPP_MIN_LOG_LEVEL"] = "99"

if __name__ == "__main__":
    print(device_lib.list_local_devices())

这里会列出可以使用计算的设备,cpu和gpu已经列出,如果是cpu版本只会有cpu

常识——windows的tensorflow安装gpu版本,cuda算力只有3.0也可以

如何指定cpu或者gpu参与运算

import tensorflow as tf
使用CPU进行计算
with tf.device("/cpu:0"):
    a = tf.constant([1.0, 2.0, 3.0, 4.0, 5.0, 6.0], shape=[2, 3])
    b = tf.constant([1.0, 2.0, 3.0, 4.0, 5.0, 6.0], shape=[3, 2])
    c = tf.matmul(a, b)
    # 查看计算时硬件的使用情况
    sess = tf.Session(config=tf.ConfigProto(log_device_placement=True))
    print(sess.run(c))

    #使用CPU进行计算
    with tf.device("/cpu:0"):
        a = tf.constant([1.0,2.0,3.0,4.0,5.0,6.0],shape=[2,3])
        b = tf.constant([1.0,2.0,3.0,4.0,5.0,6.0],shape=[3,2])
        c = tf.matmul(a,b)
        #查看计算时硬件的使用情况
        sess = tf.Session(config=tf.ConfigProto(log_device_placement=True))
        print(sess.run(c))

常识——windows的tensorflow安装gpu版本,cuda算力只有3.0也可以
通过tf.device可以指定计算时使用的设备,0表示设备的个数。如果想要使用GPU进行计算,就将CPU改成GPU。

RuntimeError: The Session graph is empty. Add operations to the graph before calling run().

这是你的tensorflow是2.x的,不能向下兼容1.x的
tf.compat.v1.disable_eager_execution()
可以解决版本迁移问题

Could not load dynamic library ‘cublas64_10.dll’; dlerror: cublas64_10.dll not found

在cuda的目录找到提示缺失的dll文件,或者使用everythin找到对应的dll文件
然后将dll文件复制到c:\windows\system32文件夹下

FutureWarning: Conversion of the second argument of issubdtype from float to np.floating is

解决思路
包内出错,是h5py包

解决办法
对h5py进行更新升级
pip install h5py==2.8.0rc1

查询Anaconda安装路径

conda info –env

可以知道当前有哪些环境,以及环境路径

pycharm发现一些包安装了但是没有检索到

查看python的模块路径方法是
import sys
print sys.path

在这个python系统路径中加入新的模块路径的三种方法,
1、添加环境变量PYTHONPATH,python会添加此路径下的模块,在.bash_profile文件中添加如下类似行:
export PYTHONPATH=$PYTHONPATH:/usr/local/lib/python2.7/site-packages
2、在site-packages路径下添加一个路径配置文件,文件的扩展名为.pth,内容为要添加的路径即可
3、sys.path.append()函数添加搜索路径,参数值即为要添加的路径。

Original: https://blog.csdn.net/lidashent/article/details/121060811
Author: lidashent
Title: 常识——windows的tensorflow安装gpu版本,cuda算力只有3.0也可以

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/521796/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

  • 【自动注入·名称】autowireByName()详解

    【Spring源码系列- IOC】 1 【Spring源码】0.安装Gradle环境 2 【Spring源码】1.下载与编译_pom relocation to an other …

    人工智能 2023年6月28日
    095
  • Python中plt绘图包的基本使用方法

    在对数据进行处理和分析时,我们经常需要借助可视化工具,来将数据的一些特征以更易于我们理解的方式展现出来。在学习对Titanic – Machine Learning f…

    人工智能 2023年7月4日
    0101
  • 【CUDA安装详细教程】

    目录 前言 一、cuda的下载及安装 * 1.cuda版本 2.CUDA toolkit Download 3.cuda安装 二、cuDNN下载及安装 * 1.cuDNN下载 2….

    人工智能 2023年6月26日
    091
  • pytorch快速入门教程

    使用pytorch进行深度学习的一般步骤 构建自己的模型,必须继承自 nn.Module,且必须实现两个方法: __init()__(self), forward()。 一般单独一…

    人工智能 2023年7月23日
    061
  • 【Python】国内生产总值分析预测

    ✨博文作者 wangzirui32💖 喜欢的可以 点赞 收藏 关注哦~~👏 我的第162篇原创作品👉本文首发于CSDN,未经许可禁止转载hello,大家好,我是wangzirui3…

    人工智能 2023年6月16日
    0134
  • Python 深拷贝和浅拷贝详解

    浅拷贝,指的是 重新分配一块内存, 创建一个新的对象,但里面的元素是 原对象中各个子对象的引用。 深拷贝,是指 重新分配一块内存,创建一个新的对象,并且将原对象中的元素,以递归的方…

    人工智能 2023年7月5日
    065
  • 美团外卖美食知识图谱的迭代及应用

    菜品是外卖交易过程的核心要素,对菜品的理解也是实现外卖供需匹配的重点。今天我们将一次推送三篇文章,系统地介绍了美团外卖美食知识图谱的构建和应用。《美团外卖美食知识图谱的迭代及应用》…

    人工智能 2023年6月1日
    070
  • 《数据挖掘基础》实验:Weka平台实现分类算法

    实验目的 进一步理解分类算法(决策树、贝叶斯),利用weka实现数据集的分类处理,学会调整模型参数,以图或树的形式给出挖掘结果,并解释规则的含义。 实验要求 随机选取数据集(UCI…

    人工智能 2023年6月30日
    054
  • Beam search 以及在语音识别(pure E2E)中的使用

    Author: Xin Pan Date: 2021.2.22 语音识别(ASR)中解码时一个很重要的过程。在其中不论是传统语音识别或是E2E的新结构虽然LM也许不存在了,但是解码…

    人工智能 2023年5月27日
    0129
  • 混淆矩阵 (Confusion Matrix)

    假设现在有一个分类器A,这个分类器A的作用是告诉一张图片是不是汉堡,那我想知道这个分类器A的效果好不好,应该怎么办呢? 最简单的方法是将大量的样本放进到费雷其A当中,让他自己判断这…

    人工智能 2023年7月25日
    053
  • MongoDB下载安装教程(Windows)

    文章目录 * – MongoDB下载安装教程(Windows) – + * 1. 下载过程 * 2. 安装过程 * 3. 配置 * 4. 启动 * 5. 添…

    人工智能 2023年7月30日
    054
  • day6

    24.两两交换链表的节点 注意,首先是判断后面够不够两个节点。依然是使用虚拟节点。有一个需要注意的地方:要更新pre节点。 19.删除链表的倒数第 N 个结点 删除其中的节点,可以…

    人工智能 2023年6月4日
    081
  • NLP 实战 (5) | 标签、技能树和知识图谱

    我们都知道数据有两类:”结构化数据”和”非结构化数据”。如果有”结构化数据”,我们只要对结构化数据做增删查改…

    人工智能 2023年6月1日
    085
  • 手把手教你安装CUDA(一看就会)

    1.背景 学习深度学习的话,肯定需要安装PyTorch和TensorFlow,安装这两个深度学习框架之前得安装CUDA. CUDA是什么? CUDA是一个并行计算平台和编程模型,能…

    人工智能 2023年6月16日
    090
  • 基于OpenCV实现的图像拼接(配准)案例

    0 工具、环境、平台 -VS2015 C++-OpenCV 4.5.1-Windows 10 64位 1 图像拼接的简要步骤 Note: 两幅图像的拼接需要满足基本条件,一是图像本…

    人工智能 2023年6月18日
    082
  • 图像处理(十):傅里叶变换

    一、在opencv中实现图像的傅里叶变换 傅里叶变换的物理意义是将图像的灰度分布函数变换为图像的频率分布函数;傅里叶逆变换是将图像的频率分布函数变换为灰度分布函数。 正变换: df…

    人工智能 2023年6月20日
    094
亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球