CANN/asc-devkit ScaleBND布局API

CANN/asc-devkit ScaleBND布局API MakeScaleBNDLayout【免费下载链接】asc-devkit本项目是CANN 推出的昇腾AI处理器专用的算子程序开发语言原生支持C和C标准规范主要由类库和语言扩展层构成提供多层级API满足多维场景算子开发诉求。项目地址: https://gitcode.com/cann/asc-devkit产品支持情况产品是否支持Ascend 950PR/Ascend 950DT√函数原型template typename T, typename U, typename S __aicore__ inline decltype(auto) MakeScaleBNDLayout(U row, S column)功能描述创建ScaleBND格式的Layout对象。ScaleBND格式用于矩阵B的非转置布局scaleK, n常用于矩阵乘法中B矩阵的存储。参数说明表 1模板参数说明参数名输入/输出描述T输入数据类型支持数据类型为fp8_e8m0_t。U输入行参数类型可以是编译时常量或运行时变量。S输入列参数类型可以是编译时常量或运行时变量。表 2参数说明参数名输入/输出描述row输入矩阵的行数。column输入矩阵的列数。返回值输入为编译时常量时返回ScaleBNDLayout格式的Layout类型。输入为整型变量时返回ScaleBNDLayout格式的Layout对象。返回对齐后的Layout对齐方式及对应位置的参数大小说明详见Layout和层次化表述法。约束说明参数row和column需为size_t类型或Int整型常量。对于T为fp8_e8m0_t时row需为2的倍数。使用示例using namespace AscendC::Te; // 使用编译时常量 auto staticLayout MakeScaleBNDLayoutfp8_e8m0_t(Std::Int64{}, Std::Int32{}); // 使用运行时变量 size_t scaleK 64; size_t n 32; auto layout2 MakeScaleBNDLayoutfp8_e8m0_t(scaleK, n);【免费下载链接】asc-devkit本项目是CANN 推出的昇腾AI处理器专用的算子程序开发语言原生支持C和C标准规范主要由类库和语言扩展层构成提供多层级API满足多维场景算子开发诉求。项目地址: https://gitcode.com/cann/asc-devkit创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考