tf.test.create_local_cluster
| Просмотреть исходный код на GitHub |
Создать и запустить локальные серверы и вернуть связанные Server объекты.
tf.test.create_local_cluster(
num_workers, num_ps, protocol='grpc', worker_config=None,
ps_config=None
)
"PS" означает "параметрический сервер": задача, ответственная за хранение и обновление параметров модели. Другие задачи отправляют обновления этих параметров, когда работают над оптимизацией параметров. Такое разделение труда между задачами не является обязательным, но часто используется для распределенного обучения.
Подробнее см. https://www.tensorflow.org/guide/extend/architecture
На рисунке показано взаимодействие этих компонентов. "/job:worker/task:0" и "/job:ps/task:0" — это две задачи с рабочими службами.
Пример:
workers, _ = tf.test.create_local_cluster(num_workers=2, num_ps=2)
worker_sessions = [tf.compat.v1.Session(w.target) for w in workers]
with tf.device("/job:ps/task:0"):
...
with tf.device("/job:ps/task:1"):
...
with tf.device("/job:worker/task:0"):
...
with tf.device("/job:worker/task:1"):
...
worker_sessions[0].run(...)
| Аргументы | |
|---|---|
num_workers | Количество серверов рабочих процессов, которые нужно запустить. |
num_ps | Количество серверов PS, которые нужно запустить. |
protocol | Протокол связи. Допустимые значения описаны в документации tf.distribute.Server. |
worker_config | (необязательно) tf.ConfigProto для инициализации рабочих процессов. Может использоваться для создания нескольких устройств и т. д. |
ps_config | (необязательно) tf.ConfigProto для инициализации серверов PS. |
| Возвращаемое значение | |
|---|---|
Кортеж (worker_servers, ps_servers). worker_servers — список объектов num_workers типа tf.distribute.Server (все работают локально); и ps_servers — список объектов num_ps аналогичного типа. |
| Исключения | |
|---|---|
ImportError | если модуль portpicker не был найден во время загрузки |
© 2020 The TensorFlow Authors. All rights reserved.
Licensed under the Creative Commons Attribution License 3.0.
Code samples licensed under the Apache 2.0 License.
https://www.tensorflow.org/versions/r2.4/api_docs/python/tf/test/create_local_cluster