tensorflow的分布式计算

本文介绍了TensorFlow如何利用gRPC进行分布式计算,包括参数服务器和工作服务器的角色,以及同步和异步模式更新参数的原理。此外,还提到了设备命名规则,并简要提及了梯度下降在分布式环境中的应用。
摘要由CSDN通过智能技术生成

gRPC(google remote producer call)框架,一种通信方式,远程过程调用,对于底层协议的一个封装,解决一些传输错误的问题,同步的问题。

七层网络及对应协议:
应用层(Http),表示层,会话层,传输层(tcp/udp),网络层(ip),数据链路层(ppp),物理层(rj45)

TensorFlow怎么进行分布式计算?
两类服务器:
参数服务器(parameter server,ps),
工作服务器(worker):主要功能就是去计算
Tensorflow中,设备命名的规则
参数服务器:可以有多台,/job:ps/task:0
工作服务器 :可以有多台,/job:worker:task:0/cpu:0
其中0有几台就改变,比如第二台工作服务器,使用第二个gpu
写为:/job:worker:task:1/gpu:1
分布式更新参数的模式:协调存储更新参数:
(1)同步模式更新:比如:worker1得到变化值1,worker2得到变化值2,将两个变化值传到ps,求平均值,然后更新。同步是因为每个服务器有时间快慢,需要等到所有服务器都传到变化值,一起更新
(2)异步模式更新:比如:worker1得到变化值1,worker2得到变化值2,每个服务器运行处理完后,及时将值传到ps,直接计算。可以提高速度,不用顾虑单个服务器的性能
梯度下降:w’=w-a(方向)变化量1
W’’=w’-a(方向)-变化量2
在这里插入图片描述
分布式代码:

import tensorflow as tf
FLAGS = tf.app.flags.FLAGS
tf.app.flags.DEFINE_string("job_name", " ","启动服务的类型ps or worker")
t
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值