通过取列间最小值来归约每一行。
设 [object Object],[object Object]。对 [object Object]:
同步形式:
[object Object]
降低时可能引入内部临时Tile;C++内建接口需要显式传入 [object Object] 操作数。
[object Object]
[object Object]
声明于 [object Object]:
[object Object]
[object Object]
[object Object]和[object Object]必须均为[object Object]。[object Object]必须使用标准ND布局:行主且非分形([object Object]、[object Object])。[object Object]必须使用以下两种非分形布局之一:- ND布局(
[object Object]、[object Object]),或 - 列数严格为1的DN布局(
[object Object]、[object Object]、[object Object])。
- ND布局(
[object Object]和[object Object]的元素类型必须一致。- 运行时有效区域检查:
[object Object][object Object][object Object]
- 内建接口签名要求显式传入
[object Object]操作数。
- 支持的元素类型:
[object Object]、[object Object]、[object Object]、[object Object]。 - 实现同时接受ND输出和
[object Object]的DN输出。 - 运行时检查遵循共享的行归约检查路径:
[object Object][object Object][object Object]
[object Object] 被使用作为行最小值归约的暂存存储。
- 对于整数类型(
[object Object]、[object Object]):[object Object]用作逐行累加器缓冲区(1个块)。对于每一行,[object Object]初始化为最大可表示值,然后通过[object Object]累加[object Object]的各个块。最终最小值在标量模式下从[object Object]读取。[object Object]大小:至少1行和[object Object]列([object Object]为8,[object Object]为16)。
- 对于浮点类型(
[object Object]、[object Object]):[object Object]用于通过[object Object]/[object Object]的二叉树归约。- 安全的默认设置:将
[object Object]设为与[object Object]相同的形状。
- 安全的默认设置:将
[object Object] 被接口接受但Ascend 950PR/Ascend 950DT实现不使用。Ascend 950PR/Ascend 950DT后端使用基于向量寄存器的归约([object Object] 指令),不需要暂存Tile存储。[object Object] 仅为了与Atlas A2/A3 训练系列产品/Atlas A2/A3 推理系列产品的API兼容性而保留在C++内建接口签名中。
[object Object]
[object Object]
[object Object]
[object Object]
[object Object]