您的位置:首页 > 运维架构 > Linux

Centos7.2离线安装 Tensorflow_gpu环境,搭建Anaconda3和pycharm

2017-12-28 16:02 721 查看
在服务器下安装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]


大功告成,祝大家安装顺利!!!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
相关文章推荐