Spec-Zone.ru › TensorFlow

tf.experimental.dtensor.create_tpu_mesh

Возвращает распределённую сетку TPU, оптимизированную для сокращений типа AllReduce.

tf.experimental.dtensor.create_tpu_mesh(
    mesh_dim_names: List[str],
    mesh_shape: List[int],
    mesh_name: str,
    ring_dims: Optional[int] = None,
    ring_axes: Optional[List[str]] = None,
    ring_bounds: Optional[List[int]] = None,
    can_split_host_across_rings: bool = True,
    build_ring_across_rings: bool = False,
    rotate_ring_across_rings: bool = False,
    use_xla_spmd: bool = layout_lib.USE_XLA_SPMD
) -> tf.experimental.dtensor.Mesh

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

Эта функция всегда использует все устройства TPU и предлагает больше настроек, чем tf.experimental.dtensor.create_distributed_mesh.

Аргументы
mesh_dim_names Список имён измерений сетки.
mesh_shape Форма сетки.
mesh_name Уникальное имя для сетки. Если пустое, будет сгенерировано автоматически.
ring_dims Необязательно; количество ведущих (ring_dims > 0) или хвостовых (ring_dims < 0) измерений сетки для построения колец. Если не указано, кольца строятся для всех, кроме первого измерения.
ring_axes Необязательно; перестановка ["x", "y", "z", "core"], определяющая порядок осей топологии TPU для построения колец. Если не указано, используется ["core", "x", "y", "z"].
ring_bounds Необязательно; максимальное количество устройств на каждой оси в порядке x, y, z, core. Если не указано, используются пределы физической топологии.
can_split_host_across_rings Необязательно; если true, устройства, подключенные к одному хосту (т.е., клиенту DTensor), могут быть назначены разным кольцам. Установка в false может сделать некоторые комбинации аргументов невозможными; см. DeviceAssignmentTest.testCreateMesh[No]SplittingHosts* для примеров.
build_ring_across_rings Необязательно; если true, также строит кольцо данных по всем моделям попарно. Это кольцо может быть смещенным.
rotate_ring_across_rings Необязательно; если true, строит кольцо данных в столбце-главном, а не в строке-главном порядке.
use_xla_spmd Логическое значение. Если True, будет использоваться XLA SPMD вместо DTensor SPMD.

© 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/create_tpu_mesh

Spec-Zone.ru

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