conda安装tensorflow-gpu简洁版_win10 tensorflow2.2 安装注意事项

ce3c7f2f56c1d9898a9f2c7b1b8acfb8.png

学习新技术有两座大山,一座是安装配置环境,另一座是调试bug。

对于想学习人工智能开发的人来说,安装配置tensorflow是必不可少的一步,这个过程对于初次接触的人来说,到处都是火坑。下面大家跟我一起,看看都会踩到哪些雷!

一、安装tensorflow

如果安装tensorflow CPU版本,可以用这个命令:

pip install tensorflow

如果安装tensorflow GPU版本,可以用这个命令:

pip install tensorflow-gpu

但这样的话,因为访问的是国外的网站,速度慢的会让你怀疑人生!

27737a44c47071b593a315a3af38d1e7.png

所以我强烈建议大家用国内清华源的镜像

如果安装CPU版:

pip install -i https://pypi.tuna.tsinghua.edu.cn/simple tensorflow

如果安装GPU版:

pip install -i https://pypi.tuna.tsinghua.edu.cn/simple tensorflow-gpu

但有时使用清华源的地址,网络总是莫名其妙的中断,碰到这种情况可以换豆瓣源的镜像地址

https://pypi.douban.com/simple

试试,一般就OK了。

二、测试tensorflow安装是否成功

打印一下版本号,看一下安装是否成功

import tensorflow as tfprint(tf.__version__)

如果正常显示tensorflow的版本号,则一切OK;但如果出现下面的错误提示:

Failed to load the native TensorFlow runtime.

Traceback (most recent call last):File "<ipython-input-6-64156d691fe5>", line 1, in <module>import tensorflow as tfFile "C:UsersHonorVanAppDataRoamingPythonPython36site-packagestensorflow__init__.py", line 24, in <module>from tensorflow.python import pywrap_tensorflow  # pylint: disable=unused-importFile "C:UsersHonorVanAppDataRoamingPythonPython36site-packagestensorflowpython__init__.py", line 49, in <module>from tensorflow.python import pywrap_tensorflowFile "C:UsersHonorVanAppDataRoamingPythonPython36site-packagestensorflowpythonpywrap_tensorflow.py", line 74, in <module>raise ImportError(msg)ImportError: Traceback (most recent call last):File "C:UsersHonorVanAppDataRoamingPythonPython36site-packagestensorflowpythonpywrap_tensorflow.py", line 58, in <module>from tensorflow.python.pywrap_tensorflow_internal import *File "C:UsersHonorVanAppDataRoamingPythonPython36site-packagestensorflowpythonpywrap_tensorflow_internal.py", line 28, in <module>_pywrap_tensorflow_internal = swig_import_helper()File "C:UsersHonorVanAppDataRoamingPythonPython36site-packagestensorflowpythonpywrap_tensorflow_internal.py", line 24, in swig_import_helper_mod = imp.load_module('_pywrap_tensorflow_internal', fp, pathname, description)File "D:ProgramDataAnaconda3libimp.py", line 243, in load_modulereturn load_dynamic(name, filename, file)File "D:ProgramDataAnaconda3libimp.py", line 343, in load_dynamicreturn _load(spec)
ImportError: DLL load failed: 找不到指定的模块。Failed to load the native TensorFlow runtime.See https://www.tensorflow.org/install/errorsfor some common reasons and solutions.  Include the entire stack trace
above this error message when asking for help.

有人说是因为python版本和tensorflow版本不匹配,要么降低python版本,要么降低tensorflow版本。

如果不是python版本和tensorflow版本不匹配,比如我的当前环境为python3.6.5,安装tensorflow的版本为2.2,win10 64位,pip 20.0,版本完全匹配呀~ 那是为什么呢?

fa244ecffa4f61e12cc2542ee177dc36.png

如果你前面配置的是CPU版,可能是缺少类库MSVCP140.DLL。

那么在这个地址https://www.microsoft.com/en-us/download/details.aspx?id=53587下载安装即可。

这样就能搞定CPU版的tensorflow。

三、搞定tensorflow GPU版的问题

