服务器可用环境:
anaconda 安装的python2.7+cuda8.0+tensorflow1.4+keras2.0.8
centos7上安装cuda8.0:
https://blog.csdn.net/zhangtong11111/article/details/79143279
安装tensorflow-gpu和keras:
conda install keras-gpu
小心自己搭配的tensorflow版本和keras版本不一致,有的函数会报错。
检测tensorflow是否在使用gpu:
import tensorflow as tf
sess = tf.Session(config=tf.ConfigProto(log_device_placement=True))
或者:
跑计算量大的代码,通过 nvidia-smi 命令查看gpu的内存使用量(不是一开始执行程序就能看到的,要开始train网络了才能看到)
开始train时,会打印包含cuda/gpu的日志:
测试python程序:
https://blog.csdn.net/freewebsys/article/details/81277857
Tip:
整个环境的搭建,用了接近一天的时间呢,其中遇到了很多问题:
1.cuda版本
我们要选用和tensorflow相匹配的版本,刚开始我一直用的是最新版cuda10,然而每次在运行程序时提示:没有libcublas.so.9.0类似的错误。这是因为版本不支持。所以还是下载8.0吧,大多是稳的。
其次,官网建议下载rpm的版本安装,然而我严格按照官网安装了,还是不成功,所以还是用run文件安装吧。按上述博主的方式安装,没有马达!
2.tensorflow+keras
这俩版本也要一致的。不能差太大,否则会报一些函数错误。用默认的conda install keras-gpu就可以完美安装两者,不需要先安装tensorflow哦。
3.theano+keras
keras的默认后端是tensorflow,如果要使用theano作为后端,需要安装theano,然后进行配置。命令如下:
安装theano:conda install then
配置keras:vim ~/.keras/keras.json
在打开的文件中,将tensorflow改为theano即可,当然也可以支持后端cntk。
4.严格验证
一定要严格用命令nvcc -v验证cuda的正确安装。
一定要确认tensorflow使用了gpu训练。