开发者
资源

SetOrgShape

功能说明

设置Matmul计算时的原始完整的形状M、N、K或Ka/Kb,单位均为元素个数。

函数原型

1
int32_t SetOrgShape(int32_t orgMIn, int32_t orgNIn, int32_t orgKIn)
1
int32_t SetOrgShape(int32_t orgMIn, int32_t orgNIn, int32_t orgKaIn, int32_t orgKbIn)

参数说明

表1 参数说明

参数名

输入/输出

描述

orgMIn

输入

设置原始完整的形状M大小,单位为元素。

orgNIn

输入

设置原始完整的形状N大小,单位为元素。

orgKIn

输入

设置原始完整的形状K大小,单位为元素。原始完整形状Ka=Kb时可设置。

orgKaIn

输入

设置矩阵A原始完整的形状Ka大小,单位为元素。

orgKbIn

输入

设置矩阵B原始完整的形状Kb大小,单位为元素。

返回值说明

-1表示设置失败; 0表示设置成功。

约束说明

参数orgKaIn和orgKbIn可以不相等,即原始矩阵形状Ka和Kb不相等,并不是实际Matmul计算时的K,此参数只用于辅助Matmul API搬运时的偏移计算。

调用示例

1
2
3
4
5
auto ascendcPlatform = platform_ascendc::PlatformAscendC(context->GetPlatformInfo());
matmul_tiling::MatmulApiTiling tiling(ascendcPlatform); 
  
tiling.SetShape(1024, 1024, 1024);
tiling.SetOrgShape(1024, 1024, 1024);  // 设置原始完整的形状