如果你安装的是GPU版,那么接着安装cuda和cudnn,正常next就可以了,只需要注意环境变量path配一下,把cudnn的文件复制到cuda的目录里就OK了。

但是tensorflow对cuda和cudnn的版本也有要求。

tensorflow2.2,通过官网了解只能对应装10.1版本的cuda,10.0的还不行。

7dafed4d5ffdba2fc9de9d4e5b133bc9.png

然后再找10.1cuda对应的cudnn7.6.5。这个显卡加速库就算是安装成功了。

但如果报驱动和运行版本不对应的错误:

CUDA driver version is insufficient for CUDA runtime versionailed.

可能需要卸载工具包,再安装对应的版本。

pip uninstall cudnn ; pip uninstall cudatoolkit

cb54480edd000c2682f4af16369d3c13.png

但在卸载前要先用pip list 命令看看有没有这些东东。如果没有,你可以尝试更新显卡驱动,到英伟达官网https://www.nvidia.cn/Download/index.aspx?lang=cn选择对应的显卡型号更新即可。

5df99c568c93e7773d668bdafe8bf399.png

比如我的显卡是老掉渣的GTX1060,最后显示一切OK。

I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library cudart64_101.dll
I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library nvcuda.dll
I tensorflow/core/common_runtime/gpu/gpu_device.cc:1561] Found device 0 with properties: 
pciBusID: 0000:01:00.0 name: GeForce GTX 1060 computeCapability: 6.1
coreClock: 1.6705GHz coreCount: 10 deviceMemorySize: 6.00GiB deviceMemoryBandwidth: 178.99GiB/s
I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library cudart64_101.dll
I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library cublas64_10.dll
I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library cufft64_10.dll
I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library curand64_10.dll
I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library cusolver64_10.dll
I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library cusparse64_10.dll
I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library cudnn64_7.dll
I tensorflow/core/common_runtime/gpu/gpu_device.cc:1703] Adding visible gpu devices: 0
I tensorflow/core/platform/cpu_feature_guard.cc:143] Your CPU supports instructions that this TensorFlow binary was not compiled to use: AVX2
I tensorflow/compiler/xla/service/service.cc:168] XLA service 0x22345614f70 initialized for platform Host (this does not guarantee that XLA will be used). Devices:
I tensorflow/compiler/xla/service/service.cc:176]   StreamExecutor device (0): Host, Default VersionI tensorflow/core/common_runtime/gpu/gpu_device.cc:1561] Found device 0 with properties: 
pciBusID: 0000:01:00.0 name: GeForce GTX 1060 computeCapability: 6.1
coreClock: 1.6705GHz coreCount: 10 deviceMemorySize: 6.00GiB deviceMemoryBandwidth: 178.99GiB/s
I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library cudart64_101.dll
I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library cublas64_10.dll
I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library cufft64_10.dll
I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library curand64_10.dll
I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library cusolver64_10.dll
I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library cusparse64_10.dll
I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library cudnn64_7.dll
I tensorflow/core/common_runtime/gpu/gpu_device.cc:1703] Adding visible gpu devices: 0
I tensorflow/core/common_runtime/gpu/gpu_device.cc:1102] Device interconnect StreamExecutor with strength 1 edge matrix:
I tensorflow/core/common_runtime/gpu/gpu_device.cc:1108]      0 
I tensorflow/core/common_runtime/gpu/gpu_device.cc:1121] 0:   N 
I tensorflow/core/common_runtime/gpu/gpu_device.cc:1247] Created TensorFlow device (/job:localhost/replica:0/task:0/device:GPU:0 with 4700 MB memory) -> physical GPU (device: 0, name: GeForce GTX 1060, pci bus id: 0000:01:00.0, compute capability: 6.1)
I tensorflow/compiler/xla/service/service.cc:168] XLA service 0x223673b0e90 initialized for platform CUDA (this does not guarantee that XLA will be used). Devices:
I tensorflow/compiler/xla/service/service.cc:176]   StreamExecutor device (0): GeForce GTX 1060, Compute Capability 6.1

总的来说CPU版比较简单,GPU版坑比较多。

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

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

相关文章

python九九乘法表右对齐_python语法练习题之九九乘法表

