windows版TensorFlow最优安装,使用AVX2指令集

windows版TensorFlow最优安装,使用AVX2指令集通常我们运行TensorFlow会报告如下信息,意思是你的CPU支持AVX2指令集,但TensorFlow的二进制版本没有使用2019-02-1415:44:41.989265:IT:\src\github\tensorflow\tensorflow\core\platform\cpu_feature_guard.cc:141]YourCPUsupportsinstruction…

大家好,又见面了,我是你们的朋友全栈君。

通常我们运行TensorFlow会报告如下信息,意思是你的CPU支持AVX2指令集,但TensorFlow的二进制版本没有使用

2019-02-14 15:44:41.989265: I T:\src\github\tensorflow\tensorflow\core\platform\cpu_feature_guard.cc:141] Your CPU supports instructions that this TensorFlow binary was not compiled to use: AVX2

对于有强迫症的我来说难以容忍,由于GPU GTX1050(2G)内存不够,不能用于训练,全靠CPU来训练,CPU训练是相当花时间的,于是琢磨使用AVX2指令集

要使用AVX2指令集,正规的做法是自己编译TensorFlow,刚开始我也是这么干的,各种软件下载,环境配置,各种问题解决,然后编译,这个非常耗时,在我的笔记本上大概要3-4小时,忙活完了一天都快过去了,安装后发现我的编译参数设置不对,还要重新编译,崩溃

幸好发现一个好东西,省去了这些麻烦,这个网站编译好了各种版本的TensorFlow,下载就可以使用

https://github.com/fo40225/tensorflow-windows-wheel

我使用的python 3.6,需要下载下面的版本,注意要使用avx2版本

tensorflow_gpu-1.12.0-cp36-cp36m-win_amd64.whl (cuda100cudnn73avx)

tensorflow-1.12.0-cp36-cp36m-win_amd64.whl (avx2)

cuda需要使用10.0.X

cudnn需要使用7.3.X

(X尽量选大的版本,具体安装过程就不详细说了)

可以说这种安装办法是目前最好,最省时间的办法,充分利用cpu的指令集,避免的cuda和cudnn版本的烦恼。

用pip网络安装TensorFlow,一是没有cpu优化,二是cuda和cudnn版本不清楚,会出现大量问题花大量时间

  • 问题

1.msgpack版本问题

安装Keras的过程中,遇到下面错误,找不到1.21.8版的msgpack

distributed 1.21.8 requires msgpack, which is not installed.

解决办法是安装最新版

pip install msgpack

2.h5py的版本问题

执行keras-yolo的时候出现下面的警告

C:\Users\xxx\AppData\Local\Continuum\anaconda3\lib\site-packages\h5py\__init__.py:36: FutureWarning: Conversion of the second argument of issubdtype from `float` to `np.floating` is deprecated. In future, it will be treated as `np.float64 == np.dtype(float).type`.
  from ._conv import register_converters as _register_converters

解决办法是安装最新版

pip install –upgrade h5py

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/142874.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 使用es6模板字符串嵌入变量,并实现循环「建议收藏」

    使用es6模板字符串嵌入变量,并实现循环「建议收藏」模板字符串支持嵌入变量,只需要将变量名写在${}之中。在模板字符串中,遍历数组,生成循环结构。letarr=[‘aaa’,’bbbb’,’c’,’dd’,’f’]lettemp=`<ul>${arr.map(item=>{return`<li>${item}</li>`}).join(”)}</ul>`console.log(temp);/*<ul><li>aa

    2022年8月21日
    11
  • iostat命令详解参数_iostat命令的dm

    iostat命令详解参数_iostat命令的dmiostat命令详解iostat用于输出CPU和磁盘输入输出、分区、网络文件系统NFS相关的统计信息。iostat命令用于监控系统设备的输入/输出情况,并生成报告,以便根据统计报告修改系统配置,获取更优的性能。命令格式:iostat[-c][-d][-N][-n][-h][-k|-m][-t][-V][-x][-z][device

    2022年10月6日
    4
  • toArray()方法使用说明「建议收藏」

    toArray()方法使用说明「建议收藏」ArrayList提供了一个将List转为数组的一个非常方便的方法toArray。toArray有两个重载的方法:1.list.toArray();2.list.toArray(T[] a);对于第一个重载方法,是将list直接转为Object[]数组;第二种方法是将list转化为你所需要类型的数组,当然我们用的时候会转化为与list内容相同的类型。

    2022年5月15日
    52
  • python打包小程序[通俗易懂]

    概述pyinstaller是一个十分有用的第三方库,能够在Windows,Linux、MacOSX等操作系统下将Python源文件打包。通过打包可以在没有Python的环境中运行。pipinstaller需要在命令行用pip3安装pip3installpyinstallerpyinstaller库会自动将pyinstaller命令安装到Python解释器目录中,与pip3的命令路…

    2022年4月13日
    34
  • java遍历数组的各种方法_遍历数组的常用方法「建议收藏」

    java遍历数组的各种方法_遍历数组的常用方法「建议收藏」1.最传统方法for循环1vararr=[“first”,”second”,”third”,”fourth”,3,5,8];2for(vari=0;i<arr.length;i++){3console.log(arr[i]);4}5//输出:6first7second8third9fourth10311512…

    2022年9月16日
    2
  • 【JavaScript——牛客网算法No.HJ2】计算一个字符串中含有某个字符的个数[通俗易懂]

    【JavaScript——牛客网算法No.HJ2】计算一个字符串中含有某个字符的个数[通俗易懂]@No.HJ2@problemdescription:写出一个程序,接受一个由字母和数字组成的字符串,和一个字符,然后输出输入字符串中含有该字符的个数。不区分大小写。@inputdescription:第一行输入一个有字母和数字以及空格组成的字符串,第二行输入一个字符。@outputdescription:输出输入字符串中含有该字符的个数。示例@input:ABCDEFA@output:1varstr1=readline();varstr2=…

    2022年9月28日
    3

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号