tf.contrib.training.GreedyLoadBalancingStrategy
Возвращает задачу ps с наименьшей загрузкой для размещения операции.
tf.contrib.training.GreedyLoadBalancingStrategy(
num_tasks, load_fn
)
Загрузка рассчитывается с помощью указанной пользователем функции загрузки, переданной при создании. Единицы измерения загрузки отсутствуют, и функция загрузки отвечает за предоставление внутренней согласованной меры.
Обратите внимание, что эта стратегия очень чувствительна к точному порядку создания операций ps (обычно переменных), поскольку жадно размещает операции на ps с наименьшей загрузкой в момент обработки каждой операции.
Один из разумных эвристик — byte_size_load_fn, которая оценивает загрузку как количество байтов, которое будет использовано для хранения и передачи всей переменной. Более сложные функции загрузки могут учитывать различия в шаблонах доступа к операциям или балансировать между ресурсоёмкими операциями ЦП и операциями, интенсивно использующими оперативную память, с пропускной способностью сети.
Этот класс предназначен для использования в качестве ps_strategy в tf.compat.v1.train.replica_device_setter.
| Аргументы | |
|---|---|
num_tasks | Количество задач ps, между которыми циклически происходит распределение. |
load_fn | Функция, которая принимает операцию Operation и возвращает числовое значение загрузки для этой операции. |
Методы
__call__
__call__(
op
)
Выбирает индекс задачи ps для заданной Operation.
| Аргументы | |
|---|---|
op | Operation для размещения на ps. |
| Возвращаемое значение | |
|---|---|
Следующий индекс задачи ps, который следует использовать для Operation. Жадно размещает операцию на задаче ps с наименьшей загрузкой до настоящего момента, как определено функцией загрузки. |
© 2020 The TensorFlow Authors. All rights reserved.
Licensed under the Creative Commons Attribution License 3.0.
Code samples licensed under the Apache 2.0 License.
https://www.tensorflow.org/versions/r1.15/api_docs/python/tf/contrib/training/GreedyLoadBalancingStrategy