华为云GPU-T4 搭建分布式tensorflow

本文所有环境均手动装,没有用镜像

1. 准备所有用到的包

python

cuda

cudnn

tensorflow

2. 装python

这里是指原环境为2.7,但是我们要3.6

参考https://www.cnblogs.com/ilovepython/p/11068845.html这个帖子,完美安装

3.装cuda和cudnn

参考https://www.jianshu.com/p/a201b91b3d96

装完环境里一定要写export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda-9.0/lib64

4.装tensorflow

下载合适的版本pip3 install 即可

这里出现了问题,pip提示需要更新,但是用建议的代码更新完会出现问题,这是因为最新的pip不支持python2.7,需要升级到之前的版本

python3 -m pip install --user --upgrade pip==20.0.2

grpc插件安装失败:Failed building wheel for grpcio,直接升级pip就ok

 安装tensorflow后检查一下:

python3 -c 'import tensorflow as tf; print(tf.__version__)'

5.分布式间通信地址

用私有ip即可,不用ssh

============================================问题记录==================================================

1. 分布式tensorflow中worker实际跑停了,但是ps不知道。

一开始我直接关闭终端,但是发现这样时间长了,ps是无法创建grpc通信,

只能ps -ef查看ps上启动的服务id,然后kill id,worker上也可以这样解决

 2. -bash: pip: command not found 

https://www.cnblogs.com/y593216/p/12022098.html

3. 分布式运行期间出现

Segmentation fault (core dumped) 问题

看了很多帖子,没有解决问题

https://github.com/tensorflow/tensorflow/issues/40558

这里mark一下最集中的帖子

问题详细信息:python2.7 tensorflow 1.14.0

遇到问题不要慌:1看日志 2看帖子社区 3改版本

采用最后一种方法解决!

4. 分布式运行中,总有一个节点测试集准确率很快到达1,但是训练集准确率很低

尝试在精度阈值限定同时加上损失制限定

posted @ 2020-09-22 09:02  O_din  阅读(434)  评论(0编辑  收藏  举报