TensorFlow CPU环境 SSE/AVX/FMA 指令集编译
2017-05-29 09:41
323 查看
TensorFlow CPU环境 SSE/AVX/FMA 指令集编译
sess.run()出现如下Warning
# 通过pip install tensorflow 来安装tf在 sess.run() 的时候可能会出现 W tensorflow/core/platform/cpu_feature_guard.cc:45] The TensorFlow library wasn't compiled to use SSE4.1 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 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.
这说明你的machine支持这些指令集但是TensorFlow在编译的时候并没有加入这些指令集,需要手动编译TensorFlow才能够加入这些指令集。
# 1. 下载最新的 TensorFlow $ git clone https://github.com/tensorflow/tensorflow # 2. 安装 bazel # mac os $ brew install bazel # ubuntu $ sudo apt-get update && sudo apt-get install bazel # Windows $ choco install bazel # 3. Install TensorFlow Python dependencies # 如果使用的是Anaconda这部可以跳过 # mac os $ pip install six numpy wheel $ brew install coreutils # 安装coreutils for cuda $ sudo xcode-select -s /Applications/Xcode.app # set build tools # ubuntu sudo apt-get install python3-numpy python3-dev python3-pip python3-wheel sudo apt-get install libcupti-dev # 4. 开始编译TensorFlow # 4.1 configure $ cd tensorflow # cd to the top-level directory created # configure 的时候要选择一些东西是否支持,这里建议都选N,不然后面会包错,如果支持显卡,就在cuda的时候选择y $ ./configure # configure # 4.2 bazel build # CUP-only $ bazel build --config=opt //tensorflow/tools/pip_package:build_pip_package # GPU support bazel build --config=opt --config=cuda //tensorflow/tools/pip_package:build_pip_package # 5 安装刚刚编译好的pip 包 # 这里安装的时候官方文档使用的是sudo命令,如果是个人电脑,不建议使用sudo, 直接pip即可。 $ pip install /tmp/tensorflow_pkg/tensorflow-{version}-none-any.whl # 6 接下来就是验证你是否已经安装成功 $ python -c "import tensorflow as tf; print(tf.Session().run(tf.constant('Hello, TensorFlow')))" # 然后你就会看到如下输出 b'Hello, TensorFlow' # 恭喜你,成功编译了tensorflow,Warning也都解决了!
报错解决
Do you wish to build TensorFlow with MKL support? [y/N] y MKL support will be enabled for TensorFlow Do you wish to download MKL LIB from the web? [Y/n] y Darwin is unsupported yet # 这里MKL不支持Darwin(MAC),因此要选择N ERROR: /Users/***/Documents/tensorflow/tensorflow/core/BUILD:1331:1: C++ compilation of rule '//tensorflow/core:lib_hash_crc32c_accelerate_internal' failed: cc_wrapper.sh failed: error executing command external/local_config_cc/cc_wrapper.sh -U_FORTIFY_SOURCE -fstack-protector -Wall -Wthread-safety -Wself-assign -fcolor-diagnostics -fno-omit-frame-pointer -g0 -O2 '-D_FORTIFY_SOURCE=1' -DNDEBUG ... (remaining 32 argument(s) skipped): com.google.devtools.build.lib.shell.BadExitStatusException: Process exited with status 1. clang: error: no such file or directory: 'y' clang: error: no such file or directory: 'y' # 这里是因为在configure的时候有些包不支持但是选择了y,因此记住一点所有的都选n
Reference
[1]: https://www.tensorflow.org/install/install_sources相关文章推荐
- 重新编译TensorFlow1.4源代码支持SSE-AVX-FMA指令集 (Python3.5版本)
- 测试CPU支持指令集AVX,AVX2,SSE情况的代码【VS2010调试通过】
- 測试CPU支持指令集AVX,AVX2,SSE情况的代码【VS2010调试通过】
- ubuntu16.04解决tensorflow提示未编译使用SSE3、SSE4.1、SSE4.2、AVX、AVX2、FMA的问题
- TensorFlow安装方法二【第一步:GPU环境配置部分(装CPU版跳过直接看第二步)】(Windows10 64位 )
- CentOS 7 下使用虚拟环境Virtualenv安装Tensorflow cpu版记录
- 自己动手写CPU之第四阶段(3)——MIPS编译环境的建立
- 【强烈推荐】OpenCL on the CPU: AVX and SSE
- [VC] 检测AVX系列指令集的支持级别(AVX、AVX2、F16C、FMA、FMA4、XOP)
- C++环境测试CPU是否支持MMX,SSE-未完
- [VC] 检测AVX系列指令集的支持级别(AVX、AVX2、F16C、FMA、FMA4、XOP)
- Mac下使用源码编译安装TensorFlow CPU版本
- h264实时编解源代码,不仅有vfw,还有内存和cpu占用多少显示,vc6.0编译环境
- Windows下搭建TensorFlow环境3(CPU版本)
- Windows下搭建TensorFlow环境4(CPU版本)
- 自己动手写CPU之第四阶段(3)——MIPS编译环境的建立
- 如何搭建VC6下的SSE编译环境
- [x86]SIMD指令集发展历程表(MMX、SSE、AVX等)
- [x86]SIMD指令集发展历程表(MMX、SSE、AVX等)
- Ubuntu14.04源码编译安装CPU版本的tensorflow