Tensorflow 入門(一)環境搭建

基本環境:

硬件:雙路E5 + 3 * Tesla P100,64位
操作系統:CentOS 7.4
python 2.7.14 ( Anaconda2 )
python 3.6.3 ( Anaconda3 ) # 這個不單獨列出了,類比吧~

目標環境:

CUDA 9.0
CUDNN 7.0.4
tensorflow-gpu 1.4.0

本文 CUDA 的安裝採取了官網的 rpm(network) 形式,簡單粗暴。

一、驅動安裝

yum upgrade

順便說一句 python 3 命令行交互模式下 Backspace 等鍵亂碼問題的解決方案:

yum install readline-devel   # 然後重新編譯安裝 python 3.6

驅動安裝/更新,官方說明見這裏(注意按自己的實際環境勾選選項),過程摘要如下:

驅動有可能原本就裝了,在 yum upgrade 中就幫你更新了

如果原本沒裝,那就自己裝一下(請根據上面的官方說明填寫最新文件名):

sudo rpm -i cuda-repo-rhel7-9.0.176-1.x86_64.rpm

二、CUDA、CUDANN 安裝

CUDA 安裝

sudo yum clean all
sudo yum install cuda

cuda 安裝在了 /usr/local/cuda-9.0,並有鏈接到它的 /usr/local/cuda 目錄,使用後者作爲後續安裝的依據。
環境變量配置,在啓動項(~/.bash_profile)中添加一行:

export PATH=/usr/local/cuda-9.0/bin${PATH:+:${PATH}}

CUDNN安裝
首先上官網下載壓縮包,這裏有點坑,必須要註冊,得到的文件:cudnn-9.0-linux-x64-v7.tar,解壓後得到的目錄也叫 cuda.

這裏 CUDNN 的安裝其實只是把 CUDNN的一些庫文件拷貝到 CUDA 的安裝目錄下,然後改改權限:

tar xzvf cudnn-9.0-linux-x64-v7.tar
sudo cp cuda/include/cudnn.h /usr/local/cuda/include
sudo cp cuda/lib64/libcudnn* /usr/local/cuda/lib64
sudo chmod a+r /usr/local/cuda/include/cudnn.h /usr/local/cuda/lib64/libcudnn*

三、Tensorflow-GPU 編譯安裝

參照[官網]的(https://www.tensorflow.org/install/install_sources)源碼安裝形式,本章給出步驟摘要。

安裝部分依賴

pip install numpy dev pip wheel
yum install python-devel

注意:博主安裝 dev 的時候報了個 好像叫“None Ascii”什麼什麼的錯誤,反正是哪個文件編碼有問題(開頭多了個什麼字符),這個問題通過解壓安裝包、進入目錄、修改那個文件(刪掉報錯信息指示的幾個字符),然後:

python setup.py install 

可以完美解決。

編譯安裝 bazel

參照官網,步驟如下:
Fedora COPR把相應的 .repo 文件下載到 /etc/yum.repos.d/ 目錄下(加了個源),然後:

yum install bazel

編譯安裝 tensorflow-gpu

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

這個有一堆交互式配置,看着選就行,大部分默認值都是合適的值,需要注意的就是 python 的路徑要確保無誤(python 3 / python 2.7.14 / 有的系統自帶 python 2.6 或者 2.7.5),有需要再貼圖吧。

配置完了之後:

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

注意:如果想編譯 MKL 之類的庫,也要事先安裝,這裏沒管。

下一步:

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

這個時候 .whl 文件已經出來了,用 pip install 指定即可:

pip install /tmp/tensorflow_pkg/tensorflow-1.4.0-py2-none-any.whl

四、檢驗

python

然後

import tensorflow as tf

自己測吧哈。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章