AllReduceCrossTowerOps
Inherits From: CrossTowerOps
Defined in tensorflow/contrib/distribute/python/cross_tower_ops.py.
Reduction using all reduce.
__init____init__(
all_reduce_alg='nccl',
num_packs=1,
agg_small_grads_max_bytes=0,
agg_small_grads_max_group=10
)
All-reduce implementation of CrossTowerOps.
Before performing all-reduce, tensors will be repacked or aggregated for more efficient cross-device transportation: 1) If num_packs is non-zero, pack values into num_packs splits. 2) Otherwise, if agg_small_grads_max_bytes > 0 and agg_small_grads_max_group > 0, aggregate values smaller than agg_small_grads_max_bytes into groups with at most agg_small_grads_max_group values. 3) Otherwise, no repacking or grouping will happen.
all_reduce_alg: the all-reduce algorithm to use, currently only "nccl" or "hierarchical_copy" are supported.num_packs: see above.agg_small_grads_max_bytes: see above.agg_small_grads_max_group: see above. tensors.batch_reducebatch_reduce(
method_string,
value_destination_pairs
)
Reduce PerDevice objects in a batch.
Reduce each first element in value_destination_pairs to each second element which indicates the destinations.
method_string: either 'sum' or 'mean' specifying the reduction method.value_destination_pairs: a list or a tuple of tuples of PerDevice objects and destinations. If a destination is None, then the destinations are set to match the devices of the input PerDevice object.a list of Mirrored objects.
ValueError: if value_destination_pairs is not a list or a tuple of tuples of PerDevice objects and destinationsbroadcastbroadcast(
tensor,
destinations
)
Broadcast the tensor to destinations.
tensor: the tensor to broadcast.destinations: the broadcast destinations.a Mirrored object.
reducereduce(
method_string,
per_device_value,
destinations=None
)
Reduce per_device_value to destinations.
It runs the reduction operation defined by method_string and put the result on destinations.
method_string: either 'sum' or 'mean' specifying the reduction method.per_device_value: a PerDevice object.destinations: the reduction destinations.a Mirrored object.
ValueError: if per_device_value is not a PerDevice object.
© 2018 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/api_docs/python/tf/contrib/distribute/AllReduceCrossTowerOps