Spec-Zone.ru › TensorFlow 2.9

tf.experimental.dtensor.relayout

Изменяет расположение tensor.

tf.experimental.dtensor.relayout(
    tensor: tf.Tensor,
    layout: tf.experimental.dtensor.Layout
) -> tf.Tensor

Изменяет расположение tensor на layout. Это используется для тонкой настройки поведения операций, следующих за/связанных с tensor, например, выбора одной схемы SPMD-расширения вместо другой. Это работает, передавая layout во взаимосвязанные вычислительные графы TensorFlow во время распространения расположения.

В настоящее время поддерживается только преобразование расположений из реплицированных в фрагментированные или из фрагментированных в реплицированные по размеру сетки. То есть поддерживается «x, y» -> «нефрагментированное, y», но не «x, y» -> «z, y».

Мы также поддерживаем специальную схему фрагментации «match», которая инструктирует relayout действовать как операция тождества относительно любой фрагментации по этим измерениям сетки.

Relayout внутренне понижается до набора операций Split и/или AllToAll. Когда расположения тензоров преобразуются из реплицированных в фрагментированные, стоимость сравнительно низка, так как мы вставляем только операции Split, и межпроцессорное взаимодействие не требуется. Однако, когда расположения тензоров преобразуются из фрагментированных в реплицированные, может произойти межпроцессорное взаимодействие, что может вызвать потенциальное снижение производительности.

Аргументы
tensor DTensor для задания нового расположения.
layout Объект Layout, определяющий новую схему фрагментации.
Возвращаемое значение
DTensor выходной из операции Relayout.

© 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/experimental/dtensor/relayout

Spec-Zone.ru

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