TensorFlow - 分布式计算

  • 简述

    本章将重点介绍如何开始使用分布式 TensorFlow。目的是帮助开发人员了解重复出现的基本分布式 TF 概念,例如 TF 服务器。我们将使用 Jupyter Notebook 来评估分布式 TensorFlow。下面提到了使用 TensorFlow 实现分布式计算 -
    Step 1 − 导入分布式计算所需的必要模块 −
    
    import tensorflow as tf
    
    Step 2− 用一个节点创建一个 TensorFlow 集群。让这个节点负责一个名为“worker”的作业,该作业将在 localhost:2222 上运行一个 take。
    
    cluster_spec = tf.train.ClusterSpec({'worker' : ['localhost:2222']})
    server = tf.train.Server(cluster_spec)
    server.target
    
    上述脚本生成以下输出 -
    
    'grpc://localhost:2222'
    The server is currently running.
    
    Step 3 - 可以通过执行以下命令计算具有相应会话的服务器配置 -
    
    server.server_def
    
    上面的命令生成以下输出 -
    
    cluster {
       job {
          name: "worker"
          tasks {
             value: "localhost:2222"
          }
       }
    }
    job_name: "worker"
    protocol: "grpc"
    
    Step 4− 以执行引擎为服务器启动 TensorFlow 会话。使用TensorFlow创建本地服务器并使用lsof 找出服务器的位置。
    
    sess = tf.Session(target = server.target)
    server = tf.train.Server.create_local_server()
    
    Step 5 − 查看此会话中可用的设备并关闭相应的会话。
    
    devices = sess.list_devices()
    for d in devices:
       print(d.name)
    sess.close()
    
    上面的命令生成以下输出 -
    
    /job:worker/replica:0/task:0/device:CPU:0