重新编译TensorFlow1.4源代码支持SSE-AVX-FMA指令集 (Python3.5版本)

TensorFlow运行出现以下信息说明工作站支持这些指令集但编译的时候并没有加入
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.

重新编译TensorFlow源代码支持SSE/AVX/FMA 指令集如下。

1.重新编译TensorFlow,从github上直接下载源码进行编译执行如下命令:

git clone https://github.com/tensorflow/tensorflow

2.编译源码需使用bazel,首先安装依赖库

sudo apt-get install python3-numpy python3-dev python3-pip python3-wheel libcupti-dev

添加bazel源

echo "deb [arch=amd64] http://storage.googleapis.com/bazel-apt stable jdk1.8" | sudo tee /etc/apt/sources.list.d/bazel.list
curl https://bazel.build/bazel-release.pub.gpg | sudo apt-key add -

更新源安装bazel

sudo apt-get update && sudo apt-get install bazel

3.下载完成后,进入tensorflow文件夹

cd tensorflow
./configure

如果是CPU版本的话全部默认即可,如果使用GPU版本,在CUDA选项时输入”y”即可。使用GPU版本需提前安装CUDA和cuDNN

4.完成后执行
CPU版本执行如下命令

bazel build --config=opt //tensorflow/tools/pip_package:build_pip_package

GPU版本执行如下命令

bazel build --config=opt --config=cuda //tensorflow/tools/pip_package:build_pip_package

待编译完成后会出现如下信息

Target //tensorflow/tools/pip_package:build_pip_package up-to-date:
  bazel-bin/tensorflow/tools/pip_package/build_pip_package
INFO: Elapsed time: 2416.621s, Critical Path: 107.87s
INFO: Build completed successfully, 3273 total actions

然后编译pip安装包,CPU版本如下:

bazel build --config=opt //tensorflow/tools/pip_package:build_pip_package

GPU版本如下:

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

5.进入/tmp/tensorflow_pkg/文件夹,查看编译出来的版本信息并安装,如下(python3.x)

$ cd /tmp/tensorflow_pkg/
$ ls
#以下两个命令选择其中一个即可
$ sudo pip3 install tensorflow-1.5.0rc1-cp35-cp35m-linux_x86_64.whl    #python3.x
$ sudo pip install tensorflow-1.5.0rc1-cp35-cp35m-linux_x86_64.whl #python2.x

安装完成即可

6.安装完成后运行如下代码检查是否安装成功

>>> import tensorflow as tf
>>> hello=tf.constant('Hello, TensorFlow')
>>> sess=tf.Session()
>>> print(sess.run(hello))

运行结果如下:

b'Hello, TensorFlow'

重新编译TensorFlow1.4源代码支持SSE-AVX-FMA指令集 (Python3.5版本)_第1张图片

你可能感兴趣的:(机器学习)