Spec-Zone.ru › TensorFlow

tf.distribute.experimental.partitioners.MaxSizePartitioner

Партиционер, который ограничивает размер шардов значением max_shard_bytes.

Наследует от: Partitioner

tf.distribute.experimental.partitioners.MaxSizePartitioner(
    max_shard_bytes, max_shards=None, bytes_per_string=16
)

Этот партиционер гарантирует, что размер каждого шарда не превышает max_shard_bytes, и старается выделить как можно меньше шардов, то есть максимально увеличить размер шарда.

Если партиционер достигает ограничения max_shards, размер каждого шарда может оказаться больше max_shard_bytes. По умолчанию max_shards равно None, и ограничение на количество шардов не применяется.

Примеры:

partitioner = MaxSizePartitioner(max_shard_bytes=4)
partitions = partitioner(tf.TensorShape([6, 1]), tf.float32)
[6, 1]
partitioner = MaxSizePartitioner(max_shard_bytes=4, max_shards=2)
partitions = partitioner(tf.TensorShape([6, 1]), tf.float32)
[2, 1]
partitioner = MaxSizePartitioner(max_shard_bytes=1024)
partitions = partitioner(tf.TensorShape([6, 1]), tf.float32)
[1, 1]

# use in ParameterServerStrategy
# strategy = tf.distribute.experimental.ParameterServerStrategy(
#   cluster_resolver=cluster_resolver, variable_partitioner=partitioner)
Аргументы
max_shard_bytes Максимальный допустимый размер любого шарда.
max_shards Максимальное количество шардов в int; имеет приоритет над max_shard_bytes.
bytes_per_string Если значение раздела имеет строковый тип, задает оценку размера каждой строки.

Методы

__call__

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

__call__(
    shape, dtype, axis=0
)

Разбивает заданный объект shape и возвращает результаты разбиения.

Пример партиционера, выделяющего фиксированное количество шардов:

partitioner = FixedShardsPartitioner(num_shards=2)
partitions = partitioner(tf.TensorShape([10, 3], tf.float32), axis=0)
print(partitions) # [2, 0]
Аргументы
shape объект tf.TensorShape, форма для разбиения.
dtype объект tf.dtypes.Dtype, указывающий тип значения раздела.
axis Ось, по которой выполняется разбиение. По умолчанию: крайняя внешняя ось.
Возвращает
Список целых чисел, представляющих количество разделов по каждой оси; i-е значение соответствует i-й оси.

© 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/distribute/experimental/partitioners/MaxSizePartitioner

Spec-Zone.ru

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