tf.config.experimental_connect_to_cluster
| Просмотреть исходный код на GitHub |
Подключается к заданному кластеру.
tf.config.experimental_connect_to_cluster(
cluster_spec_or_resolver, job_name='localhost', task_index=0, protocol=None,
make_master_device_default=True, cluster_device_filters=None
)
Сделает устройства в кластере доступными для использования. Обратите внимание, что вызов этого более одного раза будет работать, но приведет к аннулированию всех дескрипторов тензоров на старых удалённых устройствах.
Если заданное имя локальной работы отсутствует в спецификации кластера, оно будет автоматически добавлено, используя неиспользуемый порт на локальном хосте.
Можно указать фильтры устройств, чтобы изолировать группы удалённых задач, чтобы избежать нежелательных доступов между рабочими узлами. Рабочие узлы, обращающиеся к ресурсам или запускающие операции/функции на отфильтрованных удалённых устройствах, приведут к ошибкам (неизвестные устройства). Для любой удалённой задачи, если нет фильтра устройства, все устройства кластера будут видны; если указан любой фильтр устройства, он может видеть только устройства, соответствующие хотя бы одному фильтру. Устройства на самой задаче всегда видны. Фильтры устройств могут быть частично указаны.
Например, для кластера, настроенного для обучения с параметрическим сервером, могут быть указаны следующие фильтры устройств:
cdf = tf.config.experimental.ClusterDeviceFilters()
# For any worker, only the devices on PS nodes and itself are visible
for i in range(num_workers):
cdf.set_device_filters('worker', i, ['/job:ps'])
# Similarly for any ps, only the devices on workers and itself are visible
for i in range(num_ps):
cdf.set_device_filters('ps', i, ['/job:worker'])
tf.config.experimental_connect_to_cluster(cluster_def,
cluster_device_filters=cdf)
| Аргументы | |
|---|---|
cluster_spec_or_resolver | A ClusterSpec или ClusterResolver описывающая кластер. |
job_name | Имя локальной работы. |
task_index | Индекс локальной задачи. |
protocol | Протокол связи, такой как "grpc". Если не указано, будет использоваться значение по умолчанию из python/platform/remote_utils.py. |
make_master_device_default | Если True и передан разрешитель кластера, автоматически войдёт в область действия устройства главной задачи, что указывает на то, что главный становится устройством по умолчанию для выполнения операций. Это ничего не сделает, если передан кластерный спецификатор. Вызовет ошибку, если вызывающий объект уже находится в какой-либо области действия устройства. |
cluster_device_filters | экземпляр tf.train.experimental/ClusterDeviceFilters, который определяет фильтры устройств для удалённых задач в кластере. |
© 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.3/api_docs/python/tf/config/experimental_connect_to_cluster