# tf.raw_ops.NcclAllReduce

<br />

Outputs a tensor containing the reduction across all input tensors.

#### View aliases


**Compat aliases for migration**

See
[Migration guide](https://www.tensorflow.org/guide/migrate) for
more details.

[`tf.compat.v1.raw_ops.NcclAllReduce`](https://www.tensorflow.org/api_docs/python/tf/raw_ops/NcclAllReduce)

<br />

    tf.raw_ops.NcclAllReduce(
        input, reduction, num_devices, shared_name, name=None
    )

Outputs a tensor containing the reduction across all input tensors passed to ops
within the same \`shared_name.

The graph should be constructed so if one op runs with shared_name value `c`,
then `num_devices` ops will run with shared_name value `c`. Failure to do so
will cause the graph execution to fail to complete.

input: the input to the reduction
data: the value of the reduction across all `num_devices` devices.
reduction: the reduction operation to perform.
num_devices: The number of devices participating in this reduction.
shared_name: Identifier that shared between ops of the same reduction.

<br />

<br />

<br />

| ## Args ||
|---|---|
| `input` | A `Tensor`. Must be one of the following types: `half`, `float32`, `float64`, `int32`, `int64`. |
| `reduction` | A `string` from: `"min", "max", "prod", "sum"`. |
| `num_devices` | An `int`. |
| `shared_name` | A `string`. |
| `name` | A name for the operation (optional). |

<br />

<br />

<br />

<br />

| ## Returns ||
|---|---|
| A `Tensor`. Has the same type as `input`. ||

<br />