python3.6安装tensorflow gpu_tensorflow-gpu安装的常见问题及解决方案

装tensorflow-gpu的时候经常遇到问题,自己装过几次,经常遇到相同或者类似的问题,所以打算记录一下,也希望对其他人有所帮助

基本信息

tensorflow-gpu

pip安装(virtualenv等虚拟安装实质也是pip安装,只是建了个独立的环境,不会影响系统环境,查问题比较容易,最多重新再创建一个干净的环境再来)

安装完之后会用import tensorflow看是否安装成功,结果报错,主要有碰到下面两大类报错信息:

1.ImportError: DLL load failed: 找不到指定的模块 之pywrap_tensorflow.py

报错信息里面有大量的pywrap_xxx相关的脚本报错:

这类错误出现的最多,主要有几大类原因:

(1)Microsoft Visual C++ 2015 Redistributable Update 3 没有装

这个是自己第一次装的时候碰到的,下载 vc_redist.x64.exe安装之后就ok了

再生波澜

自己今天再装的时候,下载下来发现安装不了,看日志是说我的vs版本比较新,所以不能装。这个时候可以可以看看自己本机的system32下面有没有MSVCP140.DLL这个文件

其他解决方案

有些网友说用的比较新的tensorflow,装了2017的Redistributable包就好了,你也可以试试

我再装完2017的包之后,并且检查自己系统中已经有了MSVCP140.DLL文件依旧报同样的错误

(2)cuda和cudnn版本不一致

这个问题也是非常多的,我装了很多次的cuda基本上没有安装失败过,但是遇到和cudnn版本不一致的情况。因为下载的cuda默认是最新版本的cuda10.0,而我下载的cudnn当时用的旧的,也就是给cuda9.0的,所以后面换了一下也就解决问题了

我这里默认点完自己系统的配置(win10x64)得到的是最新的cuda10-win10,可以点击最右边的Legacy Releases看到更早一点的版本

cuda安装和验证

一路next貌似没遇到过啥问题

验证的话:在命令行下面输入nvcc -V,看是否OK

另外sample下面的两个是deviceQuery.exe和bandwidthTest.exe执行都没有出现问题过

要登录nvidia developer账号

点开最下面的Archived cuDNN Releases可以看到更多的版本,因为我下载的是cuda-9.0,稳妥起见,我下载的cudnn版本是:Download cuDNN v7.0.5 (Dec 5, 2017), for CUDA 9.0

按照道理来讲这里的Download cuDNN v7.5.0 (Feb 21, 2019), for CUDA 9.0应该也可以,下次验证再确认一下。

cudnn安装

在下载的页面可以打开Installation-Guide看一下windows的cudnn安装指南,主要有以下操作

(1)把解压缩的cudnn下面的bin、lib和include三个文件夹下面的文件拷贝到cuda安装的目录下面同名的目录下面

cuda路径:C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v9.0

(2)把CUDA路径添加到环境变量的CUDA_PATH中

cuda本书在安装的时候会把cuda的安装路径添加的环境变量的path中(注意:是在path的最前面,不容易看到),所以不必自己把cuda的路径添加到path中

这里自己是把解压后的cudnn放到d盘,比如:D\cuda,然后把D:\cuda\bin放到了path中,因为网上有些人是这样建议的。但是看cudn的安装指南并没有提及到,所以感觉应该不需要

很遗憾的是,今天保证这里版本一直之后,还是依旧报 = =

(3)tensorflow-gpu版本不一致

安装tensorflow-gpu的时候一般都是用的默认指令:

结果是会把tensorflow-gpu的最新版本装上,我的版本情况如下:

(1)python:3.6.0 (2)cuda-9.0 (3)cudnn-7.0 (4)tensorflow-gpu-1.13.0

最新的cuda是10.0了,但是我装的是9.0,所以我把tensorflow-gpu装到1.12.0,然后完美解决问题了。_

这里说明tensorflow-gpu1.13.0估计是用了最新的cuda版本中的内容,也算是版本不一致了。

如果跟我一样,上面的问题都解决了,那就看看是不是这里版本太新或者太旧了。这里有个插曲,因为我开始不小心把1.12.0输成了1.2.0,结果还是不行,没注意结果纯粹浪费了一段时间。

