Un servidor TensorFlow en proceso, para usar en entrenamiento distribuido.
Una instancia de Server
encapsula un conjunto de dispositivos y un objetivo de Session
que puede participar en un entrenamiento distribuido. Un servidor pertenece a un clúster (especificado por ClusterSpec
) y corresponde a una tarea particular en un trabajo con nombre. El servidor puede comunicarse con cualquier otro servidor del mismo clúster. El servidor no atenderá ninguna solicitud hasta que se invoque start()
. El servidor dejará de atender solicitudes una vez que se invoque stop()
o close()
. Tenga en cuenta que el método close()
detiene el servidor si se está ejecutando.
ADVERTENCIA: Un Server
posee recursos que deben liberarse explícitamente invocando close()
.
Las instancias de un Server
son seguras para subprocesos.
Ejemplo de uso:
import org.tensorflow.Server;
import org.tensorflow.distruntime.ClusterDef;
import org.tensorflow.distruntime.JobDef;
import org.tensorflow.distruntime.ServerDef;
ClusterDef clusterDef = ClusterDef.newBuilder()
.addJob(JobDef.newBuilder()
.setName("worker")
.putTasks(0, "localhost:4321")
.build()
).build();
ServerDef serverDef = ServerDef.newBuilder()
.setCluster(clusterDef)
.setJobName("worker")
.setTaskIndex(0)
.setProtocol("grpc")
.build();
try (Server srv = new Server(serverDef.toByteArray())) {
srv.start();
srv.join();
}
Constructores públicos
Servidor (byte [] serverDef) Construye una nueva instancia de servidor. |
Métodos públicos
vacío sincronizado | cerrar () Destruye un servidor TensorFlow en proceso, libera memoria. |
vacío | unirse () Bloquea hasta que el servidor se haya detenido correctamente. |
vacío sincronizado | inicio () Inicia un servidor TensorFlow en proceso. |
vacío sincronizado | detener () Detiene un servidor de TensorFlow en proceso. |
Métodos heredados
Constructores públicos
servidor público (byte [] serverDef)
Construye una nueva instancia de servidor.
Parámetros
serverDef | Definición de servidor especificada como búfer de protocolo ServerDef serializado. |
---|
Métodos públicos
público sincronizado vacío cerrado ()
Destruye un servidor TensorFlow en proceso, libera memoria.
Lanza
InterruptedException |
---|
unión vacía pública ()
Bloquea hasta que el servidor se haya detenido correctamente.
inicio vacío sincronizado público ()
Inicia un servidor TensorFlow en proceso.
parada de vacío sincronizada pública ()
Detiene un servidor de TensorFlow en proceso.