前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >TensorFlow 分布式集群

TensorFlow 分布式集群

作者头像
kongxx
发布2018-05-14 12:19:29
8340
发布2018-05-14 12:19:29
举报

上一篇博客说了怎样创建一个 Local Server 的集群,今天说说怎样创建一个真正的分布式集群。

我们准备了两个机器,如下:

代码语言:javascript
复制
192.168.0.192
192.168.0.193

我们将使用这两个机器来组成一个集群,然后把 tensorflow task 扔到其中的某个节点上运行。

  • 我们准备了两个 server 程序,用来分别在两个机器上启动来组成一个集群,并接收task。
  • 创建一个 client 程序,用来向集群提交 task。

server1.py

代码语言:javascript
复制
import sys
import time
import tensorflow as tf

try:
    worker1 = "192.168.0.192:8881"
    worker2 = "192.168.0.193:8881"
    worker_hosts = [worker1, worker2]
    cluster_spec = tf.train.ClusterSpec({ "worker": worker_hosts})
    server = tf.train.Server(cluster_spec, job_name="worker", task_index=0)
    server.join()
except KeyboardInterrupt:
    sys.exit()

server2.py

代码语言:javascript
复制
import sys
import time
import tensorflow as tf

try:
    worker1 = "192.168.0.192:8881"
    worker2 = "192.168.0.193:8881"
    worker_hosts = [worker1, worker2]
    cluster_spec = tf.train.ClusterSpec({ "worker": worker_hosts})
    server = tf.train.Server(cluster_spec, job_name="worker", task_index=1)
    server.join()
except KeyboardInterrupt:
    sys.exit()

client.py

代码语言:javascript
复制
import tensorflow as tf
with tf.Session("grpc://192.168.0.192:8881") as session:
    with tf.device("/job:worker/task:0"):
        matrix1 = tf.constant([[3., 3.]])
        matrix2 = tf.constant([[2.],[2.]])
        product = tf.matmul(matrix1, matrix2)
        result = session.run(product)
        print result

测试

  • 在 192.168.0.192 上运行 “python server1.py”
  • 在 192.168.0.193 上运行 “python server2.py”
  • 在任意一台机器上运行 “python client.py”
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2017.10.18 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • server1.py
  • server2.py
  • client.py
  • 测试
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档