TensorFlow - 分布式计算

本章将重点介绍如何开始使用分布式 TensorFlow。 目的是帮助开发人员理解重复出现的基本分布式 TF 概念,例如 TF 服务器。 我们将使用 Jupyter Notebook 来评估分布式 TensorFlow。 下面提到用TensorFlow实现分布式计算 −

步骤 1 − 导入分布式计算所需的必要模块 −

import tensorflow as tf

步骤 2 − 创建一个具有一个节点的 TensorFlow 集群。 让这个节点负责一个名为"worker"的工作,它将在 localhost:2222 上运行一次。

cluster_spec = tf.train.ClusterSpec({'worker' : ['localhost:2222']})
server = tf.train.Server(cluster_spec)
server.target

上述脚本生成以下输出 −

'grpc://localhost:2222'
The server is currently running.

步骤 3 − 可以通过执行以下命令来计算具有相应会话的服务器配置 −

server.server_def

上面的命令生成以下输出 −

cluster {
   job {
      name: "worker"
      tasks {
         value: "localhost:2222"
      }
   }
}
job_name: "worker"
protocol: "grpc"

步骤 4 − 启动 TensorFlow 会话,执行引擎是服务器。 使用 TensorFlow 创建本地服务器并使用 lsof 找出服务器的位置。

sess = tf.Session(target = server.target)
server = tf.train.Server.create_local_server()

步骤 5 − 查看此会话中可用的设备并关闭相应的会话。

devices = sess.list_devices()
for d in devices:
   print(d.name)
sess.close()

上面的命令生成以下输出 −

/job:worker/replica:0/task:0/device:CPU:0