九九乘法表 for...in方法实现 #方法一 for i in range(1, 10):for j in range(1, i1):print({}*{}{:<4}.format(j, i, i*j), end )print()#输出 1*11 1*22 2*24 1*33 2*36 3*39 1*44 2*48 3*412 4*416 1*55 2*510 3*515 4*520 5*525 1*66 2*612 3*618 4*624 5*630 6*636 1*7…

操作系统信号量和管程

1 背景 同步互斥回顾: 并发问题: 竞争条件(竞态条件) 多程序并发存在大量问题 同步 多线程共享公共数据的协调执行包括互斥与条件同步互斥: 在同一时间只有一个线程可以执行临界区 确保线程同步 需要高层次的编程抽象(如: 锁)从底层硬件支持编译 2 信号量 信号量是抽象数…

python里元组和列表的共同点和不同点_Python元组与列表的相同点与区别

列表和元组都属于有序序列&#xff0c;支持使用双向索引访问其中的元素、使用内置函数len()统计元素个数、使用运算符in测试是否包含某个元素、使用count()方法统计指定元素的出现次数和index()方法获取指定元素的索引。虽然有着一定的相似之处&#xff0c;但列表和元组在本质上…

操作系统中死锁避免算法 --- 银行家算法

1. 背景 在银行系统中, 客户完成项目需要申请贷款的数量是有限的, 每个客户在第一次申请贷款时要声明完成该项目所需的最大资金量, 在满足所有贷款要求并完成项目时, 客户应及时归还. 银行家在客户申请的贷款数量不超过自己拥有的最大值时, 都应尽量满足客户的需要. 在这样的描…

python字符串对齐_Python - 字符串对齐

字符串对齐 本文地址: http://blog.csdn.net/caroline_wendy/article/details/20463231 Python中, 字符串对齐, 使用ljust(), 左对齐;rjust(), 右对齐; center(), 中间对齐; 也可以修改第三个参数, 修改填充数据, 默认使用空格; 代码如下: # -*- coding: utf-8 -*- # #File: Te…

操作系统中的死锁问题

1 死锁问题概述 一组阻塞的进程持有一种资源等待获取另一个进程所占有的一个资源.例子: 系统有两个磁带驱动器, P1和P2各有一个, 都需要另外一个. 2 系统模型 资源类型: , , ..., 包括CPU cycles, memory space, I/O devices 每个资源类型有实例. 每个进程使用资源过程如下…

chrome控制台如何把vw显示成px_你可能不知道的chrome调试技巧

本文是对常用的chrome调试技巧进行总结整理&#xff0c;如果你没有深入了解过chrome调试工具&#xff0c;此处总有你不知道的惊喜&#xff01;从 Chrome 说起对于大部分人来说&#xff0c;Chrome 可能只是个浏览器&#xff0c;但是对于开发人员来说&#xff0c;它更是一个强大无…

操作系统进程间通信 --- IPC

1. 概述 进程间通信的原因: 进程之间要保持独立, 也需要通信, 保证相对独立性的同时还需要去确保进程间的沟通. 1.1 通信模型 IPC facility提供2个操作: send(message) -- 消息大小固定或者可变receive(message) 如果P和Q想通信, 需要: 在它们之间建立通信链路通过 send/…

gns3中两个路由器分别连接主机然后分析ip数据转发报文arp协议_ARP协议在同网段及跨网段下的工作原理...

前言&#xff1a;ARP协议是在链路层通讯中&#xff0c;已知目标IP地址,但是&#xff0c;仅有IP 地址是不够的&#xff0c;因为IP数据报必须封装成帧才能通过数据链路进行发送&#xff0c;而数据帧必须要有目的MAC地址&#xff0c;每一个网络设备在数据封装前都需要获取下一跳的…

操作系统文件系统

1 基本概念 1.1 文件系统和文件 1.1.1 简述 文件系统: 一种用于持久性存储的系统抽象 在存储器上: 组织, 控制, 导航, 访问和检索数据大多数计算机系统包含文件系统个人电脑, 服务器, 笔记本电脑ipod, Tivo/机顶盒, 手机/掌上电脑google可能是由一个文件系统构成的 文件: 文…

c++代码整洁之道pdf_别再问如何用python提取PDF内容了

