os:ubuntu16.04
DL框架:caffe-GPU
CUDA: 10.0
CUDNN: 7.3
python:2.7
因为前段时间做的偏工程(因为在公司做的产品),最近做课题,感觉caffe不是很方便,准备用回tf,所以准备弄个tf环境,刚开始准备用docker,这个东西听我朋友说很方便,我也弄了一会,装了个image,发现tf-gpu装完之后还得自己装CUDA和Cudnn,感觉还是算了把,发现个自己移植忽略的好东西Anconda
准备用Anconda弄个独立隔离的tf环境,当然有时间还是需要把docker学一下的
我选择的是python2.7版本
https://www.anaconda.com/download/#linux
傻瓜式安装不赘述
直接启动终端即可
安装好看看是否安装成功
conda --version
成功当然这里可能出现 不识别conda的error
conda不是内部或外部命令
这是因为没有添加环境变量,无法找到命令
添加环境变量即可,我常用的方式就是.bashrc文件
vim用法不赘述了,就是按i为input,按esc为命令模式输入:wq保存退出。
.bashrc为用户环境文件
添加
export PATH=/home/c/anaconda2/bin:$PATH ##/home/c/anaconda2为Anaconda的安装路径
之后输入
使更改的环境变量生效,此时linux可以识别conda命令了
创建 python 2.7的tensorflow环境
之后进入 环境中
在环境中直接安装tenorflow-gpu环境
conda install tensorflow-gpu
需要一段时间,仔细观察里面已经有了很多科学库numpy pandas,以及CUDN和cudnn(但是有一个问题就是,tf的版本对应相应版本的cuda和cudnn的版本,都是一一对应的
)
下完之后,输入python之后import tensorflow之后看是否成功,如果成功则结束
如果不成功报错如下提示则按下面几步进行。
ImportError: libcublas.so.9.0: cannot open shared object file: No such file or directory
毋庸置疑就是tf和下载安装的cuda的版本不匹配
解决办法:
conda install cudatoolkit==9.0
这回python,import一下上舒服了就
不得不说Anconda真的好用,我当时用caffe-gpu的时候都是自己安装的cuda和cudnn,不只是麻烦,最难受的是如果你不知道版本有对应关系可能你需要不断的安装卸载,当然用运气好的话一次成功也可能,但是也麻烦,Anconda只需要几句命令解决一切问题,厉害。
下载pycharm
http://www.jetbrains.com/pycharm/download/#section=linux
下载Community版本,这样可以避免找能用的钥匙等一切破解的问题,自己用community够用了已经。
直接在所在目录打开terminal运行解压
tar -xvzf pycharm-community-2018.3.tar.gz ##文件按照自己的版本改
解压完成
习惯性把这些文件放在linux下的home里,进行一波 剪切
运行bin中的.sh脚本文件启动,接下来就和win下使用是一个样子了,不多赘述,就是选确认和同意就好了。
选择咱们已经在Anconda中创建好的interpreter,这个python中已经配置好tf环境
新建一个python文件
来个简单的程序跑一下看看,两个常量相加
import tensorflow as tf
int1 = tf.constant(3)
int2 = tf.constant(6)
product = tf.add(int1, int2)
with tf.Session() as sess:
result2 = sess.run(product)
print(result2)
最后不想pycharm每次打开都那么麻烦,那就 打击图标,右键,选择锁定到启动器,over。
依然采用Anaconda来安装,首先安装Anaconda的windows的64bit版本。
如果采用windows下安装tensorflow-gpu,经过本人的尝试和实践,最好采用安装tensorflow-gpu==1.12.0(当然python为2.7和3.6都可以)
如果选择python版本为3.6,创建环境命令如下:
conda create -n tf36 python=3.6
在环境中安装tf1.12.0
conda install tensorflow-gpu==1.12.0
当然安装的过程有点崎岖,自己估计都没想到,主要是出现两个问题。
Process finished with exit code -1073741819 (0xC0000005)
ImportError: DLL load failed: 找不到指定的程序
解决方案居然是自己忽略一个问题,我也尝试去重新装protobuf等等,但自己遇到的不是这个问题。
解决方法为。
我个人之前装的时候用的是pycharm下的Terminal
这回我成功安装的时候选择不用这个,就纯粹用Anaconda自带的Prompt命令行输入,输入为一样的语句
最后采用从创建新的环境以及安装各种库以及安装tensorflow-gpu全都用Anaconda自带的Prompt来进行安装,速度更快,一次成功。
结论: 估计用pycharm的terminal去模拟prompt来安装tensorflow-gpu有一些bug,但祥情不知。
https://blog.csdn.net/qq_38786209/article/details/78309191?readlog
https://linux.cn/article-10070-1.html
https://www.jianshu.com/p/eaee1fadc1e9
https://mirrors.tuna.tsinghua.edu.cn/help/anaconda/