重新编译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/tensorflow2.編譯源碼需使用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 bazel3.下載完成后,進入tensorflow文件夾
cd tensorflow ./configure如果是CPU版本的話全部默認即可,如果使用GPU版本,在CUDA選項時輸入”y”即可。使用GPU版本需提前安裝CUDA和cuDNN
4.完成后執行
CPU版本執行如下命令
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_packageGPU版本如下:
bazel-bin/tensorflow/tools/pip_package/build_pip_package /tmp/tensorflow_pkg5.進入/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版本)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: linux上下左右为ABCD
- 下一篇: 算命先生有三不算:不算死人、不算同行、不