TensorFlow - Computação Distribuída
Este capítulo se concentrará em como começar a usar o TensorFlow distribuído. O objetivo é ajudar os desenvolvedores a entender os conceitos básicos de TF distribuídos que são recorrentes, como servidores TF. Usaremos o Jupyter Notebook para avaliar o TensorFlow distribuído. A implementação da computação distribuída com TensorFlow é mencionada abaixo -
Step 1 - Importe os módulos necessários obrigatórios para computação distribuída -
import tensorflow as tf
Step 2- Crie um cluster TensorFlow com um nó. Deixe este nó ser responsável por um trabalho que tem o nome "trabalhador" e que irá operar uma tomada no localhost: 2222.
cluster_spec = tf.train.ClusterSpec({'worker' : ['localhost:2222']})
server = tf.train.Server(cluster_spec)
server.target
Os scripts acima geram a seguinte saída -
'grpc://localhost:2222'
The server is currently running.
Step 3 - A configuração do servidor com a respectiva sessão pode ser calculada executando o seguinte comando -
server.server_def
O comando acima gera a seguinte saída -
cluster {
job {
name: "worker"
tasks {
value: "localhost:2222"
}
}
}
job_name: "worker"
protocol: "grpc"
Step 4- Inicie uma sessão do TensorFlow com o mecanismo de execução sendo o servidor. Use o TensorFlow para criar um servidor local e uselsof para descobrir a localização do servidor.
sess = tf.Session(target = server.target)
server = tf.train.Server.create_local_server()
Step 5 - Visualize os dispositivos disponíveis nesta sessão e feche a respectiva sessão.
devices = sess.list_devices()
for d in devices:
print(d.name)
sess.close()
O comando acima gera a seguinte saída -
/job:worker/replica:0/task:0/device:CPU:0