作者&#xff1a;陈熹 来源&#xff1a;早起Python大家好&#xff0c;在之前的办公自动化系列文章中我们已经详细介绍了如何使用python批量处理PDF文件&#xff0c;包括合并、拆分、水印、加密等操作。今天我们再次回到PDF&#xff0c;详细讲解如何使用python从PDF提取指定的信…

计算机操作系统学习

1 概述 操作系统职能完成对硬件的管理和控制 1.1 操作系统需要关注的 计算机硬件有CPU, 内存, 磁盘, 声卡, 网卡等等, 所以操作系统关注CPU进程线程的调度, 内存管理(物理内存, 虚拟内存), 文件系统管理, 中断处理, IO设备驱动等等. 1.2 操作系统特征 1.2.1 并发和并行 并…

查看文章影响因子的插件_Scholarscope--在新版PubMed中实现基于影响因子的文献筛选...

小编之前介绍过如何在Pubmed上直接显示杂志影响因子的方法&#xff0c;这个方法主要是依托Scholarscope插件&#xff0c;其实除了显示影响因子&#xff0c;这个插件还可以帮助大家根据影响因子筛选文献哦&#xff0c;操作也很简单&#xff0c;只要生成自定义过滤器即可&#xf…

leetcode32 --- longestValidParentheses

1 题目 给你一个只包含 ( 和 ) 的字符串&#xff0c;找出最长有效&#xff08;格式正确且连续&#xff09;括号子串的长度。 2 解法 2.1 动态规划方法 维护一个字符串长度的数组cur_max_len, 第i个元素代表以当前(或者)结束的最长有效括号的长度. 这样就会利用动态规划递推…

armitage识别不了漏洞_Shiro RememberMe 漏洞检测的探索之路

前言Shiro 是 Apache 旗下的一个用于权限管理的开源框架&#xff0c;提供开箱即用的身份验证、授权、密码套件和会话管理等功能。该框架在 2016 年报出了一个著名的漏洞——Shiro-550&#xff0c;即 RememberMe 反序列化漏洞。4年过去了&#xff0c;该漏洞不但没有沉没在漏洞的…

css响应式布局_用 CSS Grid 布局制作一个响应式柱状图

最新一段时间比较喜欢玩弄图表&#xff0c;出于好奇&#xff0c;我想找出比较好的用 CSS 制作图表的方案。开始学习网上开源图表库&#xff0c;它对我学习新的和不熟悉的前端技术很有帮助&#xff0c;比如这个&#xff1a;CSS Grid。今天和大家分享我学到的新知识&#xff1a;如…

leetcode33 --- search

1 题目 整数数组 nums 按升序排列&#xff0c;数组中的值 互不相同 。 在传递给函数之前&#xff0c;nums 在预先未知的某个下标 k&#xff08;0 < k < nums.length&#xff09;上进行了 旋转&#xff0c;使数组变为 [nums[k], nums[k1], ..., nums[n-1], nums[0], num…

leetcode39 --- combinationSum

1 题目 给定一个无重复元素的数组 candidates 和一个目标数 target &#xff0c;找出 candidates 中所有可以使数字和为 target 的组合。 candidates 中的数字可以无限制重复被选取。 说明&#xff1a; 所有数字&#xff08;包括 target&#xff09;都是正整数。 解集不能包…

vs code 插件_[VSCode插件开发] 由浅入深,带你了解如何打造百万级产品

去年&#xff0c;笔者有幸在微软技术暨生态大会上做了个演讲&#xff0c;主题是“从零开始开发一款属于你的 Visual Studio Code 插件”。演讲内容主要覆盖了VS Code插件开发的四个方面&#xff1a;设计、实现、推广和维护。作为一个开发者&#xff0c;我们往往会把大多数的时间…

leetcode45 --- jump

1 题目 给定一个非负整数数组&#xff0c;你最初位于数组的第一个位置。 数组中的每个元素代表你在该位置可以跳跃的最大长度。 你的目标是使用最少的跳跃次数到达数组的最后一个位置。 假设你总是可以到达数组的最后一个位置。 2 解法 2.1 从终点遍历的方法(时间复杂度)…