reduce

Tensor operation : C = reduce op( alpha * A ) + beta * C

- list of op CUDNN_REDUCE_TENSOR_ADD = 0, CUDNN_REDUCE_TENSOR_MUL = 1, CUDNN_REDUCE_TENSOR_MIN = 2, CUDNN_REDUCE_TENSOR_MAX = 3, CUDNN_REDUCE_TENSOR_AMAX = 4, CUDNN_REDUCE_TENSOR_AVG = 5, CUDNN_REDUCE_TENSOR_NORM1 = 6, CUDNN_REDUCE_TENSOR_NORM2 = 7, CUDNN_REDUCE_TENSOR_MUL_NO_ZEROS = 8,

The NaN propagation enum applies to only the min and max reduce ops; the other reduce ops propagate NaN as usual. The indices space is ignored for reduce ops other than min or max.

version(grain_cuda)
void
reduce
(
cudnnReduceTensorOp_t op
T
size_t dim
)
(
Variable!(T, dim, DeviceStorage) src
,
Variable!(T, dim, DeviceStorage) dst
,
T alpha = 1
,
T beta = 0
)

Meta