(4)其他python库版本问题等

网上有些人还遇到numpy等python库版本等的问题,我倒是没遇到,因为安装tensorflw-gpu的时候会把相关的依赖包都给下载下来

2.TensorFlow pip installation issue: cannot import name 'descriptor'之graph_pb2.py

报错信息如下有graph_xxx相关的脚本报错:

这个我碰到过两次,都是protobuf的版本高了的缘故,网上搜到的也是这个原因,把protobuf的版本从3.6.1降到3.6.0解决

参考

总结

以上所述是小编给大家介绍的tensorflow-gpu安装的常见问题及解决方案,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对服务器之家网站的支持!如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

原文链接:https://blog.csdn.net/pkxpp/article/details/88925868

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/501805.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

php env 没有值,PHP DOTENV无法加载env变种

我正在使用php dotenv for env vars for my php application .自述文件说我可以将 php dotenv 加载到我的应用程序中:$dotenv new Dotenv\Dotenv(__DIR__);$dotenv->load();当我尝试登录时,出现500错误 . 我试着 var_dump ing我的 $dotenv var看看它…

pywin32 获取窗口句柄_Excel VBA | 这个窗口居然关不掉

我的目标:让中国的大学生走出校门的那一刻就已经具备这些office技能,让职场人士能高效使用office为其服务。支持我,也为自己加油!还有关不掉的窗体?先来看下效果:通过上图,大家很容易看出二者之…

python mysql驱动写入datetime类型的数据_解决python写入mysql中datetime类型遇到的问题...

刚开始使用python,还不太熟练,遇到一个datetime数据类型的问题:在mysql数据库中,有一个datetime类型的字段用于存储记录的日期时间值。python程序中有对应的一个datetime变量dt。现在需要往mysql数据库中添加记录,每次…

php 函数命名 特殊字符,php 特殊字符处理函数

php 特殊字符处理函数发布于 2014-09-27 23:15:58 | 202 次阅读 | 评论: 0 | 来源: 网友投递PHP开源脚本语言PHP(外文名: Hypertext Preprocessor,中文名:“超文本预处理器”)是一种通用开源脚本语言。语法吸收了C语言、Java和Perl的特点,入门…

hough变换连接边缘matlab,边缘检测与Hough变换实验报告 Matlab - 图文

《边缘检测与Hough变换实验报告 Matlab - 图文》由会员分享,可在线阅读,更多相关《边缘检测与Hough变换实验报告 Matlab - 图文(5页珍藏版)》请在人人文库网上搜索。1、边缘检测与Hough变换实验报告 Matlab - 图文边缘检测与Hough变换 实验目的&#xff…

python玫瑰花数量的含义_玫瑰花数量代表含义

个人收集整理-ZQ1 / 3支玫瑰一心一意,一见钟情.约会求婚赠花朵你是我地唯一朵玫瑰代表我地心中只有你支玫瑰成双成对,喜结良缘.夫妻,恋人互增朵你浓我浓,世界只有你和我支玫瑰我爱你赠爱人,朋友朵玫瑰代表我爱你支玫瑰四季平安赠友人,居家朵誓言、承诺朵玫瑰代表至死…

php获取视频第一帧生成gif,thinkphp如何从gif提取第一帧生成静态缩略图

在开发app项目中,为了节省以及加快客户端的加载速度,在展示gif的位置需要提供静态图加载,点击放大才加载实际的动态图片。那么在thinkphp中如何使用GD库去截取gif第一帧生成静态缩略图,具体看下面实现的方式。1、修改文件/ThinkPH…

cassss服务未启动_电梯启动死机故障处理方法

电梯情况描述:广东奥的斯,有机房 梯龄5年故障现象描述:现场人员反馈,停梯一晚,第二天开梯,门一开就死机,显示HAD,断电复位后电梯正常维修过程描述:1、到达现场查看历史故…

php 位 逻辑,php – 在Laravel中放置菜单逻辑的位置?

