tf.compat.v1.tpu.batch_parallel
Разделение computation по размеру пакетной обработки для параллельного выполнения.
tf.compat.v1.tpu.batch_parallel(
computation: Callable[..., Any],
inputs: Optional[List[List[Optional[core_types.Tensor]]]] = None,
num_shards: int = 1,
infeed_queue: Optional[tpu_feed.InfeedQueue] = None,
device_assignment: Optional[tf.tpu.experimental.DeviceAssignment] = None,
name: Optional[Text] = None,
xla_options: Optional[tf.tpu.XLAOptions] = None
)
Удобная обертка вокруг shard().
inputs должна быть списком тензоров или None (эквивалентно пустому списку). Каждый вход разделяется на num_shards части по 0-й размерности, и вычисление применяется к каждому фрагменту параллельно.
Тензоры транслируются на все фрагменты, если они лексически захвачены computation. Например:
x = tf.constant(7) def computation(): return x + 3 ... = shard(computation, ...)
Выходы всех фрагментов конкатенируются обратно по их 0-й размерности.
Входы и выходы вычисления должны быть тензорами с рангом не менее 1.
| Аргументы | |
|---|---|
computation | Функция Python, которая создаёт вычисление, применяемое к каждому фрагменту входных данных. |
inputs | Список входных тензоров или None (эквивалентно пустому списку). 0-й размер каждого тензора должен быть кратным num_shards. |
num_shards | Количество фрагментов. |
infeed_queue | Если не None, то InfeedQueue , из которого нужно добавить кортеж аргументов в качестве входных данных для computation. |
device_assignment | Если не None, то DeviceAssignment , описывающий сопоставление между логическими ядрами в вычислении и физическими ядрами в топологии TPU. Используется значение по умолчанию для назначения устройства, если None. DeviceAssignment можно опустить, если каждый фрагмент вычисления использует только одно ядро, и либо есть только один фрагмент, либо количество фрагментов равно количеству ядер в системе TPU. |
name | (Устарело) Ничего не делает. |
xla_options | Экземпляр tpu.XLAOptions , который указывает опции, переданные компилятору XLA. Используйте None для опций по умолчанию. |
| Возвращает | |
|---|---|
| Список выходных тензоров. |
| Исключения | |
|---|---|
ValueError | Если num_shards <= 0 |
© 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/compat/v1/tpu/batch_parallel