Spec-Zone.ru › TensorFlow 2.9

tf.data.experimental.service.DispatchServer

Сервер диспетчеризации службы tf.data в процессе.

tf.data.experimental.service.DispatchServer(
    config=None, start=True
)

Сервер tf.data.experimental.service.DispatchServer координирует кластер tf.data.experimental.service.WorkerServer серверов. При запуске рабочие серверы регистрируются у диспетчера.

dispatcher = tf.data.experimental.service.DispatchServer()
dispatcher_address = dispatcher.target.split("://")[1]
worker = tf.data.experimental.service.WorkerServer(
    tf.data.experimental.service.WorkerConfig(
    dispatcher_address=dispatcher_address))
dataset = tf.data.Dataset.range(10)
dataset = dataset.apply(tf.data.experimental.service.distribute(
    processing_mode="parallel_epochs", service=dispatcher.target))
print(list(dataset.as_numpy_iterator()))
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

При запуске отдельного процесса диспетчеризации tf.data используйте join(), чтобы заблокировать выполнение бесконечно после запуска сервера.

dispatcher = tf.data.experimental.service.DispatchServer(
    tf.data.experimental.service.DispatcherConfig(port=5050))
dispatcher.join()

Чтобы запустить DispatchServer в отказоустойчивом режиме, установите work_dir и fault_tolerant_mode следующим образом:

dispatcher = tf.data.experimental.service.DispatchServer(
    tf.data.experimental.service.DispatcherConfig(
        port=5050,
        work_dir="gs://my-bucket/dispatcher/work_dir",
        fault_tolerant_mode=True))
Аргументы
config (Необязательно.) Конфигурация tf.data.experimental.service.DispatcherConfig. Если None, диспетчер будет использовать значения по умолчанию.
start (Необязательно.) Булево значение, указывающее, следует ли запускать сервер после его создания. По умолчанию True.
Атрибуты
target Возвращает целевой объект, который можно использовать для подключения к серверу.
dispatcher = tf.data.experimental.service.DispatchServer()
dataset = tf.data.Dataset.range(10)
dataset = dataset.apply(tf.data.experimental.service.distribute(
    processing_mode="parallel_epochs", service=dispatcher.target))

Возвращаемая строка будет в формате protocol://address, например, "grpc://localhost:5050".

Методы

join

Просмотреть исходный код

join()

Ожидает завершения работы сервера.

Это полезно при запуске отдельного процесса диспетчеризации.

dispatcher = tf.data.experimental.service.DispatchServer(
    tf.data.experimental.service.DispatcherConfig(port=5050))
dispatcher.join()
Исключения
tf.errors.OpError Или один из его подклассов, если при присоединении к серверу произошла ошибка.

start

Просмотреть исходный код

start()

Запускает этот сервер.

dispatcher = tf.data.experimental.service.DispatchServer(start=False)
dispatcher.start()
Исключения
tf.errors.OpError Или один из его подклассов, если при запуске сервера произошла ошибка.

© 2022 The TensorFlow Authors. All rights reserved.
Licensed under the Creative Commons Attribution License 4.0.
Code samples licensed under the Apache 2.0 License.
https://www.tensorflow.org/versions/r2.9/api_docs/python/tf/data/experimental/service/DispatchServer

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API