本项目是CANN提供的transformer类大模型算子库,实现网络在NPU上加速计算。
| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
添加 sub_pipline_support.yaml 工作流配置 Co-authored-by: huang-chuhong<huangchuhong1@h-partners.com> # message auto-generated for no-merge-commit merge: !5072 merge master into master 添加 sub_pipline_support.yaml 工作流配置 Created-by: huang-chuhong Commit-by: huang-chuhong Merged-by: cann-robot Description: ## 描述 添加 sub_pipline_support.yaml 工作流配置 ## 关联的Issue https://gitcode.com/cann/ops-transformer/issues/2314 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] 🐛 Bug 修复 - [ ] ✨ 新特性 - [ ] ⚡ 性能优化 - [ ] ♻️ 重构 - [ ] 🧪 测试 - [ ] 📦 构建/CI - [ ] 🔧 配置变更 - [ ] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-transformer!5072 | 3 个月前 | |
通过gitmodules引入third_party/catlass Co-authored-by: longjihui<longjihui@huawei.com> # message auto-generated for no-merge-commit merge: !1765 merge master into master 通过gitmodules引入third_party/catlass Created-by: longjihui Commit-by: longjihui Merged-by: cann-robot Description: ## 描述 新增.gitmodules文件,引入第三方库catlass,分支为v1.3.1-notla ## 关联的Issue 不涉及 ## 测试 仅引入三方仓,使用方式暂不确定,无需测试 ## 文档更新 不涉及 ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:新引入三方仓catlass See merge request: cann/ops-transformer!1765 | 4 个月前 | |
Support sparse attention kv merge | 2 个月前 | |
fix: add mmpa link library to ophost symbol Co-authored-by: leiqingji<leiqingji@h-partners.com> # message auto-generated for no-merge-commit merge: !6512 merge fix/add-mmpa-link-library into master fix: add mmpa link library to ophost symbol Created-by: leiqingji Commit-by: leiqingji Merged-by: cann-robot Description: ## 描述 添加缺失的 mmpa 链接库依赖到 ophost symbol,解决编译链接错误 ## 改动 - 在 cmake/symbol.cmake 中添加 mmpa 到 ophost 链接库列表 - 与现有链接库(runtime, acl_rt 等)保持一致的配置方式 ## 关联的Issue #2960 ## 测试 - 编译链接测试通过 ## 类型标签 - [x] 🐛 Bug 修复 - [ ] ✨ 新特性 - [ ] ⚡ 性能优化 - [ ] ♻️ 重构 - [ ] 🧪 测试 - [ ] 📦 构建/CI - [ ] 🔧 配置变更 - [ ] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-transformer!6512 | 2 个月前 | |
同名头文件清理 Co-authored-by: chenglongyu<chenglongyu@huawei.com> # message auto-generated for no-merge-commit merge: !5528 merge repeat_clean_in into master 同名头文件清理 Created-by: chenglongyu Commit-by: chenglongyu Merged-by: cann-robot Description: ## 描述 组件内存在多份内容相同的同名头文件,删除打桩文件之外的重名头文件 | 状态 | 文件路径 | |------|----------| | 删除 | common/include/external/aclnn_kernels/cast.h | | 删除 | common/include/external/aclnn_kernels/contiguous.h | | 删除 | common/include/external/aclnn_kernels/pad.h | | 删除 | common/include/external/aclnn_kernels/reshape.h | | 删除 | common/include/external/aclnn_kernels/slice.h | | 删除 | common/include/external/aclnn_kernels/transdata.h | | 删除 | common/include/external/aclnn_kernels/transpose.h | | 删除 | posembedding/rope_with_sin_cos_cache/op_host/op_api/add.h | | 重命名 | moe/moe_token_permute_with_routing_map_grad/op_host/moe_token_permute_grad_tiling.h → moe/moe_token_permute_with_routing_map_grad/op_host/moe_token_permute_with_routing_map_grad_unpermute_tiling.h | ## 关联的Issue https://gitcode.com/cann/ops-transformer/issues/2679 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] 🐛 Bug 修复 - [ ] ✨ 新特性 - [ ] ⚡ 性能优化 - [ ] ♻️ 重构 - [ ] 🧪 测试 - [ ] 📦 构建/CI - [ ] 🔧 配置变更 - [ ] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-transformer!5528 | 2 个月前 | |
docs: 补充aclnnAlltoAllMatmul接口资料 Co-authored-by: tongzy1242<tongzeyun@huawei.com> # message auto-generated for no-merge-commit merge: !6384 merge a2amm_docs into master docs: 补充aclnnAlltoAllMatmul接口资料 Created-by: tongzy1242 Commit-by: tongzy1242 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 补充aclnnAlltoAllMatmulV2文档 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> [#2777](https://gitcode.com/cann/ops-transformer/issues/2777) ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> 不涉及 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> 补充aclnnAlltoAllMatmulV2和aclnnAlltoAllQuantMatmulV2文档 ## 类型标签 <!-- [x] 表示选中 --> - [ ] 🐛 Bug 修复 - [ ] ✨ 新特性 - [ ] ⚡ 性能优化 - [ ] ♻️ 重构 - [ ] 🧪 测试 - [ ] 📦 构建/CI - [ ] 🔧 配置变更 - [x] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-transformer!6384 | 2 个月前 | |
docs: 修复CONTRIBUTING_DOCS拼写错误及aicpu_develop_guide失效链接 Co-authored-by: huang-chuhong<huangchuhong1@h-partners.com> # message auto-generated for no-merge-commit merge: !6463 merge docs/fix-typo-and-broken-links into master docs: 修复CONTRIBUTING_DOCS拼写错误及aicpu_develop_guide失效链接 Created-by: huang-chuhong Commit-by: huang-chuhong Merged-by: cann-robot Description: ## 描述 修复文档拼写错误及失效链接,新增aicpu Kernel UT示例文件。 ## 改动 - CONTRIBUTING_DOCS.md: RAEDME→README拼写修正 - aicpu_develop_guide.md: Kernel UT链接指向正确UT示例路径 - aicpu_develop_guide.md: 算子调用方式链接修正为quick_op_invocation.md - 新增aicpu Kernel UT示例文件test_add_example.cpp ## 关联的Issue #2929 #2930 ## 测试 - 文档链接修复,不影响原有编译与运行逻辑 - 不传新参数时原有行为不受影响 ## 类型标签 - [ ] 🐛 Bug 修复 - [ ] ✨ 新特性 - [ ] ⚡ 性能优化 - [ ] ♻️ 重构 - [ ] 🧪 测试 - [ ] 📦 构建/CI - [ ] 🔧 配置变更 - [x] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-transformer!6463 | 2 个月前 | |
fix tiling check Co-authored-by: caizhengyang<caizhengyang1@huawei.com> # message auto-generated for no-merge-commit merge: !6371 merge master into master fix tiling check Created-by: shasha_an Commit-by: caizhengyang Merged-by: cann-robot Description: ## 描述 1. 当前A3cache mode只支持1,state_block_table的shape只支持2维。 2. 解决cache mode和state_block_table的多参数校验,cache_mode=1时state_block_table为2维,cache_mode=2时,state_block_table为1维 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [x] 🐛 Bug 修复 - [ ] ✨ 新特性 - [ ] ⚡ 性能优化 - [ ] ♻️ 重构 - [ ] 🧪 测试 - [ ] 📦 构建/CI - [ ] 🔧 配置变更 - [ ] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-transformer!6371 | 2 个月前 | |
修改了ffn文件夹下算子的readme,修改了部分dtype描述,增加numhead校验 Co-authored-by: yolic<chenyuning1@huawei.com> # message auto-generated for no-merge-commit merge: !6015 merge 0527issue into master 修改了ffn文件夹下算子的readme,修改了部分dtype描述,增加numhead校验 Created-by: yolic Commit-by: yolic Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 修改了ffn文件夹下算子的readme,修改了部分dtype描述,增加numhead校验 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> 关联Issue [#2666](https://gitcode.com/cann/ops-transformer/issues/2666) [#2667](https://gitcode.com/cann/ops-transformer/issues/2667) [#2668](https://gitcode.com/cann/ops-transformer/issues/2668) [#2678](https://gitcode.com/cann/ops-transformer/issues/2678) ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> 更新了 swin_attention_ffn & swin_transformer_ln_qkv & swin_transformer_ln_qkv_quant readme ## 类型标签 <!-- [x] 表示选中 --> - [ ] 🐛 Bug 修复 - [ ] ✨ 新特性 - [ ] ⚡ 性能优化 - [ ] ♻️ 重构 - [ ] 🧪 测试 - [ ] 📦 构建/CI - [ ] 🔧 配置变更 - [x] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-transformer!6015 | 2 个月前 | |
【gmm】【UT】add_A2、A3_ut_coverage Co-authored-by: chen-shuai<chenshuai96@huawei.com> # message auto-generated for no-merge-commit merge: !6471 merge add_ut_coverage into master 【gmm】【UT】add_A2、A3_ut_coverage Created-by: chen-shuai Commit-by: chen-shuai Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 增加算子的UT覆盖率 1. 补充 GroupedMatmul tiling UT - 新增 34 条 CSV 用例。 - 覆盖 splitM / splitK / noSplit、transWeight、bias、anti-quant、MSD、per-token / per-tensor、NZ、A8W4、A4W4 等场景。 - 扩展 UT 框架对多输入实例的解析和构造能力,支持 CSV 中通过 ; 描述多 tensor 输入。 2. 补充 GroupedMatmulFinalizeRouting infershape UT - 新增 W4A8、W8A8、MXFP4 等场景。 - 覆盖 bias、offset、per-token、3D scale、shared input 异常 shape 等正反向用例。 - 重构 CSV 解析逻辑,统一使用 csv_case_load_utils / gmm_csv_ge_parse_utils,同时覆盖 infershape / inferdtype 流程。 3. 补充 GroupedMatmulFinalizeRouting tiling UT - 扩展 CSV 字段,新增 offset、deterministicInfo、caseType 等测试输入。 - 支持 tuning_config 按 vector 方式传入。 - 新增 tiling parse 空指针异常场景覆盖。 - 补充 tiling data 字段 set/get 覆盖。 4. 补充 GroupedMatmulSwigluQuantV2 tiling UT - 新增大量 Ascend950 / Ascend910B 用例,覆盖 W8A8、MXFP8、MXFP4、MXA8W4、A8W4、A4W4 等场景。 - 覆盖 dtype、format、shape、groupListType、quant/dequant mode、transposeWeight、边界维度和非法输入等正反向用例。 - 增加 tuning_config 属性解析与传参。 - 新增 tiling parse 成功路径、tiling data 字段、fusion tiling data 字段覆盖。 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> https://gitcode.com/cann/ops-transformer/issues/2962 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。-->    ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] 🐛 Bug 修复 - [ ] ✨ 新特性 - [ ] ⚡ 性能优化 - [ ] ♻️ 重构 - [x] 🧪 测试 - [ ] 📦 构建/CI - [ ] 🔧 配置变更 - [ ] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-transformer!6471 | 2 个月前 | |
update megamoe kernel a3 Co-authored-by: ranczhw<ranchenzhi@huawei.com> # message auto-generated for no-merge-commit merge: !6534 merge pr_6532 into master update megamoe kernel a3 Created-by: ranczhw Commit-by: ranczhw Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> MegaMoe算子kernel 实现中A3的实现,支持了包括A8W4、A8W8、bf16三个分支 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> https://gitcode.com/cann/ops-transformer/issues/2111 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] 🐛 Bug 修复 - [ ] ✨ 新特性 - [ ] ⚡ 性能优化 - [ ] ♻️ 重构 - [ ] 🧪 测试 - [ ] 📦 构建/CI - [ ] 🔧 配置变更 - [ ] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-transformer!6534 | 2 个月前 | |
mhcPreSinkhornBackward support ascend950 Co-authored-by: 贺雨杰<heyujie8@huawei.com> # message auto-generated for no-merge-commit merge: !5991 merge master into master mhcPreSinkhornBackward support ascend950 Created-by: HHHyyyjjjjj Commit-by: 贺雨杰 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> mhcPreSinkhornBackward算子适配ascend950 soc; ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> 关联issue 2109:新增mhc_pre_sinkhorn mhc_pre_sinkhorn_backward融合算子 https://gitcode.com/cann/ops-transformer/issues/2109 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] 🐛 Bug 修复 - [x] ✨ 新特性 - [ ] ⚡ 性能优化 - [ ] ♻️ 重构 - [ ] 🧪 测试 - [ ] 📦 构建/CI - [ ] 🔧 配置变更 - [ ] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-transformer!5991 | 2 个月前 | |
Update InferOutputShape logic to handle non-negative dimensions and add unit tests for expanded_row_idx calculations Co-authored-by: kdy18482276080<kongdeyuan3@huawei.com> # message auto-generated for no-merge-commit merge: !6344 merge v2infer into master Update InferOutputShape logic to handle non-negative dimensions and add unit tests for expanded_row_idx calculations Created-by: kdy18482276080 Commit-by: kdy18482276080 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 修改moeinitroutingv2算子在空tensot场景时推导shape为0 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> 关联Issue [#2888](https://gitcode.com/cann/ops-transformer/issues/2888) ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> 补充ut ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [x] 🐛 Bug 修复 - [ ] ✨ 新特性 - [ ] ⚡ 性能优化 - [ ] ♻️ 重构 - [ ] 🧪 测试 - [ ] 📦 构建/CI - [ ] 🔧 配置变更 - [ ] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-transformer!6344 | 2 个月前 | |
修正gcc14编译时std::find报错的问题 Co-authored-by: 吴剑飞<wujianfei15@huawei.com> # message auto-generated for no-merge-commit merge: !6115 merge addheader into master 修正gcc14编译时std::find报错的问题 Created-by: hid81635372 Commit-by: 吴剑飞 Merged-by: cann-robot Description: ## 描述 验证使用GCC14编译ops-transformer仓host侧代码,运行ut测试。发现apply_rotary_pos_emb算子的A5tiling侧代码使用到std::find接口,在gcc14编译时会提示接口使用错误,需要#include头文件。 ## 关联的Issue https://gitcode.com/cann/ops-transformer/issues/2836 ## 测试 编译与UT正常,整包编译也正常。 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [x] 🐛 Bug 修复 - [ ] ✨ 新特性 - [ ] ⚡ 性能优化 - [ ] ♻️ 重构 - [ ] 🧪 测试 - [ ] 📦 构建/CI - [ ] 🔧 配置变更 - [ ] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-transformer!6115 | 2 个月前 | |
rename onnx plugin Co-authored-by: x00842564<xuyanke@huawei.com> # message auto-generated for no-merge-commit merge: !6146 merge master into master rename onnx plugin Created-by: yanke-xu Commit-by: x00842564 Merged-by: cann-robot Description: ## 描述 onnx插件编译打包so命名按照新规则整改 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> https://gitcode.com/cann/ops-transformer/issues/2860 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> 静态检查、冒烟验证、编译验证、构建 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] 🐛 Bug 修复 - [x] ✨ 新特性 - [ ] ⚡ 性能优化 - [x] ♻️ 重构 - [ ] 🧪 测试 - [ ] 📦 构建/CI - [ ] 🔧 配置变更 - [ ] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-transformer!6146 | 2 个月前 | |
modify quant_reduce_scatter hccl_context Co-authored-by: yifux<xiongyifu1@huawei.com> # message auto-generated for no-merge-commit merge: !6357 merge pr_qrs_context into master modify quant_reduce_scatter hccl_context Created-by: xiongyifu Commit-by: yifux Merged-by: cann-robot Description: ## 描述 切换修改新的hccl context开源方案 ## 关联的Issue https://gitcode.com/cann/ops-transformer/issues/2844 ## 测试  ## 文档更新 不涉及 ## 类型标签 <!-- [x] 表示选中 --> - [ ] 🐛 Bug 修复 - [ ] ✨ 新特性 - [ ] ⚡ 性能优化 - [x] ♻️ 重构 - [ ] 🧪 测试 - [ ] 📦 构建/CI - [ ] 🔧 配置变更 - [ ] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: # 代码检视报告 ## 检视概览 - PR 链接:https://gitcode.com/cann/ops-transformer/pull/6357 - PR 描述:merge 'pr_qrs_context' into 'master' — 为 quant_reduce_scatter 算子引入 Mc2Context(v2)路径,支持通过 GM 参数传入 HCCL 通信上下文 - 变更文件数:39 - 检视侧别:Kernel + Tiling + 混合(op_api/op_graph/build) - 检视文档:cpp-secure.md, ascendc-topk.md, ascendc-api.md, ascendc-perf.md, mc2-specific.md, cpp-general.md, compile-secure.md - 初次检视时间:2026-06-06 - 复查时间:2026-06-06(两次更新复查) ## 修复跟踪 | 上轮问题 | 修复轮次 | 当前状态 | |---------|---------|---------| | SEC-1.3 mc2ContextStruct 未零初始化 | 第1次更新 | ✅ 已修复 → = {}; (mc2_context.cpp:739) | | MC2-09 worldSize %d 格式化 | 第1次更新 | ✅ 已修复 → %ld (mc2_context.cpp:724) | | MC2-14 x/scales 缺 AutoContiguous | 第1次更新引入语法错误(分号断链),第2次更新修复 | ✅ 已修复 → 链式调用正确 (v2_def.cpp:39-40, 53-54) | ## 检视统计(当前状态) | 状态 | 条例数 | 占比 | |------|------|------| | PASS | 25 | 96% | | 已修复(原 FAIL/SUSPICIOUS)| 3 | — | ## 已修复问题(原 FAIL/SUSPICIOUS,现已 PASS) ### [SEC-1.3] 未初始化变量 — Mc2QuantReduceScatterContext ✅ 已修复 - **原问题**:Mc2QuantReduceScatterContext mc2ContextStruct; 声明时未零初始化,HcclEngineCtxCopy 拷贝含未初始化字节的结构体到 device,构成 ISO C++ 未定义行为。 - **修复确认**:已改为 Mc2QuantReduceScatterContext mc2ContextStruct = {}; (mc2_context.cpp:739) - **原假设检验证据**:正向规范违反(+40%)+上下文防御缺失(+30%)+PR归属(+20%)+数据流风险(+15%);负向防御存在(-20%)+上游校验(-15%);自信值=85% - **原修复建议**:= {} 零初始化 → 已采纳 ### [MC2-09] 量化参数类型一致性 — worldSize 格式化 ✅ 已修复 - **原问题**:worldSize(int64_t)使用 %d 格式化打印,类型链路不一致。 - **修复确认**:已改为 %ld (mc2_context.cpp:724) - **原假设检验证据**:自信值=70% → MED - **原修复建议**:%d → %ld → 已采纳 ### [MC2-14] Tiling校验与结构规范 — v2 OpDef AutoContiguous ✅ 已修复 - **原问题**:v2 OpDef 中 x 和 scales 输入缺少 .AutoContiguous() 声明。 - **修复过程**:第1次更新修复时引入语法错误(.FormatList({ge::FORMAT_ND}); 末尾分号断链,.AutoContiguous() 成独立语句未生效),第2次更新移除分号,链式调用正确。 - **修复确认**: cpp // v2_def.cpp:39-40 (x) .FormatList({ge::FORMAT_ND}) .AutoContiguous(); // v2_def.cpp:53-54 (scales) .FormatList({ge::FORMAT_ND}) .AutoContiguous(); - **原假设检验证据**:正向规范违反(+40%)+上下文防御缺失(+30%)+PR归属(+20%)+领域关联(+10%);自信值=100% ## 通过条例 [quant_reduce_scatter_kernel_G1] SEC-1.1 PASS [quant_reduce_scatter_kernel_G1] SEC-1.2 PASS [quant_reduce_scatter_kernel_G1] SEC-1.3 PASS [quant_reduce_scatter_kernel_G1] SEC-2.1 PASS [quant_reduce_scatter_kernel_G1] SEC-2.2 PASS [quant_reduce_scatter_kernel_G1] SEC-2.3 PASS [quant_reduce_scatter_kernel_G1] TOPK-8 PASS [quant_reduce_scatter_kernel_G1] MC2-01 PASS [quant_reduce_scatter_kernel_G1] MC2-02 PASS [quant_reduce_scatter_kernel_G1] MC2-04 PASS [quant_reduce_scatter_kernel_G1] MC2-09 PASS [quant_reduce_scatter_kernel_G1] MC2-11 PASS [quant_reduce_scatter_kernel_G1] MC2-17 PASS [quant_reduce_scatter_kernel_G1] MC2-18 PASS [quant_reduce_scatter_kernel_G1] API-3 PASS [quant_reduce_scatter_kernel_G1] API-6 PASS [quant_reduce_scatter_kernel_G1] API-8 PASS [quant_reduce_scatter_host_G1] SEC-1.1 PASS [quant_reduce_scatter_host_G1] SEC-1.2 PASS [quant_reduce_scatter_host_G1] SEC-1.3 PASS [quant_reduce_scatter_host_G1] SEC-2.1 PASS [quant_reduce_scatter_host_G1] SEC-2.2 PASS [quant_reduce_scatter_host_G1] SEC-2.3 PASS [shared] SEC-1.1 PASS [shared] MC2-04 PASS [shared] MC2-14 PASS [shared] MC2-15 PASS [quant_reduce_scatter_v2_host_G1] MC2-04 PASS [quant_reduce_scatter_v2_host_G1] MC2-09 PASS [quant_reduce_scatter_v2_host_G1] TOPK-1 PASS [quant_reduce_scatter_v2_host_G1] TOPK-2 PASS See merge request: cann/ops-transformer!6357 | 2 个月前 | |
docs: 修复多处拼写错误及失效链接 Co-authored-by: huang-chuhong<huangchuhong1@h-partners.com> # message auto-generated for no-merge-commit merge: !6509 merge docs/fix-spelling-and-broken-links into master docs: 修复多处拼写错误及失效链接 Created-by: huang-chuhong Commit-by: huang-chuhong Merged-by: cann-robot Description: ## 描述 修复文档中多处拼写错误及失效链接 ## 改动 - quick_install.md: npu-sim info 修正为 npu-smi info(2处) - aicpu_develop_guide.md: add_example_aicpu 修正为 add_example/op_kernel_aicpu - op_api_list.md: mhc/mhc_pre 修正为 mhc/mhc_pre_sinkhorn_backward - torch_extension/README.md: Warpper 修正为 Wrapper、standrad 修正为 standard ## 关联的Issue #2939 #2940 #2943 ## 测试 - 文档修改,不影响原有编译与运行逻辑 ## 类型标签 - [x] 文档更新 See merge request: cann/ops-transformer!6509 | 2 个月前 | |
更新license Co-authored-by: PerrySkywalker<wangmingkang1@huawei.com> # message auto-generated for no-merge-commit merge: !568 merge lic into master 更新license Created-by: PerrySkywalker Commit-by: PerrySkywalker Merged-by: cann-robot Description: ## 描述 更新license <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-transformer!568 | 8 个月前 | |
transformer仓引入tensor仓 Co-authored-by: zhangzhizhuo<zhangzhizhuo1@huawei.com> # message auto-generated for no-merge-commit merge: !6256 merge transformertensor into master transformer仓引入tensor仓 Created-by: zhangzhizhuo Commit-by: zhangzhizhuo Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ops-nn仓引入ops-tensor作为子模块,ops-tensor包含tensor_api的实现及blaze模板 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> 关联issue [#2842](https://gitcode.com/cann/ops-transformer/issues/2842) ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> 本地编包正常出包,验证离线编译功能正常,线上出包正常。 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> na ## 类型标签 <!-- [x] 表示选中 --> - [ ] 🐛 Bug 修复 - [x] ✨ 新特性 - [ ] ⚡ 性能优化 - [ ] ♻️ 重构 - [ ] 🧪 测试 - [ ] 📦 构建/CI - [ ] 🔧 配置变更 - [ ] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-transformer!6256 | 2 个月前 | |
通过gitmodules引入third_party/catlass Co-authored-by: longjihui<longjihui@huawei.com> # message auto-generated for no-merge-commit merge: !1765 merge master into master 通过gitmodules引入third_party/catlass Created-by: longjihui Commit-by: longjihui Merged-by: cann-robot Description: ## 描述 新增.gitmodules文件,引入第三方库catlass,分支为v1.3.1-notla ## 关联的Issue 不涉及 ## 测试 仅引入三方仓,使用方式暂不确定,无需测试 ## 文档更新 不涉及 ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:新引入三方仓catlass See merge request: cann/ops-transformer!1765 | 4 个月前 | |
fix: 修复clang-format配置 Co-authored-by: j60100428<jingsong5@h-partners.com> # message auto-generated for no-merge-commit merge: !6029 merge master into master fix: 修复clang-format配置 Created-by: SH_jingsong Commit-by: j60100428 Merged-by: cann-robot Description: ## 描述 fix: 修复clang-format配置 ## 关联的Issue https://gitcode.com/cann/ops-transformer/issues/2728 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] 🐛 Bug 修复 - [ ] ✨ 新特性 - [ ] ⚡ 性能优化 - [ ] ♻️ 重构 - [ ] 🧪 测试 - [ ] 📦 构建/CI - [ ] 🔧 配置变更 - [ ] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-transformer!6029 | 2 个月前 | |
Transformer 更新Latest News Co-authored-by: lidongsheng<lidongsheng43@huawei.com> # message auto-generated for no-merge-commit merge: !771 merge docs into master Transformer 更新Latest News Created-by: qq_46353993 Commit-by: lidongsheng Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-transformer!771 | 7 个月前 | |
fix: transformer 三方件切换(protobuf) Co-authored-by: j60100428<jingsong5@h-partners.com> # message auto-generated for no-merge-commit merge: !6330 merge cherry-pick-mr-5898-1780455343352-auto into master fix: transformer 三方件切换(protobuf) Created-by: SH_jingsong Commit-by: j60100428 Merged-by: cann-robot Description: ## 描述 transformer三方件切换: opbase, opscv ,math都已经切换过了。transformer仓之前切换了一部分,遗留了protobuf ## 关联的Issue https://gitcode.com/cann/ops-transformer/issues/2933 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] 🐛 Bug 修复 - [ ] ✨ 新特性 - [ ] ⚡ 性能优化 - [ ] ♻️ 重构 - [ ] 🧪 测试 - [ ] 📦 构建/CI - [ ] 🔧 配置变更 - [ ] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-transformer!6330 | 2 个月前 | |
docs: 补充生态算子精度标准引用 Co-authored-by: chaotang233<tangchao47@hisilicon.com> # message auto-generated for no-merge-commit merge: !5006 merge master into master docs: 补充生态算子精度标准引用 Created-by: chaotang233 Commit-by: chaotang233 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 增加精度标准的索引,确保仓可以引用到精度标准 会议纪要:https://etherpad-cann.meeting.osinfra.cn/p/TSC  ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。-->CONTRIBUTING.md ## 类型标签 <!-- [x] 表示选中 --> - [ ] 🐛 Bug 修复 - [ ] ✨ 新特性 - [ ] ⚡ 性能优化 - [ ] ♻️ 重构 - [ ] 🧪 测试 - [ ] 📦 构建/CI - [ ] 🔧 配置变更 - [x] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-transformer!5006 | 3 个月前 | |
init | 10 个月前 | |
规范化OAT.xml中许可证声明形式 Co-authored-by: chenyx2012<975102023@qq.com> # message auto-generated for no-merge-commit merge: !3571 merge master into master 规范化OAT.xml中许可证声明形式 Created-by: chenyx_2012 Commit-by: chenyx2012 Merged-by: cann-robot Description: ## 描述 规范化OAT.xml中许可证声明形式 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] 🐛 Bug 修复 - [ ] ✨ 新特性 - [ ] ⚡ 性能优化 - [ ] ♻️ 重构 - [ ] 🧪 测试 - [ ] 📦 构建/CI - [ ] 🔧 配置变更 - [ ] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-transformer!3571 | 4 个月前 | |
docs: 优化快速入门与算子调用文档 Co-authored-by: xtqh<quxuetong@huawei.com> # message auto-generated for no-merge-commit merge: !6435 merge master into master docs: 优化快速入门与算子调用文档 Created-by: xtqh Commit-by: xtqh Merged-by: cann-robot Description: ## 描述 优化项目快速入门与算子调用相关文档,提升开发者体验和文档可读性。 ## 改动 - README: 源码下载示例改为具体9.0.0分支,调整说明位置 - QUICKSTART: soc_version说明重构,图片提前,步骤拆分细化 - quick_install: Docker/手动安装流程简化,镜像版本更新到9.1.0-beta.1,CANN版本检查增加CANNLab路径 - quick_op_invocation: 示例代码改用智能指针释放资源、拆分自定义/标准算子CMakeLists、新增aclnn和GE IR编译运行步骤结构化 - op_api_list: 头文件/库文件说明简化,新增libopapi.so废弃提示 ## 关联的Issue #2908 https://gitcode.com/cann/ops-transformer/issues/2421 ## 测试 - 文档变更,不影响原有编译与运行逻辑 - 不传新参数时原有行为不受影响 ## 类型标签 - [ ] 🐛 Bug 修复 - [ ] ✨ 新特性 - [ ] ⚡ 性能优化 - [ ] ♻️ 重构 - [ ] 🧪 测试 - [ ] 📦 构建/CI - [ ] 🔧 配置变更 - [x] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-transformer!6435 | 2 个月前 | |
doc Tools工具扫描问题修改 Co-authored-by: gitee-yanglulu<yanglulul@h-partners.com> # message auto-generated for no-merge-commit merge: !3432 merge master into master doc Tools工具扫描问题修改 Created-by: gitee-yanglulu Commit-by: gitee-yanglulu Merged-by: cann-robot Description: doc Tools工具扫描问题修改 See merge request: cann/ops-transformer!3432 | 5 个月前 | |
支持按模板参数编译算子kernel、支持编译入参调试异常与调优参数 Co-authored-by: lidongsheng<lidongsheng43@huawei.com> Co-authored-by: 吴剑飞<wujianfei15@huawei.com> # message auto-generated for no-merge-commit merge: !2170 merge 910_lds into master 支持按模板参数编译算子kernel、支持编译入参调试异常与调优参数 Created-by: qq_46353993 Commit-by: 吴剑飞;lidongsheng Merged-by: cann-robot Description: ## 描述 本次修改支持用户通过build.sh的编译入口传入模板参数--kernel_template_input后按tilingkey编译、传入--bisheng_flags进行调试异常 ## 关联的Issue [支持按模板参数指定编译kernel](https://gitcode.com/cann/ops-transformer/issues/1036) [支持编译入参新增调试异常和调优参数](https://gitcode.com/cann/ops-transformer/issues/1044) ## 测试 二级冒烟、指定模板参数编译并执行测试用例 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-transformer!2170 | 5 个月前 | |
更新protobuf版本 Co-authored-by: PerrySkywalker<wangmingkang1@huawei.com> # message auto-generated for no-merge-commit merge: !522 merge prof into master 更新protobuf版本 Created-by: PerrySkywalker Commit-by: PerrySkywalker Merged-by: cann-robot Description: ## 描述 更新protobuf版本 ## 关联的Issue 关联Issue [#316](https://gitcode.com/cann/ops-transformer/issues/316) <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-transformer!522 | 8 个月前 | |
modify quant_reduce_scatter hccl_context Co-authored-by: yifux<xiongyifu1@huawei.com> # message auto-generated for no-merge-commit merge: !6357 merge pr_qrs_context into master modify quant_reduce_scatter hccl_context Created-by: xiongyifu Commit-by: yifux Merged-by: cann-robot Description: ## 描述 切换修改新的hccl context开源方案 ## 关联的Issue https://gitcode.com/cann/ops-transformer/issues/2844 ## 测试  ## 文档更新 不涉及 ## 类型标签 <!-- [x] 表示选中 --> - [ ] 🐛 Bug 修复 - [ ] ✨ 新特性 - [ ] ⚡ 性能优化 - [x] ♻️ 重构 - [ ] 🧪 测试 - [ ] 📦 构建/CI - [ ] 🔧 配置变更 - [ ] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: # 代码检视报告 ## 检视概览 - PR 链接:https://gitcode.com/cann/ops-transformer/pull/6357 - PR 描述:merge 'pr_qrs_context' into 'master' — 为 quant_reduce_scatter 算子引入 Mc2Context(v2)路径,支持通过 GM 参数传入 HCCL 通信上下文 - 变更文件数:39 - 检视侧别:Kernel + Tiling + 混合(op_api/op_graph/build) - 检视文档:cpp-secure.md, ascendc-topk.md, ascendc-api.md, ascendc-perf.md, mc2-specific.md, cpp-general.md, compile-secure.md - 初次检视时间:2026-06-06 - 复查时间:2026-06-06(两次更新复查) ## 修复跟踪 | 上轮问题 | 修复轮次 | 当前状态 | |---------|---------|---------| | SEC-1.3 mc2ContextStruct 未零初始化 | 第1次更新 | ✅ 已修复 → = {}; (mc2_context.cpp:739) | | MC2-09 worldSize %d 格式化 | 第1次更新 | ✅ 已修复 → %ld (mc2_context.cpp:724) | | MC2-14 x/scales 缺 AutoContiguous | 第1次更新引入语法错误(分号断链),第2次更新修复 | ✅ 已修复 → 链式调用正确 (v2_def.cpp:39-40, 53-54) | ## 检视统计(当前状态) | 状态 | 条例数 | 占比 | |------|------|------| | PASS | 25 | 96% | | 已修复(原 FAIL/SUSPICIOUS)| 3 | — | ## 已修复问题(原 FAIL/SUSPICIOUS,现已 PASS) ### [SEC-1.3] 未初始化变量 — Mc2QuantReduceScatterContext ✅ 已修复 - **原问题**:Mc2QuantReduceScatterContext mc2ContextStruct; 声明时未零初始化,HcclEngineCtxCopy 拷贝含未初始化字节的结构体到 device,构成 ISO C++ 未定义行为。 - **修复确认**:已改为 Mc2QuantReduceScatterContext mc2ContextStruct = {}; (mc2_context.cpp:739) - **原假设检验证据**:正向规范违反(+40%)+上下文防御缺失(+30%)+PR归属(+20%)+数据流风险(+15%);负向防御存在(-20%)+上游校验(-15%);自信值=85% - **原修复建议**:= {} 零初始化 → 已采纳 ### [MC2-09] 量化参数类型一致性 — worldSize 格式化 ✅ 已修复 - **原问题**:worldSize(int64_t)使用 %d 格式化打印,类型链路不一致。 - **修复确认**:已改为 %ld (mc2_context.cpp:724) - **原假设检验证据**:自信值=70% → MED - **原修复建议**:%d → %ld → 已采纳 ### [MC2-14] Tiling校验与结构规范 — v2 OpDef AutoContiguous ✅ 已修复 - **原问题**:v2 OpDef 中 x 和 scales 输入缺少 .AutoContiguous() 声明。 - **修复过程**:第1次更新修复时引入语法错误(.FormatList({ge::FORMAT_ND}); 末尾分号断链,.AutoContiguous() 成独立语句未生效),第2次更新移除分号,链式调用正确。 - **修复确认**: cpp // v2_def.cpp:39-40 (x) .FormatList({ge::FORMAT_ND}) .AutoContiguous(); // v2_def.cpp:53-54 (scales) .FormatList({ge::FORMAT_ND}) .AutoContiguous(); - **原假设检验证据**:正向规范违反(+40%)+上下文防御缺失(+30%)+PR归属(+20%)+领域关联(+10%);自信值=100% ## 通过条例 [quant_reduce_scatter_kernel_G1] SEC-1.1 PASS [quant_reduce_scatter_kernel_G1] SEC-1.2 PASS [quant_reduce_scatter_kernel_G1] SEC-1.3 PASS [quant_reduce_scatter_kernel_G1] SEC-2.1 PASS [quant_reduce_scatter_kernel_G1] SEC-2.2 PASS [quant_reduce_scatter_kernel_G1] SEC-2.3 PASS [quant_reduce_scatter_kernel_G1] TOPK-8 PASS [quant_reduce_scatter_kernel_G1] MC2-01 PASS [quant_reduce_scatter_kernel_G1] MC2-02 PASS [quant_reduce_scatter_kernel_G1] MC2-04 PASS [quant_reduce_scatter_kernel_G1] MC2-09 PASS [quant_reduce_scatter_kernel_G1] MC2-11 PASS [quant_reduce_scatter_kernel_G1] MC2-17 PASS [quant_reduce_scatter_kernel_G1] MC2-18 PASS [quant_reduce_scatter_kernel_G1] API-3 PASS [quant_reduce_scatter_kernel_G1] API-6 PASS [quant_reduce_scatter_kernel_G1] API-8 PASS [quant_reduce_scatter_host_G1] SEC-1.1 PASS [quant_reduce_scatter_host_G1] SEC-1.2 PASS [quant_reduce_scatter_host_G1] SEC-1.3 PASS [quant_reduce_scatter_host_G1] SEC-2.1 PASS [quant_reduce_scatter_host_G1] SEC-2.2 PASS [quant_reduce_scatter_host_G1] SEC-2.3 PASS [shared] SEC-1.1 PASS [shared] MC2-04 PASS [shared] MC2-14 PASS [shared] MC2-15 PASS [quant_reduce_scatter_v2_host_G1] MC2-04 PASS [quant_reduce_scatter_v2_host_G1] MC2-09 PASS [quant_reduce_scatter_v2_host_G1] TOPK-1 PASS [quant_reduce_scatter_v2_host_G1] TOPK-2 PASS See merge request: cann/ops-transformer!6357 | 2 个月前 | |
modify quant_reduce_scatter hccl_context Co-authored-by: yifux<xiongyifu1@huawei.com> # message auto-generated for no-merge-commit merge: !6357 merge pr_qrs_context into master modify quant_reduce_scatter hccl_context Created-by: xiongyifu Commit-by: yifux Merged-by: cann-robot Description: ## 描述 切换修改新的hccl context开源方案 ## 关联的Issue https://gitcode.com/cann/ops-transformer/issues/2844 ## 测试  ## 文档更新 不涉及 ## 类型标签 <!-- [x] 表示选中 --> - [ ] 🐛 Bug 修复 - [ ] ✨ 新特性 - [ ] ⚡ 性能优化 - [x] ♻️ 重构 - [ ] 🧪 测试 - [ ] 📦 构建/CI - [ ] 🔧 配置变更 - [ ] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: # 代码检视报告 ## 检视概览 - PR 链接:https://gitcode.com/cann/ops-transformer/pull/6357 - PR 描述:merge 'pr_qrs_context' into 'master' — 为 quant_reduce_scatter 算子引入 Mc2Context(v2)路径,支持通过 GM 参数传入 HCCL 通信上下文 - 变更文件数:39 - 检视侧别:Kernel + Tiling + 混合(op_api/op_graph/build) - 检视文档:cpp-secure.md, ascendc-topk.md, ascendc-api.md, ascendc-perf.md, mc2-specific.md, cpp-general.md, compile-secure.md - 初次检视时间:2026-06-06 - 复查时间:2026-06-06(两次更新复查) ## 修复跟踪 | 上轮问题 | 修复轮次 | 当前状态 | |---------|---------|---------| | SEC-1.3 mc2ContextStruct 未零初始化 | 第1次更新 | ✅ 已修复 → = {}; (mc2_context.cpp:739) | | MC2-09 worldSize %d 格式化 | 第1次更新 | ✅ 已修复 → %ld (mc2_context.cpp:724) | | MC2-14 x/scales 缺 AutoContiguous | 第1次更新引入语法错误(分号断链),第2次更新修复 | ✅ 已修复 → 链式调用正确 (v2_def.cpp:39-40, 53-54) | ## 检视统计(当前状态) | 状态 | 条例数 | 占比 | |------|------|------| | PASS | 25 | 96% | | 已修复(原 FAIL/SUSPICIOUS)| 3 | — | ## 已修复问题(原 FAIL/SUSPICIOUS,现已 PASS) ### [SEC-1.3] 未初始化变量 — Mc2QuantReduceScatterContext ✅ 已修复 - **原问题**:Mc2QuantReduceScatterContext mc2ContextStruct; 声明时未零初始化,HcclEngineCtxCopy 拷贝含未初始化字节的结构体到 device,构成 ISO C++ 未定义行为。 - **修复确认**:已改为 Mc2QuantReduceScatterContext mc2ContextStruct = {}; (mc2_context.cpp:739) - **原假设检验证据**:正向规范违反(+40%)+上下文防御缺失(+30%)+PR归属(+20%)+数据流风险(+15%);负向防御存在(-20%)+上游校验(-15%);自信值=85% - **原修复建议**:= {} 零初始化 → 已采纳 ### [MC2-09] 量化参数类型一致性 — worldSize 格式化 ✅ 已修复 - **原问题**:worldSize(int64_t)使用 %d 格式化打印,类型链路不一致。 - **修复确认**:已改为 %ld (mc2_context.cpp:724) - **原假设检验证据**:自信值=70% → MED - **原修复建议**:%d → %ld → 已采纳 ### [MC2-14] Tiling校验与结构规范 — v2 OpDef AutoContiguous ✅ 已修复 - **原问题**:v2 OpDef 中 x 和 scales 输入缺少 .AutoContiguous() 声明。 - **修复过程**:第1次更新修复时引入语法错误(.FormatList({ge::FORMAT_ND}); 末尾分号断链,.AutoContiguous() 成独立语句未生效),第2次更新移除分号,链式调用正确。 - **修复确认**: cpp // v2_def.cpp:39-40 (x) .FormatList({ge::FORMAT_ND}) .AutoContiguous(); // v2_def.cpp:53-54 (scales) .FormatList({ge::FORMAT_ND}) .AutoContiguous(); - **原假设检验证据**:正向规范违反(+40%)+上下文防御缺失(+30%)+PR归属(+20%)+领域关联(+10%);自信值=100% ## 通过条例 [quant_reduce_scatter_kernel_G1] SEC-1.1 PASS [quant_reduce_scatter_kernel_G1] SEC-1.2 PASS [quant_reduce_scatter_kernel_G1] SEC-1.3 PASS [quant_reduce_scatter_kernel_G1] SEC-2.1 PASS [quant_reduce_scatter_kernel_G1] SEC-2.2 PASS [quant_reduce_scatter_kernel_G1] SEC-2.3 PASS [quant_reduce_scatter_kernel_G1] TOPK-8 PASS [quant_reduce_scatter_kernel_G1] MC2-01 PASS [quant_reduce_scatter_kernel_G1] MC2-02 PASS [quant_reduce_scatter_kernel_G1] MC2-04 PASS [quant_reduce_scatter_kernel_G1] MC2-09 PASS [quant_reduce_scatter_kernel_G1] MC2-11 PASS [quant_reduce_scatter_kernel_G1] MC2-17 PASS [quant_reduce_scatter_kernel_G1] MC2-18 PASS [quant_reduce_scatter_kernel_G1] API-3 PASS [quant_reduce_scatter_kernel_G1] API-6 PASS [quant_reduce_scatter_kernel_G1] API-8 PASS [quant_reduce_scatter_host_G1] SEC-1.1 PASS [quant_reduce_scatter_host_G1] SEC-1.2 PASS [quant_reduce_scatter_host_G1] SEC-1.3 PASS [quant_reduce_scatter_host_G1] SEC-2.1 PASS [quant_reduce_scatter_host_G1] SEC-2.2 PASS [quant_reduce_scatter_host_G1] SEC-2.3 PASS [shared] SEC-1.1 PASS [shared] MC2-04 PASS [shared] MC2-14 PASS [shared] MC2-15 PASS [quant_reduce_scatter_v2_host_G1] MC2-04 PASS [quant_reduce_scatter_v2_host_G1] MC2-09 PASS [quant_reduce_scatter_v2_host_G1] TOPK-1 PASS [quant_reduce_scatter_v2_host_G1] TOPK-2 PASS See merge request: cann/ops-transformer!6357 | 2 个月前 | |
fix(deps): add packaging>=26.0 to requirements.txt and install_deps.sh Co-authored-by: huang-chuhong<huangchuhong1@h-partners.com> # message auto-generated for no-merge-commit merge: !6194 merge fix/add-packaging-dependency into master fix(deps): add packaging>=26.0 to requirements.txt and install_deps.sh Created-by: huang-chuhong Commit-by: huang-chuhong Merged-by: cann-robot Description: ## 描述 仓库代码依赖了 packaging 包(cmake/scripts/util/const_var.py:15 使用 from packaging import version),但 requirements.txt 和 install_deps.sh 中未声明该依赖,导致全新环境下缺少该包时构建会报 ImportError。 ## 改动 - requirements.txt:添加 packaging>=26.0 - install_deps.sh:在 COMMON_PKGS 数组中添加 "packaging>=26.0" ## 关联的Issue #2812 ## 测试 - 执行 bash install_deps.sh 脚本无报错 - python3 -c "from packaging import version" 验证模块可用 - 不传新参数时原有依赖安装行为不受影响 ## 类型标签 - [ ] 🐛 Bug 修复 - [ ] ✨ 新特性 - [ ] ⚡ 性能优化 - [ ] ♻️ 重构 - [ ] 🧪 测试 - [x] 📦 构建/CI - [ ] 🔧 配置变更 - [ ] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-transformer!6194 | 2 个月前 | |
fix(deps): add packaging>=26.0 to requirements.txt and install_deps.sh Co-authored-by: huang-chuhong<huangchuhong1@h-partners.com> # message auto-generated for no-merge-commit merge: !6194 merge fix/add-packaging-dependency into master fix(deps): add packaging>=26.0 to requirements.txt and install_deps.sh Created-by: huang-chuhong Commit-by: huang-chuhong Merged-by: cann-robot Description: ## 描述 仓库代码依赖了 packaging 包(cmake/scripts/util/const_var.py:15 使用 from packaging import version),但 requirements.txt 和 install_deps.sh 中未声明该依赖,导致全新环境下缺少该包时构建会报 ImportError。 ## 改动 - requirements.txt:添加 packaging>=26.0 - install_deps.sh:在 COMMON_PKGS 数组中添加 "packaging>=26.0" ## 关联的Issue #2812 ## 测试 - 执行 bash install_deps.sh 脚本无报错 - python3 -c "from packaging import version" 验证模块可用 - 不传新参数时原有依赖安装行为不受影响 ## 类型标签 - [ ] 🐛 Bug 修复 - [ ] ✨ 新特性 - [ ] ⚡ 性能优化 - [ ] ♻️ 重构 - [ ] 🧪 测试 - [x] 📦 构建/CI - [ ] 🔧 配置变更 - [ ] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-transformer!6194 | 2 个月前 | |
chore: upgrade ops-transformer version to 9.1.0 and update opbase tag Co-authored-by: huang-chuhong<huangchuhong1@h-partners.com> # message auto-generated for no-merge-commit merge: !5895 merge chore/version-upgrade-9.1.0 into master chore: upgrade ops-transformer version to 9.1.0 and update opbase tag Created-by: huang-chuhong Commit-by: huang-chuhong Merged-by: cann-robot Description: ## 描述 ops-transformer 版本升级至 9.1.0,同步更新 opbase 依赖 tag,移除不再需要的 asc-tools 构建依赖。 ## 改动 - version.cmake: 版本号从 9.0.0 升级至 9.1.0 - version.cmake: 移除 asc-tools >=8.5 构建依赖 - cmake/third_party/opbase.cmake: opbase tag ID 从 6604d3c 更新为 ee5334d ## 关联的Issue #2662 https://gitcode.com/cann/ops-transformer/issues/2599 ## 测试 - bash build.sh --pkg --jit 编译打包通过 ## 类型标签 - [ ] 🐛 Bug 修复 - [ ] ✨ 新特性 - [ ] ⚡ 性能优化 - [ ] ♻️ 重构 - [ ] 🧪 测试 - [ ] 📦 构建/CI - [ ] 🔧 配置变更 - [ ] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [x] ❓ 其他,请描述:版本升级 See merge request: cann/ops-transformer!5895 | 3 个月前 | |
check_compile_version Co-authored-by: 吴剑飞<wujianfei15@huawei.com> # message auto-generated for no-merge-commit merge: !2085 merge check_version into master check_compile_version Created-by: hid81635372 Commit-by: 吴剑飞 Merged-by: cann-robot Description: ## 描述 工程上支持在编译时对子包版本进行校验 ## 关联的Issue https://gitcode.com/cann/ops-transformer/pull/2085 ## 测试 功能上可以在子包版本低于构建依赖时进行告警,RDV已通过 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述: 工程能力增加编译时版本校验功能 See merge request: cann/ops-transformer!2085 | 5 个月前 |
ops-transformer
🔥Latest News
- [2026/02] 新支持算子mhc_post、mhc_pre、mhc_res。
- [2026/01] 新支持算子grouped_matmul<<<>>>调用示例,方便用户自定义使用。
- [2026/01] 新支持算子fused_floyd_attention、fused_floyd_attention_grad、matmul_allto_all。
- [2025/12] 新增QuickStart,指导新手零基础入门算子项目部署(支持Docker环境)、算子开发和贡献流程。
- [2025/12] 优化指南类文档,聚焦算子开发指南,明确最小交付件和关键示例代码,针对Ascend/samples仓算子提供迁移本项目的指导。
- [2025/12] 支持transformer类onnx算子插件,包括NPUFlashAttention、NPUMultiHeadAttention、NPUMoeComputeExpertTokens等。
- [2025/12] 新支持算子kv_rms_norm_rope_cache、attention_update、attention_worker_scheduler、gather_pa_kv_cache、kv_quant_sparse_flash_attention、lightning_indexer_grad、mla_preprocess、mla_preprocess_v2、grouped_matmul_swiglu_quant_v2、attention_to_ffn、ffn_to_attention。
- [2025/12] 开源算子支持CANN Simulator仿真工具开发调试。
- [2025/12] 开源算子支持Ascend 950PR/Ascend 950DT/KirinX90系列产品。
- [2025/11] 新支持算子kv_quant_sparse_flash_attention、lightning_indexer、quant_lightning_indexer、sparse_flash_attention。
- [2025/11] 新支持示例算子rope_matrix和all_gather_add。
- [2025/11] 新增算子开发工程模板NpuOpsTransformerExt,无缝集成PyTorch张量操作,支持自动微分和GPU/NPU统一接口。
- [2025/10] 新增experimental目录,完善贡献指南,支持开发者调试并贡献自定义算子。
- [2025/09] ops-transformer项目首次上线,开源算子支持Atlas A2/A3系列产品。
🚀概述
ops-transformer是CANN (Compute Architecture for Neural Networks)算子库中提供transformer类大模型计算的进阶算子库,包括attention类、moe类、mc2类等,覆盖各类attention、MoE计算、通算融合等场景,算子库在架构图中的位置如下。

📌版本配套
本项目源码会跟随CANN软件版本发布,关于CANN软件版本与本项目标签的对应关系请参阅release仓库中的相应版本说明 。 请注意,为确保您的源码定制开发顺利进行,请选择配套的CANN版本与Gitcode标签源码,使用master分支可能存在版本不匹配的风险。
🛠️环境准备
环境部署是体验本项目能力的前提,请先完成NPU驱动、CANN包安装等,确保环境正常。
⬇️源码下载
环境准备好后,下载与CANN版本配套的分支源码,通用命令如下,${tag_version}替换为分支标签名。以9.0.0分支源码下载为例:
# 通用命令:git clone -b ${tag_version} https://gitcode.com/cann/ops-transformer.git
git clone -b 9.0.0 https://gitcode.com/cann/ops-transformer.git
说明:若环境中已存在配套分支源码,可跳过本步骤,例如CANNLab默认已提供最新商发版CANN对应的源码。
📖学习教程
💬相关信息
PS:本项目功能和文档正在持续更新和完善中,欢迎您关注最新版本。