Tensorflow 官網:
https://www.tensorflow.org/versions/r0.10/get_started/os_setup.html#pip-installation
作業系統:Ubuntu 14.04 64位元
顯卡:Nvidia 1070
Cuda version: 8.0
Cudnn version : 5.0
ㄧ.簡易版(沒有GPU):
到官網選擇您要的python 版本
小編這裡選擇 python 2.7, 打入下面指令
export TF_BINARY_URL=https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow-0.10.0rc0-cp27-none-linux_x86_64.whl
然後安裝 說實在的 真的沒什麼技術 哈哈
sudo pip install --upgrade $TF_BINARY_URL
二.簡易版 GPU (限定 cuda 7.5, cudnn v4.0)
一樣方法, 選擇作業系統版本 打入下面指令 (小編是 Ubuntu 14.04 64bit)
export TF_BINARY_URL=https://storage.googleapis.com/tensorflow/linux/gpu/tensorflow-0.10.0rc0-cp27-none-linux_x86_64.whl
安裝:
sudo pip install --upgrade $TF_BINARY_URL
三.複雜版 安裝任意版本 cuda cudnn (從來源安裝)
因為小編這張顯卡算蠻新的
所以安裝cuda 7.5 會造成很多問題
網路上查閱相關資料發現 cuda 8.0 是最符合的
因此只有唯一的安裝方法 Install From Source
大概說一下,從來源安裝的意思就是 去clone tensorflow 原始碼
然後經由 google 開發的軟體 bazel 進行編譯 , 有點類似 Cmake
最後自己做出 pip 安裝包,經由pip 安裝
前面的顯卡驅動 cuda 安裝可以參考這裡
這裡只講最後的部份
1.先安裝相關包
sudo apt-get install swig python-dev python-numpy python-wheel python-pip
sudo apt-get install pkg-config zip g++ zlib1g-dev unzip
a.按照官網描述 先從PPA安裝 JDK8.0
sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update
sudo apt-get install oracle-java8-installer
b.下載安裝檔:檔源
小編這裡選擇 bazel-0.3.1-installer-linux-x86_64.sh
c.下載完成後 執行安裝
./bazel-0.3.1-installer-linux-x86_64.sh --user
d.設置環境
gedit etc/profile
再最後面加上
export PATH="$PATH:$HOME/bin"
執行
source /etc/profile
再terminal 打上 bazel 安裝成功圖示
3.設定 tensorflow 環境
到tensorflow 根目錄 執行configure 一步一步根據你的環境設定
下圖為我的設定圖
./configure
4.開始用bazel編譯tensorflow
a.下載源代碼:
git clone https://github.com/tensorflow/tensorflow.git
b.修改資料
到tensorflw根目錄 移到 third_party/gpus/crosstool/CROSSTOOL
打開資料 找到相關的程式碼 往下加入此行
cxx_builtin_include_directory: "/usr/local/cuda-8.0/include"
c.開始用bazel compile tensorflow
bazel build -c opt --config=cuda //tensorflow/tools/pip_package:build_pip_package
成功畫面:
d.再/tmp/tensorflow_pkg 路徑之下建立出 安裝的package
bazel-bin/tensorflow/tools/pip_package/build_pip_package /tmp/tensorflow_pkg
e.安裝
sudo pip install /tmp/tensorflow_pkg/tensorflow-0.10.0rc0-cp27-none-linux_x86_64.whl
5.測試tensorflow程式碼:
#!/usr/bin/env python
# Author: Abhay Harpale
# Website: abhay.harpale.net/blog/
"""
gpu test for tensorflow
"""
import
tensorflow as tf
# Creates a graph.
a
=
tf.constant([
1.0
,
2.0
,
3.0
,
4.0
,
5.0
,
6.0
], shape
=
[
2
,
3
], name
=
'a'
)
b
=
tf.constant([
1.0
,
2.0
,
3.0
,
4.0
,
5.0
,
6.0
], shape
=
[
3
,
2
], name
=
'b'
)
c
=
tf.matmul(a, b)
# Creates a session with log_device_placement set to True.
sess
=
tf.Session(config
=
tf.ConfigProto(log_device_placement
=
True
))
# Runs the op.
print
sess.run(c)
參考資料:
留言列表