Centos7.2離線安裝 Tensorflow_gpu環境,搭建Anaconda3和pycharm

在服務器下安裝tensorflow_gpu版,耗時2天,終於搞定!離線安裝需要謹慎選擇版本

1.首先下載必須的安裝包

  • cuda_8.0.44_linux.run
  • cudnn-8.0-linux-x64-v5.1.tgz
  • protobuf-3.2.0-cp35-cp35m-manylinux1_x86_64.whl
  • nvidia-diag-driver-local-repo-rhel7-384.66-1.0-1.x86_64.rpm
  • tensorflow_gpu-1.1.0-cp35-cp35m-linux_x86_64.whl
  • Anaconda3-4.2.0-Linux-x86_64.sh(注意python3.5只有4.2.0版是,不要下錯了)
  • pycharm-community-2017.2.4.tar.gz

2.開始安裝

  • 首先,查看環境中是否安裝nvidia的驅動:$ nvidia-smi,如下圖爲已安裝;

這裏寫圖片描述
如果沒有 ,安裝驅動:

$ sudo rpm -i nvidia-diag-driver-local-repo-rhel7-384.66-1.0-1.x86_64.rpm
  • 安裝cuda
    $sudo sh cuda_8.0.44_linux.run
  • 安裝cudnn
    $tar -zxvf cudnn-8.0-linux-x64-v5.1.tgz

然後將庫和頭文件copy到cuda目錄(一定是你自己安裝的目錄如/usr/local/cuda-8.0),不過正確安裝的話,ubuntu一般就會有軟鏈接/usr/local/cuda -> /usr/local/cuda-8.0/

$ 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*
  • 設置環境變量
$ sudo vim /etc/profile 
在文件末尾添加如下內容 
export PATH=$PATH:/usr/local/cuda-8.0/bin
export LD_LIBRARY_PATH=/usr/local/cuda-8.0/lib64
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda/lib64:/usr/local/cuda/extras/CUPTI/lib64
export CUDA_HOME=/usr/local/cuda

千萬別忘了,要用一下語句使該環境生效:

$ source /etc/profile 
  • 安裝Anaconda3
$ bash Anaconda3-4.2.0-Linux-x86_64.sh

安裝成功後需要關閉Terminal,重新打開一個Terminal,Anaconda3環境才能生效。

  • 安裝protobuf

    $ pip install protobuf-3.2.0-cp35-cp35m-manylinux1_x86_64.whl

  • 安裝tensorflow

$ pip install tensorflow_gpu-1.1.0-cp35-cp35m-linux_x86_64.whl
  • 安裝pycharm
$ tar zxvf pycharm-community-2017.2.4.tar.gz
$ cd pycharm-community-2017.2.4/bin

 - 啓動pycharm
$ ./pycharm.sh

設置python解釋器路徑
這裏寫圖片描述

到此爲止,完成Tensorflow_gpu開發環境搭建,安裝過程中遇到很多坑,爬了好久才上岸,安裝需要root權限,使用的時候也需要root。大家注意系統安全,哈哈。

-測試一下看看是否成功了:

import tensorflow as tf
import numpy as np
x_data = np.float32(np.random.rand(2, 100))
y_data = np.dot([0.100, 0.200], x_data) + 0.300
b = tf.Variable(tf.zeros([1]))
W = tf.Variable(tf.random_uniform([1, 2], -1.0, 1.0))
y = tf.matmul(W, x_data) + b
loss = tf.reduce_mean(tf.square(y - y_data))
optimizer = tf.train.GradientDescentOptimizer(0.5)
train = optimizer.minimize(loss)
init = tf.initialize_all_variables()
sess = tf.Session()
sess.run(init)
for step in xrange(0, 201):
    sess.run(train)
    if step % 20 == 0:
        print (step, sess.run(W), sess.run(b))
  • 結果
結果:
0 [[ 0.04449975 0.05022997]] [ 1.04979897]
20 [[ 0.00405465 0.05206435]] [ 0.43587646]
40 [[ 0.06425215 0.14253049]] [ 0.35196277]
60 [[ 0.08647 0.17783827]] [ 0.31990141]
80 [[ 0.0948422 0.19148116]] [ 0.30762693]
100 [[ 0.09802746 0.19673003]] [ 0.30292371]
120 [[ 0.09924454 0.19874559]] [ 0.30112091]
140 [[ 0.09971047 0.1995189 ]] [ 0.30042976]
160 [[ 0.09988902 0.19981553]] [ 0.30016479]
180 [[ 0.09995744 0.19992925]] [ 0.30006319]
200 [[ 0.09998368 0.19997287]] [ 0.30002424]

大功告成,祝大家安裝順利!!!

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