• 为了保证你在浏览本网站时有着更好的体验,建议使用类似Chrome、Firefox之类的浏览器~~
    • 如果你喜欢本站的内容何不Ctrl+D收藏一下呢,与大家一起分享各种编程知识~
    • 本网站研究机器学习、计算机视觉、模式识别~当然不局限于此,生命在于折腾,何不年轻时多折腾一下

mac下编译安装TensorFlow

bigdata admin 4个月前 (03-17) 323次浏览 0个评论 扫描二维码

前言

如果直接通过pip install tensorflow安装 Tensorflow 的话,在运行时可能会有这种警告

W tensorflow/core/platform/cpu_feature_guard.cc:45] The TensorFlow library wasn't compiled to use SSE4.2 instructions, but these are available on your machine and could speed up CPU computations.
W tensorflow/core/platform/cpu_feature_guard.cc:45] The TensorFlow library wasn't compiled to use AVX instructions, but these are available on your machine and could speed up CPU computations.
W tensorflow/core/platform/cpu_feature_guard.cc:45] The TensorFlow library wasn't compiled to use AVX2 instructions, but these are available on your machine and could speed up CPU computations.
W tensorflow/core/platform/cpu_feature_guard.cc:45] The TensorFlow library wasn't compiled to use FMA instructions, but these are available on your machine and could speed up CPU computations.

主要是因为你的 CPU 支持 AVX2,SSE 等指令集,而 pip 安装的库没有使用它们。启用这些指令集会提升运算速度,而且每次打印一大坨看着有点烦人,所以这里我们从源码编译安装 Tensorflow。

编译&安装

  • 先安装一些依赖
$ brew install bazel swig
  • 克隆代码仓库
$ git clone https://github.com/tensorflow/tensorflow.git
$ cd tensorflow
  • 这里先 configure,过程中会问一些编译过程中要用到的参数,比如 Python 的目录,是否开启 OpenCL,CUDA 支持,我这里直接全否了。
$ ./configure
Please specify the location of python. [Default is /usr/local/anaconda3/bin/python]:
Found possible Python library paths:
  /usr/local/anaconda3/lib/python3.6/site-packages
Please input the desired Python library path to use.  Default is [/usr/local/anaconda3/lib/python3.6/site-packages]

Using python library path: /usr/local/anaconda3/lib/python3.6/site-packages
Do you wish to build TensorFlow with MKL support? [y/N] n
No MKL support will be enabled for TensorFlow
Please specify optimization flags to use during compilation when bazel option "--config=opt" is specified [Default is -march=native]: n
Do you wish to build TensorFlow with Google Cloud Platform support? [y/N] n
No Google Cloud Platform support will be enabled for TensorFlow
Do you wish to build TensorFlow with Hadoop File System support? [y/N] n
No Hadoop File System support will be enabled for TensorFlow
Do you wish to build TensorFlow with the XLA just-in-time compiler (experimental)? [y/N] n
No XLA JIT support will be enabled for TensorFlow
Do you wish to build TensorFlow with VERBS support? [y/N] n
No VERBS support will be enabled for TensorFlow
Do you wish to build TensorFlow with OpenCL support? [y/N] n
No OpenCL support will be enabled for TensorFlow
Do you wish to build TensorFlow with CUDA support? [y/N] n
No CUDA support will be enabled for TensorFlow
INFO: Starting clean (this may take a while). Consider using --async if the clean takes more than several minutes.
Configuration finished
  • 编译步骤,在--copt=-m后面添加你需要的指令集,之前警告有什么你就在这加什么就可以,我这里添加了avx avx2 fma sse4.1 sse4.2。编译过程时间很长,我的 4770hq 跑了快 25min
$ bazel build -c opt --copt=-mavx --copt=-mavx2 --copt=-mfma --copt=-msse4.1 --copt=-msse4.2 //tensorflow/tools/pip_package:build_pip_package
  • 打包成 whl
$ bazel-bin/tensorflow/tools/pip_package/build_pip_package /tmp/tensorflow_pkg
  • 安装这个 whl,如果之前安装过 Tensorflow 的话先卸载,再安装
$ pip uninstall -y tensorflow
$ pip install /tmp/tensorflow_pkg/tensorflow-1.2.1-cp36-cp36m-macosx_10_7_x86_64.whl

完事,这样再调用 Session 就不会有提示了

运行效果如下

转载链接:https://www.jianshu.com/p/9d5806e7c248


Deeplearn, 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权 , 转载请注明mac 下编译安装 TensorFlow
喜欢 (0)
admin
关于作者:

您必须 登录 才能发表评论!