通用矩阵-向量乘法,生成累加器/输出Tile。
设:
[object Object][object Object][object Object]
对于 [object Object](有效矩阵乘法域中的输出元素):
对于 [object Object](累加到现有tile):
对于 [object Object](将偏置项添加到矩阵乘积):
注意: 精确的累加器行为和数据类型提升由目标/实现定义。
同步形式:
[object Object]
[object Object]
[object Object]
声明于 [object Object]:
[object Object]
[object Object]
以下约束在未特别说明时同时适用于 [object Object]、[object Object] 和 [object Object]。
- 静态形状约束:
[object Object][object Object][object Object]
- Tile位置约束:
[object Object][object Object][object Object]
- 运行时有效尺寸约束:
[object Object]必须为[object Object][object Object]和[object Object](取自[object Object]与[object Object])必须位于[object Object]
- 实现检查 (Atlas A2/A3 训练系列产品/Atlas A2/A3 推理系列产品):
- 支持的
[object Object]三元组:[object Object][object Object][object Object][object Object]
- 支持的
- 实现检查 (Ascend 950PR/Ascend 950DT):
- 累加器类型必须是
[object Object]或[object Object]。 - 如果为
[object Object]:[object Object]且[object Object]。 - 如果为
[object Object]:支持[object Object]、[object Object]、[object Object]、选定的fp8组合以及[object Object](目标定义)。 - 会强制执行以下分形/布局约束:
- Left:
[object Object]、[object Object]、[object Object] - Right:
[object Object]、[object Object]、[object Object] - Acc:
[object Object]、[object Object]、[object Object]
- Left:
- 累加器类型必须是
- 偏置tile的数据类型必须与
[object Object]完全一致。 - 偏置tile必须配置为单行。
- 偏置tile的位置必须为
[object Object]。 - Ascend 950PR/Ascend 950DT附加说明:
- 除上述GEMV约定外,底层Ascend 950PR/Ascend 950DT matmul实现不会再单独补充一组显式的
[object Object]运行时断言。
- 除上述GEMV约定外,底层Ascend 950PR/Ascend 950DT matmul实现不会再单独补充一组显式的
[object Object]
[object Object]
[object Object]
[object Object]
[object Object]
[object Object]
[object Object]
[object Object]
[object Object]