Spec-Zone.ru › TensorFlow

tf.experimental.dtensor.barrier

Выполняет барьерную синхронизацию на mesh.

tf.experimental.dtensor.barrier(
    mesh: tf.experimental.dtensor.Mesh,
    barrier_name: Optional[str] = None,
    timeout_in_ms: Optional[int] = None
)

После возврата из барьерной синхронизации все операции, запущенные до неё, будут завершены на всех клиентах. В настоящее время мы выделяем полностью шардированный тензор с формой mesh и выполняем для него all_reduce.

Пример:

Барьерную синхронизацию можно использовать перед выходом из приложения, чтобы убедиться в завершении ожидающих операций.

x = [1, 2, 3]
x = dtensor.relayout(x, dtensor.Layout.batch_sharded(mesh, 'batch', 1))
dtensor.barrier(mesh)

# At this point all devices on all clients in the mesh have completed
# operations before the barrier. Therefore it is OK to tear down the clients.
sys.exit()
Аргументы
mesh Mesh, на котором выполняется барьерная синхронизация.
barrier_name Имя барьерной синхронизации. В основном используется для ведения журналов.
timeout_in_ms Время ожидания барьерной синхронизации в мс. Если не указано, выполнение блокируется на неопределённое время, пока барьерная синхронизация не будет достигнута всеми клиентами.

© 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/api_docs/python/tf/experimental/dtensor/barrier

Spec-Zone.ru

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