美文网首页Java高级架构大数据我爱编程
[土木匠] mac 编译tensorflow源码并搭建环境

[土木匠] mac 编译tensorflow源码并搭建环境

作者: 后端老鸟 | 来源:发表于2018-02-02 20:14 被阅读180次

【转载请注明出处】:土木匠   https://www.jianshu.com/p/e21e660960a4

1、环境准备

brew install bazel

安装完之后验证

bazel version

其他的安装方式可以参考官网

  • 安装Numpy
pip install numpy scipy matplotlib ipython jupyter pandas sympy nose

其他方式可以参考官网

2、下载源码

git clone --recurse-submodules https://github.com/tensorflow/tensorflow

--recurse-submodules参数是必须的,用于获取 tensorflow 依赖的 protobuf 库。下载完之后

image.png

3、编译源码

进入源码目录,执行

./configure

然后选择要支持的模块

Please specify the location of python. [Default is /usr/bin/python]: /Library/Frameworks/Python.framework/Versions/3.6/bin/python3.6
##选择python路径

Do you wish to build TensorFlow with Google Cloud Platform support? [Y/n]: 
##支持GCP,普通用户没必要

Do you wish to build TensorFlow with Hadoop File System support? [Y/n]: 
##是否支持HDFS,这个比较有用

Do you wish to build TensorFlow with Amazon S3 File System support? [Y/n]: 
##是否支持亚马逊的S3文件系统,普通用户没必要

Do you wish to build TensorFlow with Apache Kafka Platform support? [y/N]: 
##是否支持kafka

Do you wish to build TensorFlow with XLA JIT support? [y/N]: 
##是否支持XLA(Accelerated Linear Algebra/加速线性代数)JIT(just-in-time/即时编译 ),加速线性代数(融合可组合运算来提升性能, 通过极端专门化减小可执行文件大小),运行时的优化

Do you wish to build TensorFlow with GDR support? [y/N]: 
##是否支持GDR,如果你不支持CUDA,就不要选这个了。这个是要硬件支持的。如果支持,可以使用grpc+gdr交换参数

Do you wish to build TensorFlow with VERBS support? [y/N]: 
##和GDR类似,使用verbs库来交换参数,也就是remote direct memory access(RDMA)。如果你使用了InfiniBand的卡,可以启用。

Do you wish to build TensorFlow with OpenCL SYCL support? [y/N]: 
##OpenCL不建议启用, 这是一个开发的计算框架,但异构计算的事实标准是CUDA,如果你启用了OpenCL,还要安装下面的ConputeCPP for SYCL 1.2

Please specify which C++ compiler should be used as the host C++ compiler. [Default is /usr/bin/g++]: 
Please specify which C compiler should be used as the hostC compiler. [Default is /usr/bin/gcc]: 

Do you wish to build TensorFlow with ComputeCPP support? [Y/n]: 
##使用SYCL将c++应用程序引入到广泛的OpenCL加速器中

Do you wish to build TensorFlow with CUDA support? [y/N]: 
##是否支持CUDA,需要硬件支持

Do you wish to build TensorFlow with MPI support? [y/N]: 
##是否支持MPI,和GDR, VERBS的作用是一样的

Would you like to interactively configure ./WORKSPACE for Android builds? [y/N]: 

image.png

到这里,就可以编译安装包了。

bazel build -c opt //tensorflow/tools/pip_package:build_pip_package
image.png

编译完之后打包到目录/tmp/tensorflow_pkg

bazel-bin/tensorflow/tools/pip_package/build_pip_package /tmp/tensorflow_pkg

pip包打包成功就可以安装了

pip install /tmp/tensorflow_pkg/tensorflow-1.5.0rc1-cp36-cp36m-macosx_10_6_intel.whl

4、验证

打开一个 python 终端:

$ python

>>> import tensorflow as tf
>>> hello = tf.constant('Hello, TensorFlow!')
>>> sess = tf.Session()
>>> print sess.run(hello)
Hello, TensorFlow!
>>> a = tf.constant(10)
>>> b = tf.constant(32)
>>> print sess.run(a+b)
42
>>>

【转载请注明出处】:土木匠   https://www.jianshu.com/p/e21e660960a4

相关文章

网友评论

    本文标题:[土木匠] mac 编译tensorflow源码并搭建环境

    本文链接:https://www.haomeiwen.com/subject/dewqzxtx.html