Note: this answer was written for Laravel 3 and might or might not work with the most recent Laravel 4我最喜欢的创建动态菜单的方法是通过将菜单部分与主布局分开并通过Laravel’s Composer注入菜单数据来实现的(不要将它与Composer PHP包管理器混淆,它们是不同的)Titl…

python子进程的输出不可见_python-输出子进程调用的命令行?

美观且可扩展的方法我一直在使用这样的东西:#!/usr/bin/env python3import osimport shleximport subprocessimport sysdef run_cmd(cmd, cwdNone, extra_envNone, extra_pathsNone, dry_runFalse):if extra_env is None:extra_env {}newline_separator \\\nout …

双色球python十种算法_python : 蒙特卡罗算法 应用于双色球

参考书:算法设计与分析 王晓东 编著 :第7章 概率算法 7.5 蒙特卡罗算法http://www.gdfc.org.cn/datas/history/twocolorball/history_1.html 抓取双色球开奖数据2017001,09,11,14,20,25,26,152017002,15,19,23,24,25,32,032017003,01,04,08,15,27,32,16.…

红包指定分配金额php,php仿微信红包分配算法的实现方法_PHP

本文实例讲述了php仿微信红包分配算法的实现方法。分享给大家供大家参考,具体如下:/*** 红包分配:把一定金额随机分配给指定人数** param int $money 用于分配的金额* param int $num 分配人数*/function RandomMoney($money, $num) {echo &q…

python 大学教授整理_剑桥大学教授用时35天亲自整理,Python超详细的基础笔记

python简介python是一种面向对象的解释型计算机程序设计语言,python的是吉多范罗苏姆(Guido van Rossum)于1989年发明任何语言都有优缺点,python也不例外,python的优点是简单易懂、可移植性、可扩展性、可嵌入性,python的缺点&…

php 分析css,全面分析css属性选择器

1.[class~"flower"]:选中有flower的classclass"flower ss"class"ss flower"2.[class|top]:选择以top为top开头的class需要有—相连 或者单独的topclass"top-ss"class"top"class"top-ss"//选…

合振动的初相位推导_基于振动信号的机械设备故障诊断(一)

1.概述振动在旋转机械设备故障中占了很大比重,是影响设备安全,稳定运行的重要因素。振动直接反应了设备的健康状况,是设备安全评估的重要指标。通过对振动分析方法的调查,熟悉一般的振动分析流程及方法,从而对检测设备…

不安装oracle 连接数据库,不安装oracle 连接服务器oracle数据库方法

1:http://eduunix.ccut.edu.cn/index2/database/Oracle%20Instant%20Client/ 下载你需要的Oracle Instant Client、免安装 Oracle 客户端使用 PL/SQL 连接 Oracle 大家都知道,用 PL/SQL 连接 Oracle ,是需要安装 Oracle 客户端软件的。有没…

python找出10000以内的质数_【Python学习】打印10000以内的所有素数

摘要: 普及一下素数,初中学的都忘记了 百度:质数(prime number)又称素数,有无限个。质数定义为在大于1的自然数中,除了1和它本身以外不再有其他因数的数称为质数。 基本判断思路:在一般领域,对正…

linux 启动db2 服务器,Linux系统设置DB2等服务开机启动的过程

Linux系统中向要设置开机启动,就要通过代码来实现。通过编写脚本能够把服务加到Linux开机启动项中,本文就来介绍一下Linux系统中设置DB2等服务开机启动的过程。1.转到/etc/init.d 目录下。以root身份执行Shell代码cd /etc/init.d2.编写DB2启动脚本Shell代…

spring elasticsearch 按条件删除_SpringBoot2 高级案例(08):整合 ElasticSearch框架,实现高性能搜索引擎...

一、安装和简介ElasticSearch是一个基于Lucene的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口。Elasticsearch是用Java开发的,并作为Apache许可条款下的开放源码发布,是当前流行的企业级搜索引擎。ElasticSe…

linux创建vnc服务器,五步建立一个VNC Linux服务器

【51CTO快译】VNC(Virtual Network Computing)可以让你登录进到远程服务器的桌面上(相比之下,SSH的X11只能让你在本地机器上打开几个窗口)。这个很有用,设置起来也十分方便。***步我是用的是vnc4(还有其他选项,比如TightVNC),所以…