前言
如果直接用anaconda的界面安装,会出现warn(没法CPU加速),网友说pip下载也会遇到这个问题安装tensorflow后验证时出现warning2018-06-09
参考了[1],发现我的Macbook Pro不支持GPU加速(需N卡且满足要求),显卡是Intel Iris Plus Graphics 640。
想用Mac加速的可以参考[2]。
想安装Anaconda配置py2/py3环境参考另一篇文章Mac下sublime配置Anaconda(python2 & python3)环境2018-05-03
安装过程(方法1)
下载官方的tensorflow源码
参考[3]使用git clone的形式,注意:下载速度很慢,100K
(python36) KaideMacBook-Pro:~ tangkaisky$ git clone https://github.com/tensorflow/tensorflow
然后出错
(python36) KaideMacBook-Pro:~ tangkaisky$ git clone https://github.com/tensorflow/tensorflow
Cloning into 'tensorflow'...
remote: Counting objects: 365769, done.
remote: Compressing objects: 100% (7/7), done.
error: RPC failed; curl 56 LibreSSL SSL_read: SSL_ERROR_SYSCALL, errno 50
fatal: The remote end hung up unexpectedly
fatal: early EOF
fatal: index-pack failed
所以参考[4]用export设置环境变量,对应版本查看https://github.com/tensorflow/tensorflow/,查找适合的版本
我指定了CPU版本
(python36) KaideMacBook-Pro:~ tangkaisky$ export TF_BINARY_URL=https://storage.googleapis.com/tensorflow/mac/cpu/tensorflow-1.6.0-py3-none-any.whl
安装tensorflow
# pip install
(python36) KaideMacBook-Pro:~ tangkaisky$ pip install --ignore-installed --upgrade $TF_BINARY_URL
测试安装
# python
# coding: utf-8
import tensorflow as tf
hello = tf.constant('Hello, Tensorflow!')
sess = tf.Session()
print(sess.run(hello))
运行成功,但出现I 信息:意思是tensorflow觉得电脑CPU还行,可以使用速度更快的模式
2018-06-10 19:57:03.579167: I tensorflow/core/platform/cpu_feature_guard.cc:140] Your CPU supports instructions that this TensorFlow binary was not compiled to use: AVX2 FMA
b'Hello, Tensorflow!'
解决方案
参考[5][6][7]里说的
大概意思是tensorflow默认不进行CPU拓展,像SSE4.1, SSE4.2, AVX, AVX2, FMA。这个地方还有争议,就是即使加上这些拓展速度也慢于GPU,所以中大型机器学习训练应该在GPU上执行。
所以可以直接忽略掉INFO级别信息就好,搞定。
import os
os.environ['TF_CPP_MIN_LOG_LEVEL'] = '2'
可参看另一篇文章安装tensorflow后验证时出现warning2018-06-09
安装过程(方法2)
参考[8][9],只完成安装bazel,未全部完成。
这个方法可以解决上述警告,开启所有CPU拓展,但应该可行~
安装bazel
注:我先激活了python36的环境才进行以下操作,但安装bazel是不需要进入激活环境的。
(base) KaideMacBook-Pro:~ tangkaisky$ source activate python36
(python36) KaideMacBook-Pro:~ tangkaisky$ brew install bazel
报错:因为需要依赖Java 1.8
bazel: Java 1.8 is required to install this formula.
JavaRequirement unsatisfied!
You can install with Homebrew-Cask:
brew cask install homebrew/cask-versions/java8
You can download from:
https://www.oracle.com/technetwork/java/javase/downloads/index.html
安装java8
(python36) KaideMacBook-Pro:~ tangkaisky$ brew cask install homebrew/cask-versions/java8
再次安装bazel
(python36) KaideMacBook-Pro:~ tangkaisky$ brew install bazel
参考
[1]osx苹果电脑安装TensorFlow(GPU)
[2]在我的Macbook Pro上安装能使用GPU加速的Theano
[3]Mac下使用源码编译安装TensorFlow CPU版本
[4]Mac上Anaconda+Tensorflow安装
[5]https://blog.csdn.net/CliuGeek/article/details/78836598
[6]安装Python3.5和Tensorflow中遇到的问题 - CSDN博客
[7]https://github.com/tensorflow/tensorflow/issues/8037
[8]TensorFlow CPU环境 SSE/AVX/FMA 指令集编译
[9]https://www.tensorflow.org/install/install_sources
网友评论