TensorFlow-分散コンピューティング
この章では、分散TensorFlowの使用を開始する方法に焦点を当てます。目的は、開発者がTFサーバーなどの繰り返し発生する基本的な分散TFの概念を理解できるようにすることです。分散TensorFlowの評価にはJupyterNotebookを使用します。TensorFlowを使用した分散コンピューティングの実装について以下に説明します-
Step 1 −分散コンピューティングに必須の必要なモジュールをインポートします−
import tensorflow as tf
Step 2−1つのノードでTensorFlowクラスターを作成します。このノードに、「worker」という名前のジョブを担当させ、localhost:2222で1つのテイクを操作します。
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