| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
fix: RmsNormQuantV2/V3新算子按照标准整改 Co-authored-by: liiu-qii<liuqi330@huawei.com> # message auto-generated for no-merge-commit merge: !5393 merge fixRNQ into master fix: RmsNormQuantV2/V3新算子按照标准整改 Created-by: huanghaihong Commit-by: liiu-qii Merged-by: cann-robot Description: ## 描述 修复RmsNormQuantV2和RmsNormQuantV3算子的tiling key不合规问题,将旧的硬编码tiling key(5000/6000)+ 运行时 TILING_KEY_IS()分发方式,迁移到标准的模板化tiling key体系(ASCENDC_TPL_ARGS_DECL + if constexpr编译期分发)。同时对V3算子进行目录结构合规化改造。 ### 改动原因 RmsNormQuantV2/V3算子使用了非标准的tiling key硬编码方式(#define RMSNORMQUANTV2_REGBASE_NORMAL 5000),不符合当前仓库的模板化tiling key规范。V3算子的目录结构(kernel文件未放入arch35/、op_api在op_host下、使用simplified_key.ini配置等)也不符合生产仓标准。 ### 改动方法 **RmsNormQuantV2改造:** - 新增op_kernel/arch35/rms_norm_quant_v2_tiling_key.h,使用ASCENDC_TPL_ARGS_DECL宏声明模板参数(COMPUTE_MODE: FULL_LOAD=0, RECOMPUTE=1) - 新增RmsNormQuantV2TilingKey类,通过GET_TPL_TILING_KEY生成tiling key - 内核函数从extern "C"改为模板函数template <int8_t COMPUTE_MODE> - 内核分发从运行时TILING_KEY_IS()改为if constexpr编译期分发 - REGISTER_TILING_DEFAULT从函数内部移至函数外部 **RmsNormQuantV3合规化:** - 内核文件从op_kernel/rms_norm_quant_v3_apt.cpp迁移至op_kernel/arch35/rms_norm_quant_v3.cpp - 新增op_kernel/CMakeLists.txt,使用add_kernel_sources配置(SIMPLIFIED_KEY=0, AUTO_SYNC=false) - op_api/目录从op_host/op_api/迁移至算子根目录下的op_api/ - 删除op_host/config/ascend950/rms_norm_quant_v3_simplified_key.ini - 移除rms_norm_quant_v3_def.cpp中的ExtendCfgInfo("opFile.value", "rms_norm_quant_v3_apt") - 根CMakeLists.txt改用add_modules_sources宏,声明芯片类型和tiling目录 - 从ascendc_config.json中移除RmsNormQuantV3条目(改由CMake管理) - op_graph/rms_norm_quant_v3_proto.h中y1/y2输出dtype补充int4类型 **测试更新:** - V2 tiling单测中tiling key期望值从5000/6000更新为0/1 - V3 kernel单测文件重命名并更新为模板化调用方式 - V3 aclnn单测迁移至tests/ut/op_api/目录 ## 关联的Issue 关联Issue #2969 ## 测试 - 更新了RmsNormQuantV2 tiling单元测试,验证新tiling key值(FULL_LOAD=0, RECOMPUTE=1) - 更新了RmsNormQuantV3 kernel单元测试,适配模板化内核调用 - 迁移并更新了RmsNormQuantV3 aclnn单元测试 ## 文档更新 - 更新了op_graph/rms_norm_quant_v3_proto.h中的接口注释,y1/y2输出新增int4类型说明 ## 类型标签 - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-nn!5393 | 2 个月前 | |
下一代芯片支持RmsNormQuant Co-authored-by: wangwenman<wangwenman@huawei.com> # message auto-generated for no-merge-commit merge: !1057 merge dev_rms_norm_quant_v2 into master 下一代芯片支持RmsNormQuant Created-by: wmw_beta Commit-by: wangwenman Merged-by: cann-robot Description: ## 描述 为下一代芯片新增RmsNormQuantV2算子。 1. 支持可选参数,支持两路量化输出。 2. 支持int8, int4, hifloat8, fp8_e5m2, fp8_e4m3fn量化。 ## 关联 [Requirement|需求建议](https://gitcode.com/cann/ops-nn/issues/637) ## 测试 冒烟、geir、aclnn、算子泛化验证通过  ## 文档更新 更新 norm/rms_norm_quant/docs/aclnnRmsNormQuant.md 新增norm/rms_norm_quant_v2/README.md ## 类型标签 - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-nn!1057 | 6 个月前 |
| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
| 2 个月前 | ||
| 6 个月前 |