TensorFlow - Calcolo distribuito
Questo capitolo si concentrerà su come iniziare con TensorFlow distribuito. Lo scopo è aiutare gli sviluppatori a comprendere i concetti di base di TF distribuito che si stanno ripetendo, come i server TF. Useremo il Jupyter Notebook per valutare TensorFlow distribuito. L'implementazione dell'elaborazione distribuita con TensorFlow è menzionata di seguito:
Step 1 - Importa i moduli necessari obbligatori per il calcolo distribuito -
import tensorflow as tf
Step 2- Crea un cluster TensorFlow con un nodo. Lascia che questo nodo sia responsabile di un lavoro che abbia il nome "worker" e che opererà un take su localhost: 2222.
cluster_spec = tf.train.ClusterSpec({'worker' : ['localhost:2222']})
server = tf.train.Server(cluster_spec)
server.target
Gli script precedenti generano il seguente output:
'grpc://localhost:2222'
The server is currently running.
Step 3 - La configurazione del server con la rispettiva sessione può essere calcolata eseguendo il seguente comando -
server.server_def
Il comando precedente genera il seguente output:
cluster {
job {
name: "worker"
tasks {
value: "localhost:2222"
}
}
}
job_name: "worker"
protocol: "grpc"
Step 4- Avvia una sessione TensorFlow con il motore di esecuzione come server. Usa TensorFlow per creare un server locale e usalsof per scoprire la posizione del server.
sess = tf.Session(target = server.target)
server = tf.train.Server.create_local_server()
Step 5 - Visualizza i dispositivi disponibili in questa sessione e chiudi la rispettiva sessione.
devices = sess.list_devices()
for d in devices:
print(d.name)
sess.close()
Il comando precedente genera il seguente output:
/job:worker/replica:0/task:0/device:CPU:0