本项目是CANN提供的transformer类大模型算子库,实现网络在NPU上加速计算。
| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
aciton增加增量逻辑 Co-authored-by: cui_jiahao<cuijiahao5@h-partners.com> # message auto-generated for no-merge-commit merge: !10199 merge master into master aciton增加增量逻辑 Created-by: cui_jiahao Commit-by: cui_jiahao Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] 🐛 Bug修复 - [ ] ✨ 新特性 - [ ] ⚡ 性能优化 - [ ] ♻️ 重构 - [ ] 🧪 测试 - [ ] 📦 构建/CI - [ ] 🔧 配置变更 - [ ] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-transformer!10199 | 1 个月前 | |
通过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 | 5 个月前 | |
style(compressor): fix clang-format violations | 1 个月前 | |
fix: 修复cmake升级后tikicpulib ALIAS target重复创建导致ophost_test编译失败 Co-authored-by: weihao18<weihao16@h-partners.com> # message auto-generated for no-merge-commit merge: !10482 merge fix-issue-4487 into master fix: 修复cmake升级后tikicpulib ALIAS target重复创建导致ophost_test编译失败 Created-by: weihao18 Commit-by: weihao18 Merged-by: cann-robot Description: ## 描述 fix: 修复cmake升级后tikicpulib ALIAS target重复创建导致ophost_test编译失败 ## 关联的Issue https://gitcode.com/cann/ops-transformer/issues/4487 ## 测试 本地验证编译正常 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [x] 🐛 Bug修复 - [ ] ✨ 新特性 - [ ] ⚡ 性能优化 - [ ] ♻️ 重构 - [ ] 🧪 测试 - [ ] 📦 构建/CI - [ ] 🔧 配置变更 - [ ] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-transformer!10482 | 1 个月前 | |
add proto extend Co-authored-by: wang-minbo<wangminbo1@hisilicon.com> # message auto-generated for no-merge-commit merge: !10315 merge master into master add proto extend Created-by: wang-minbo Commit-by: wang-minbo Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000-->https://gitcode.com/cann/ops-transformer/issues/4459 <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] 🐛 Bug修复 - [ ] ✨ 新特性 - [ ] ⚡ 性能优化 - [ ] ♻️ 重构 - [ ] 🧪 测试 - [ ] 📦 构建/CI - [ ] 🔧 配置变更 - [ ] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-transformer!10315 | 1 个月前 | |
【BSA 】aclnnv3接口文档修复 Co-authored-by: liwenguihw<liwengui7@huawei.com> # message auto-generated for no-merge-commit merge: !10409 merge bsa_aclnnv3_docs_0821 into master 【BSA 】aclnnv3接口文档修复 Created-by: liwenguihw Commit-by: liwenguihw Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> BlockSparseAttention算子aclnnv3接口文档的修复,芯片加标签、表格宽度、代码块修复等。 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] 🐛 Bug修复 - [ ] ✨ 新特性 - [ ] ⚡ 性能优化 - [ ] ♻️ 重构 - [ ] 🧪 测试 - [ ] 📦 构建/CI - [ ] 🔧 配置变更 - [ ] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-transformer!10409 | 1 个月前 | |
Fix the issue of gmm examples Co-authored-by: lijiamin2025<lijiamin24@huawei.com> # message auto-generated for no-merge-commit merge: !10447 merge fixexample into master Fix the issue of gmm examples Created-by: lijiamin2025 Commit-by: lijiamin2025 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> fix the issue og gmm examples 问题:RunOpApi 会异步执行 acl_call,但回调原先按值捕获的 TensorList 和 IntArrayRef 本质上只是ArrayRef 视图,只保存“指针 + 长度”,不拥有底层数组。 因此调用 Python 算子后,Python list 转换出的临时 C++ 数组可能已经释放;而异步线程稍后才在回调中访问x、weight、bias 等参数,便会解引用悬垂指针并崩溃。 修复:在提交异步任务前复制真实数据,在异步回调执行时重建临时视图 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> https://gitcode.com/cann/ops-transformer/issues/4482 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> 重新运行压力用例:20 轮 × 101 次调用、每轮同步,共 2,020 次;全部输出 stress_completed,未发生 SIGSEGV。 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [x] 🐛 Bug修复 - [ ] ✨ 新特性 - [ ] ⚡ 性能优化 - [ ] ♻️ 重构 - [ ] 🧪 测试 - [ ] 📦 构建/CI - [ ] 🔧 配置变更 - [ ] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-transformer!10447 | 1 个月前 | |
qfa:MxFP4新增README.md,对应文档修改拦截 Co-authored-by: cardiac_index<wangjianhao12@huawei.com> # message auto-generated for no-merge-commit merge: !10420 merge master into master qfa:MxFP4新增README.md,对应文档修改拦截 Created-by: cardiac_index Commit-by: cardiac_index Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> MxFP4新增README.md 补充缺失的拦截 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> 关联Issue#4493 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> 本地验证通过 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> 更新了README.md文件 ## 类型标签 <!-- [x] 表示选中 --> - [x] 🐛 Bug修复 - [ ] ✨ 新特性 - [ ] ⚡ 性能优化 - [ ] ♻️ 重构 - [ ] 🧪 测试 - [ ] 📦 构建/CI - [ ] 🔧 配置变更 - [x] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-transformer!10420 | 1 个月前 | |
ffn_worker_batching ttk用例适配 & bug修复 Co-authored-by: cpy_123456<chenpengyi@huawei.com> # message auto-generated for no-merge-commit merge: !9965 merge cpy_ffn into master ffn_worker_batching ttk用例适配 & bug修复 Created-by: cpy_123456 Commit-by: cpy_123456 Merged-by: cann-robot Description: ## 描述 ffn/ffn_worker_batching/tests/ ├── assets/ │ ├── spec.py # TestSpec 适配器(精度容差 + 自定义比较逻辑) │ └── impl/ │ ├── inputs.py # 输入数据生成(customize_inputs) │ └── golden.py # CPU 参考实现(golden) └── ut/op_api/ ├── test_aclnn_ffn_worker_batching.csv # 基础用例集(25 个) ## 关联的Issue https://gitcode.com/cann/ops-transformer/issues/4357 ## 测试 25白盒用例+200泛化用例 ## 文档更新 不涉及 ## 类型标签 <!-- [x] 表示选中 --> - [ ] 🐛 Bug修复 - [.] ✨ 新特性 - [ ] ⚡ 性能优化 - [ ] ♻️ 重构 - [x] 🧪 测试 - [ ] 📦 构建/CI - [ ] 🔧 配置变更 - [ ] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-transformer!9965 | 1 个月前 | |
整改安装重名头文件:权威 TLA / attention/common / mc2/common / math 侧保留;改次要副本 Co-authored-by: chenyifan<chenyifan66@h-partners.com> # message auto-generated for no-merge-commit merge: !10499 merge clear_repeat_h_29 into master 整改安装重名头文件:权威 TLA / attention/common / mc2/common / math 侧保留;改次要副本 Created-by: mutex_lock Commit-by: chenyifan Merged-by: cann-robot Description: ## 描述 按**安装重名**头文件规范,完成 **PR-3:其余算子 / 3rd 碰撞 / 3.7 类消歧**(控变更文件数 < 200),消除安装包内跨算子同名头冲突。 **方法**:低风险只改次要副本——权威树 mc2/3rd/template_linear_algebra、attention/common、mc2/common 等保留原名;次要侧加算子/组件前缀(kda_ / msa_ / gmm_ / mrs_v2_ / agm_v2_ / apace_ / wq_ / mararn_ 等)。同步更新 #include、\file、include guard。无业务逻辑变更。禁止软链接。 ### 安装分类规则(节选,本批相关) | # | 场景 | 是否整改 | 处置 | |---|------|---------|------| | 3.3 | atvoss submodule 多份可见 | 否 | 不解决(归需屏蔽) | | 3.4 | aclnn level2 双路径兼容 | 否 | 330 废弃(归需屏蔽) | | 3.7 | transformer 误拷贝 math | 是 | 本仓特化拷贝改名消歧(无法直接删改用 math) | | 3.9 | 仓内非对外同名拷贝 | 是 | 次要侧改名 / 去重 | 本批实际:**3.9** + **3.7 消歧** + 同名不同实现亦改名;权威/公共树保留原名。 ### 范围与结果 | 项 | 说明 | |----|------| | 范围 | 仍需整改清单中除 common.h / moe_common.h / moe_v2_common.h 外的成对/跨组件/TLA 次要副本 | | 映射条数 | **43**(pr3_remap_batch1.tsv + pr3_remap_batch2.tsv)+ nd2nz 去重 + masked_select 改名 | | 权威 TLA 包内多路径 | dispatch_policy.hpp / tile_copy.hpp 等同组件备案,**本批不改** | | 变更文件数 | **196**(< 200 硬约束) | ### 命名约定 | 场景 | 约定 | |------|------| | chunk_kda / msa 次要 | kda_* / msa_* | | matmul_reduce_scatter_v2 | mrs_v2_* | | all_gather_matmul_v2 | agm_v2_* | | gmm / apace / weight_quant | gmm_* / apace_* / wq_* | | matmul_all_reduce_add_rms_norm | mararn_* | | include guard | 与文件名前缀一致(如 CATLASS_KDA_*) | | 设备属性宏 | **保持** CATLASS_DEVICE 等原名(不随文件前缀改) | ### 其它处置 | 项 | 处置 | |----|------| | masked_select_v3.h | → moe_token_permute_masked_select_v3.h(算子特化,消歧 basename) | | batch_mat_mul_nd2nz.h | 删 mat_mul_v3 副本,改为 include batch_mat_mul_v3 侧(内容相同) | | sparse_flash_mla metadata | root → *_kernel_metadata.h;arch22 → *_arch22_metadata.h | ### 本分支变更统计 | 项 | 数量 | |----|-----:| | 变更文件 | **196** | | 行变更 | +375 / -797 | ## 关联的Issue https://gitcode.com/cann/ops-transformer/issues/4356 ## 测试 ## 文档更新 ## 类型标签 <!-- [x] 表示选中 --> - [ ] 🐛 Bug修复 - [ ] ✨ 新特性 - [ ] ⚡ 性能优化 - [x] ♻️ 重构 - [ ] 🧪 测试 - [ ] 📦 构建/CI - [ ] 🔧 配置变更 - [ ] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [x] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-transformer!10499 | 1 个月前 | |
torch extension整改成分布式 Co-authored-by: hblnb<huangbolin3@huawei.com> # message auto-generated for no-merge-commit merge: !9712 merge torch_extension_split into master torch extension整改成分布式 Created-by: hblnb Commit-by: hblnb Merged-by: cann-robot Description: ## 描述 ops-transformer仓支持各个算子独立编译torch_extention,并将torch_extension从集中式改成分布式(算子的文件分布到算子源码目录下新建的torch_extension文件夹) ## 关联的Issue https://gitcode.com/cann/ops-transformer/issues/4502 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] 🐛 Bug修复 - [ ] ✨ 新特性 - [ ] ⚡ 性能优化 - [x] ♻️ 重构 - [ ] 🧪 测试 - [ ] 📦 构建/CI - [ ] 🔧 配置变更 - [ ] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-transformer!9712 | 1 个月前 | |
整改安装重名头文件:权威 TLA / attention/common / mc2/common / math 侧保留;改次要副本 Co-authored-by: chenyifan<chenyifan66@h-partners.com> # message auto-generated for no-merge-commit merge: !10499 merge clear_repeat_h_29 into master 整改安装重名头文件:权威 TLA / attention/common / mc2/common / math 侧保留;改次要副本 Created-by: mutex_lock Commit-by: chenyifan Merged-by: cann-robot Description: ## 描述 按**安装重名**头文件规范,完成 **PR-3:其余算子 / 3rd 碰撞 / 3.7 类消歧**(控变更文件数 < 200),消除安装包内跨算子同名头冲突。 **方法**:低风险只改次要副本——权威树 mc2/3rd/template_linear_algebra、attention/common、mc2/common 等保留原名;次要侧加算子/组件前缀(kda_ / msa_ / gmm_ / mrs_v2_ / agm_v2_ / apace_ / wq_ / mararn_ 等)。同步更新 #include、\file、include guard。无业务逻辑变更。禁止软链接。 ### 安装分类规则(节选,本批相关) | # | 场景 | 是否整改 | 处置 | |---|------|---------|------| | 3.3 | atvoss submodule 多份可见 | 否 | 不解决(归需屏蔽) | | 3.4 | aclnn level2 双路径兼容 | 否 | 330 废弃(归需屏蔽) | | 3.7 | transformer 误拷贝 math | 是 | 本仓特化拷贝改名消歧(无法直接删改用 math) | | 3.9 | 仓内非对外同名拷贝 | 是 | 次要侧改名 / 去重 | 本批实际:**3.9** + **3.7 消歧** + 同名不同实现亦改名;权威/公共树保留原名。 ### 范围与结果 | 项 | 说明 | |----|------| | 范围 | 仍需整改清单中除 common.h / moe_common.h / moe_v2_common.h 外的成对/跨组件/TLA 次要副本 | | 映射条数 | **43**(pr3_remap_batch1.tsv + pr3_remap_batch2.tsv)+ nd2nz 去重 + masked_select 改名 | | 权威 TLA 包内多路径 | dispatch_policy.hpp / tile_copy.hpp 等同组件备案,**本批不改** | | 变更文件数 | **196**(< 200 硬约束) | ### 命名约定 | 场景 | 约定 | |------|------| | chunk_kda / msa 次要 | kda_* / msa_* | | matmul_reduce_scatter_v2 | mrs_v2_* | | all_gather_matmul_v2 | agm_v2_* | | gmm / apace / weight_quant | gmm_* / apace_* / wq_* | | matmul_all_reduce_add_rms_norm | mararn_* | | include guard | 与文件名前缀一致(如 CATLASS_KDA_*) | | 设备属性宏 | **保持** CATLASS_DEVICE 等原名(不随文件前缀改) | ### 其它处置 | 项 | 处置 | |----|------| | masked_select_v3.h | → moe_token_permute_masked_select_v3.h(算子特化,消歧 basename) | | batch_mat_mul_nd2nz.h | 删 mat_mul_v3 副本,改为 include batch_mat_mul_v3 侧(内容相同) | | sparse_flash_mla metadata | root → *_kernel_metadata.h;arch22 → *_arch22_metadata.h | ### 本分支变更统计 | 项 | 数量 | |----|-----:| | 变更文件 | **196** | | 行变更 | +375 / -797 | ## 关联的Issue https://gitcode.com/cann/ops-transformer/issues/4356 ## 测试 ## 文档更新 ## 类型标签 <!-- [x] 表示选中 --> - [ ] 🐛 Bug修复 - [ ] ✨ 新特性 - [ ] ⚡ 性能优化 - [x] ♻️ 重构 - [ ] 🧪 测试 - [ ] 📦 构建/CI - [ ] 🔧 配置变更 - [ ] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [x] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-transformer!10499 | 1 个月前 | |
torch extension整改成分布式 Co-authored-by: hblnb<huangbolin3@huawei.com> # message auto-generated for no-merge-commit merge: !9712 merge torch_extension_split into master torch extension整改成分布式 Created-by: hblnb Commit-by: hblnb Merged-by: cann-robot Description: ## 描述 ops-transformer仓支持各个算子独立编译torch_extention,并将torch_extension从集中式改成分布式(算子的文件分布到算子源码目录下新建的torch_extension文件夹) ## 关联的Issue https://gitcode.com/cann/ops-transformer/issues/4502 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] 🐛 Bug修复 - [ ] ✨ 新特性 - [ ] ⚡ 性能优化 - [x] ♻️ 重构 - [ ] 🧪 测试 - [ ] 📦 构建/CI - [ ] 🔧 配置变更 - [ ] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-transformer!9712 | 1 个月前 | |
moe_gating_top_k_softmax_st Co-authored-by: gcw_Lf43RugY<mingrui5@huawei.com> # message auto-generated for no-merge-commit merge: !10494 merge master into master moe_gating_top_k_softmax_st Created-by: gcw_Lf43RugY Commit-by: gcw_Lf43RugY Merged-by: cann-robot Description: ## 描述 ## MoE算子:moe_gating_top_k_softmax ST用例选取文档 ### 1.选取原则 - ACLNN 模式:每个算子选取约 20 个用例(ACLNN 调用开销较大,约 2s/用例) - Kernel 模式:每个算子选取约 30 个用例(Kernel 编译+执行较快,约 0.4s/用例) - 覆盖所有 dtype(float32/float16/bfloat16/int8/int32/int64) - 覆盖所有关键属性组合(dropPadMode/quantMode/normType/renorm 等) - 覆盖可选输入的组合(有/无 optional inputs) - 优先选取小 shape 用例(减少运行时间) - 排除已知精度边界用例(量化精度差异、bf16 reduction 差异等) - 排除依赖算子代码修改的用例(如 moe_token_unpermute_grad active 场景) - 总运行时间控制在 10 分钟以内 ### 2.选取结果 ### ACLNN模式 (1个csv,20个用例) | csv文件 | 算子目录 | 选取/全量 | 运行时间 | PASS | |--|--|--| --| --| | test_aclnn_moe_gating_top_k_softmax_arch35.csv | moe_gating_top_k_softmax | 20/20 | 110s | 20/20 | ### Kernel 模式 (1个csv,30个用例) | csv文件 | 算子目录 | 选取/全量 | 运行时间 | PASS | |--|--|--| --| --| | test_moe_gating_top_k_softmax_arch35.csv | moe_gating_top_k_softmax | 30/350 | 216s | 30/30 | ### 3 验证汇总 | 指标 | 值 | |--|--| | 选取用例总数 | 50 | | 全量用例总数 | 370 | | PASS | 50 | | FAIL | 0 | | ACLNN运行时间 | 110s(1min50s) | | Kernel运行时间 | 216s(3min36s) | | 总运行时间 | 317s(5min26s) | | 平均每用例 | 4s | ## 4. 功能覆盖说明 moe_gating_top_k_softmax - dtype:float32 / float16 / bfloat16 - finishedOptional: 覆盖 有/无 ## 关联的Issue [# MoE 算子 ST 用例选取文档](https://gitcode.com/cann/ops-transformer/issues/4546) ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [x] 🐛 Bug修复 - [ ] ✨ 新特性 - [ ] ⚡ 性能优化 - [ ] ♻️ 重构 - [x] 🧪 测试 - [ ] 📦 构建/CI - [ ] 🔧 配置变更 - [ ] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-transformer!10494 | 1 个月前 | |
fix(geir-test): 修复 kv_rms_norm_rope_cache geir 测试日志级别不一致(INFO→ERROR) Co-authored-by: sun-yibo1<sunyibo1@hisilicon.com> # message auto-generated for no-merge-commit merge: !10413 merge fix-geir-kv-rms-norm-rope-cache-log-level into master fix(geir-test): 修复 kv_rms_norm_rope_cache geir 测试日志级别不一致(INFO→ERROR) Created-by: sun-yibo1 Commit-by: sun-yibo1 Merged-by: cann-robot Description: ## 描述 修复 posembedding/kv_rms_norm_rope_cache/examples/test_geir_kv_rms_norm_rope_cache.cpp 中日志级别与描述不一致的问题:3 类失败消息被误标记为 INFO,而同文件内其他失败消息均正确标记为 ERROR,构成内部不一致。 ### 改动原因 geir 测试统一使用 printf("%s - LEVEL - [XIR]: message") 格式。以下 3 类失败分支的消息明确表示失败,但日志级别却写成 INFO,与同文件内其他失败消息(如 Generate input data failed、Create ir session using build options failed,均标记为 ERROR)不一致,会误导日志排查: - Initialize ge using ge global options failed - Run graph failed - Finalize ir graph session failed ### 改动方法 - 将上述 3 类失败消息的日志级别标签 - INFO - 改为 - ERROR -,不修改任何测试逻辑、消息文本或参数。 - 同时按 pre-commit clang-format 要求对文件做整体格式化:该文件在 upstream 上即不满足仓库 .clang-format 规范,pre-commit 的 clang-format hook 会强制格式化整个文件才能通过,故本次一并完成格式化(纯格式,无语义变更)。 ### 说明 - und_gen_qkv_rms_norm_rope_cache 的 geir 测试文件已正确标记失败消息为 ERROR,无需修改。 - 仅日志级别与格式修改,不影响测试编译与运行结果。 ## 关联的Issue - #4492 ## 测试 - 仅日志级别/格式修改,无逻辑变更,不影响测试编译与运行结果。 - 通过 git diff 逐项核对:失败消息的 - INFO - → - ERROR -,消息文本与参数不变。 - pre-commit 全部 hook 通过(trailing-whitespace / end-of-file-fixer / clang-format / codespell / check-* / detect-private-key);OAT 合规检查(python3.10)0 issues。 ## 文档更新 无。 ## 类型标签 - [x] 🐛 Bug修复 - [ ] ✨ 新特性 - [ ] ⚡ 性能优化 - [ ] ♻️ 重构 - [ ] 🧪 测试 - [ ] 📦 构建/CI - [ ] 🔧 配置变更 - [ ] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-transformer!10413 | 1 个月前 | |
add proto extend Co-authored-by: wang-minbo<wangminbo1@hisilicon.com> # message auto-generated for no-merge-commit merge: !10315 merge master into master add proto extend Created-by: wang-minbo Commit-by: wang-minbo Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000-->https://gitcode.com/cann/ops-transformer/issues/4459 <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] 🐛 Bug修复 - [ ] ✨ 新特性 - [ ] ⚡ 性能优化 - [ ] ♻️ 重构 - [ ] 🧪 测试 - [ ] 📦 构建/CI - [ ] 🔧 配置变更 - [ ] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-transformer!10315 | 1 个月前 | |
新增 MsaIndexScore 算子 (A2/A3) Co-authored-by: c00943476<chenlyucheng@huawei.com> # message auto-generated for no-merge-commit merge: !9503 merge master into master 新增 MsaIndexScore 算子 (A2/A3) Created-by: oscillated Commit-by: c00943476 Merged-by: cann-robot Description: ## 描述 新增 MsaIndexScore 算子及其接口(A2/A3),改进M3模型中MSA模块的性能。 ## 关联的Issue 关联Issue [#4117](https://gitcode.com/cann/ops-transformer/issues/4117) ## 测试 ### example、torch_extension接口功能自验  ### 输出精度比对 v.s. triton小算子实现  ### 输出性能批跑  ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] 🐛 Bug修复 - [x] ✨ 新特性 - [ ] ⚡ 性能优化 - [ ] ♻️ 重构 - [ ] 🧪 测试 - [ ] 📦 构建/CI - [ ] 🔧 配置变更 - [ ] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-transformer!9503 | 1 个月前 | |
moe_init_routing和moe_finalize_routing支持自动反向 Co-authored-by: JimmyLam2<linjingmin2@huawei.com> # message auto-generated for no-merge-commit merge: !9881 merge master into master moe_init_routing和moe_finalize_routing支持自动反向 Created-by: JimmyLam2 Commit-by: JimmyLam2 Merged-by: cann-robot Description: ## 描述 moe_init_routing和moe_finalize_routing支持自动反向 ## 关联的Issue https://gitcode.com/cann/ops-transformer/issues/4359 ## 测试 不涉及ST与二级冒烟。采用构造torch用例的方式进行验证。  ## 文档更新 新增 1.torch_extension/cann_ops_transformer/docs/zh/moe_finalize_routing_grad.md 2.torch_extension/cann_ops_transformer/docs/zh/moe_init_routing_grad.md 修改 1.torch_extension/cann_ops_transformer/docs/zh/moe_finalize_routing.md 2.torch_extension/cann_ops_transformer/docs/zh/moe_init_routing.md ## 类型标签 <!-- [x] 表示选中 --> - [ ] 🐛 Bug修复 - [x] ✨ 新特性 - [ ] ⚡ 性能优化 - [ ] ♻️ 重构 - [ ] 🧪 测试 - [ ] 📦 构建/CI - [ ] 🔧 配置变更 - [ ] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-transformer!9881 | 1 个月前 | |
pre-commit: set AllowShortFunctionsOnASingleLine to Empty Co-authored-by: gitcode_lijd<lijiandong20@huawei.com> # message auto-generated for no-merge-commit merge: !10461 merge fix_2 into master pre-commit: set AllowShortFunctionsOnASingleLine to Empty Created-by: gitcode_lijd Commit-by: gitcode_lijd Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] 🐛 Bug修复 - [ ] ✨ 新特性 - [ ] ⚡ 性能优化 - [ ] ♻️ 重构 - [ ] 🧪 测试 - [ ] 📦 构建/CI - [ ] 🔧 配置变更 - [ ] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-transformer!10461 | 1 个月前 | |
产品文档png文件名改为英文名 Co-authored-by: gitcode-chenjiao<chenjiao31@huawei.com> # message auto-generated for no-merge-commit merge: !9654 merge master into master 产品文档png文件名改为英文名 Created-by: gitcode-chenjiao Commit-by: gitcode-chenjiao Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 产品文档中的png图片名由中文改为英文 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> [#3899](https://gitcode.com/cann/ops-transformer/issues/3899) ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> NA ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> png和相关的link md ## 类型标签 <!-- [x] 表示选中 --> - [ ] 🐛 Bug修复 - [ ] ✨ 新特性 - [ ] ⚡ 性能优化 - [ ] ♻️ 重构 - [ ] 🧪 测试 - [ ] 📦 构建/CI - [ ] 🔧 配置变更 - [ x] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-transformer!9654 | 1 个月前 | |
Pre-Commit 规范整改 — 公共 Co-authored-by: gitcode_lijd<lijiandong20@huawei.com> # message auto-generated for no-merge-commit merge: !5305 merge refactor into master Pre-Commit 规范整改 — 公共 Created-by: gitcode_lijd Commit-by: gitcode_lijd Merged-by: cann-robot Description: pre-commit是一个Git Hooks框架,用于在 git commit时自动运行代码检查和格式化工具。: | Hook | 功能 | 说明 | |------|------|------| | **clang-format** | C/C++ 代码格式化 | 自动格式化代码,保持风格一致 | | **OAT Check** | 开源合规检查 | 检测许可证头、禁止二进制文件提交 | 本PR对于公共文件进行了pre-commit检查 See merge request: cann/ops-transformer!5305 | 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 | 5 个月前 | |
aclnnGroupedMatmulWeightNz补充WeightQuantPreProcess接口aclnn资料 Co-authored-by: renzetao<renzetao2@huawei.com> # message auto-generated for no-merge-commit merge: !10251 merge aclnn_example into master aclnnGroupedMatmulWeightNz补充WeightQuantPreProcess接口aclnn资料 Created-by: renzetao Commit-by: renzetao Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> aclnnGroupedMatmulWeightNz补充WeightQuantPreProcess接口aclnn资料 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> [#4412](https://gitcode.com/cann/ops-transformer/issues/4412) ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> bash build.sh --run_example 测试通过 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> gmm/grouped_matmul/docs/aclnnGroupedMatmulWeightNz.md ## 类型标签 <!-- [x] 表示选中 --> - [ ] 🐛 Bug修复 - [ ] ✨ 新特性 - [ ] ⚡ 性能优化 - [ ] ♻️ 重构 - [ ] 🧪 测试 - [ ] 📦 构建/CI - [ ] 🔧 配置变更 - [x] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-transformer!10251 | 1 个月前 | |
fix: Modify the AIDD docs issue Co-authored-by: zwj223<zhangwenjing55@h-partners.com> # message auto-generated for no-merge-commit merge: !9326 merge master into master fix: Modify the AIDD docs issue Created-by: zwj223 Commit-by: zwj223 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 修改AIDD扫描的核心资料问题 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> [#3995](https://gitcode.com/cann/ops-transformer/issues/3995) ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> torch_api_list.md op_list.md ascend950_op_list.md aclnn返回码.md 互推导关系.md ... ## 类型标签 <!-- [x] 表示选中 --> - [ ] 🐛 Bug修复 - [ ] ✨ 新特性 - [ ] ⚡ 性能优化 - [ ] ♻️ 重构 - [ ] 🧪 测试 - [ ] 📦 构建/CI - [ ] 🔧 配置变更 - [x] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-transformer!9326 | 1 个月前 | |
算子编译支持指定soc版本和最低cann版本 Co-authored-by: hblnb<huangbolin3@huawei.com> # message auto-generated for no-merge-commit merge: !10138 merge compile_check_soc_version into master 算子编译支持指定soc版本和最低cann版本 Created-by: hblnb Commit-by: hblnb Merged-by: cann-robot Description: ## 描述 新增require_cann_version可以指定算子编译支持的最低cann版本 指定算子在指定 soc 下的最低版本: require_cann_version(SOC ascend910b MIN_VERSION "9.0.0") 不同 soc 不同版本要求: require_cann_version(SOC ascend950 MIN_VERSION "9.2.0") require_cann_version(SOC ascend910b MIN_VERSION "9.0.0") ## 关联的Issue https://gitcode.com/cann/ops-transformer/issues/4500 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] 🐛 Bug修复 - [x] ✨ 新特性 - [ ] ⚡ 性能优化 - [ ] ♻️ 重构 - [ ] 🧪 测试 - [ ] 📦 构建/CI - [ ] 🔧 配置变更 - [ ] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-transformer!10138 | 1 个月前 | |
产品文档png文件名改为英文名 Co-authored-by: gitcode-chenjiao<chenjiao31@huawei.com> # message auto-generated for no-merge-commit merge: !9654 merge master into master 产品文档png文件名改为英文名 Created-by: gitcode-chenjiao Commit-by: gitcode-chenjiao Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 产品文档中的png图片名由中文改为英文 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> [#3899](https://gitcode.com/cann/ops-transformer/issues/3899) ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> NA ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> png和相关的link md ## 类型标签 <!-- [x] 表示选中 --> - [ ] 🐛 Bug修复 - [ ] ✨ 新特性 - [ ] ⚡ 性能优化 - [ ] ♻️ 重构 - [ ] 🧪 测试 - [ ] 📦 构建/CI - [ ] 🔧 配置变更 - [ x] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-transformer!9654 | 1 个月前 | |
Pre-Commit 规范整改 — 公共 Co-authored-by: gitcode_lijd<lijiandong20@huawei.com> # message auto-generated for no-merge-commit merge: !5305 merge refactor into master Pre-Commit 规范整改 — 公共 Created-by: gitcode_lijd Commit-by: gitcode_lijd Merged-by: cann-robot Description: pre-commit是一个Git Hooks框架,用于在 git commit时自动运行代码检查和格式化工具。: | Hook | 功能 | 说明 | |------|------|------| | **clang-format** | C/C++ 代码格式化 | 自动格式化代码,保持风格一致 | | **OAT Check** | 开源合规检查 | 检测许可证头、禁止二进制文件提交 | 本PR对于公共文件进行了pre-commit检查 See merge request: cann/ops-transformer!5305 | 2 个月前 | |
pre-commit: 豁免 *.png 文件,支持文档图片上传 Co-authored-by: youzhen5418<664699733@qq.com> # message auto-generated for no-merge-commit merge: !10197 merge png into master pre-commit: 豁免 *.png 文件,支持文档图片上传 Created-by: youzhen5418 Commit-by: youzhen5418 Merged-by: cann-robot Description: ## 描述 在 OAT.xml 的 binaryFileTypePolicyFilter 中新增 *.png 文件豁免,解决提交包含 png 文档配图时被 OAT 判定为"Invalid File Type: binary"而拦截的问题。 改动原因:OAT 合规检查将 png 文件识别为违规二进制文件,导致 pre-commit 失败,无法上传文档配图。png 作为文档图片(非可执行二进制),应在二进制文件检查中豁免。 改动内容:仅 OAT.xml 一个文件,新增一行: <filteritem type="filename" name="*.png" desc="PNG image files for documentation"/> 位于 binaryFileTypePolicyFilter(第 59 行)。 验证:本地用 oat-py 直接扫描 png 文件验证——豁免前 Issues found: 1(Invalid File Type: binary),豁免后 Issues found: 0。许可证头/版权头检查对二进制文件自动跳过,无需额外豁免。 ## 关联的Issue 关联Issue #4382 ## 测试 验证:豁免前报 Invalid File Type: binary,豁免后 Issues found: 0 pre-commit 全部 hook 通过(trailing-whitespace / end-of-file / clang-format / ruff / codespell / OAT) ## 文档更新 无 ## 类型标签 <!-- [x] 表示选中 --> - [ ] 🐛 Bug修复 - [ ] ✨ 新特性 - [ ] ⚡ 性能优化 - [ ] ♻️ 重构 - [ ] 🧪 测试 - [ ] 📦 构建/CI - [ x] 🔧 配置变更 - [ ] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-transformer!10197 | 1 个月前 | |
cannsim改名为npusim Co-authored-by: liangbinglong<liangbinglong@huawei.com> # message auto-generated for no-merge-commit merge: !9686 merge master into master cannsim改名为npusim Created-by: liangbinglong Commit-by: liangbinglong Merged-by: cann-robot Description: ## 描述 经TSC评审,cannsim工具正式更名为npusim,相关命令行、资料同步刷新,cannsim作为别名兼容一段时间,需要尽快切换 ## 关联的Issue NA ## 测试 使用最新链接版本测试,相关命令行已经全部更名为npusim ## 文档更新 更新doc下面的调优部分文件 ## 类型标签 <!-- [x] 表示选中 --> - [ ] 🐛 Bug修复 - [ ] ✨ 新特性 - [ ] ⚡ 性能优化 - [ ] ♻️ 重构 - [ ] 🧪 测试 - [ ] 📦 构建/CI - [ ] 🔧 配置变更 - [x] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-transformer!9686 | 1 个月前 | |
修复文档链接跳转失效问题 Co-authored-by: weihao18<weihao16@h-partners.com> # message auto-generated for no-merge-commit merge: !8061 merge fix_security_md into master 修复文档链接跳转失效问题 Created-by: weihao18 Commit-by: weihao18 Merged-by: cann-robot Description: ## 描述 修复SECURITY.md文档 [A-文件(夹)各场景权限管控推荐最大值] 链接跳转失效问题 ## 关联的Issue https://gitcode.com/cann/ops-transformer/issues/3373 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] 🐛 Bug修复 - [ ] ✨ 新特性 - [ ] ⚡ 性能优化 - [ ] ♻️ 重构 - [ ] 🧪 测试 - [ ] 📦 构建/CI - [ ] 🔧 配置变更 - [x] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-transformer!8061 | 2 个月前 | |
支持按模板参数编译算子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 | 6 个月前 | |
Pre-Commit 规范整改 — 公共 Co-authored-by: gitcode_lijd<lijiandong20@huawei.com> # message auto-generated for no-merge-commit merge: !5305 merge refactor into master Pre-Commit 规范整改 — 公共 Created-by: gitcode_lijd Commit-by: gitcode_lijd Merged-by: cann-robot Description: pre-commit是一个Git Hooks框架,用于在 git commit时自动运行代码检查和格式化工具。: | Hook | 功能 | 说明 | |------|------|------| | **clang-format** | C/C++ 代码格式化 | 自动格式化代码,保持风格一致 | | **OAT Check** | 开源合规检查 | 检测许可证头、禁止二进制文件提交 | 本PR对于公共文件进行了pre-commit检查 See merge request: cann/ops-transformer!5305 | 2 个月前 | |
torch extension整改成分布式 Co-authored-by: hblnb<huangbolin3@huawei.com> # message auto-generated for no-merge-commit merge: !9712 merge torch_extension_split into master torch extension整改成分布式 Created-by: hblnb Commit-by: hblnb Merged-by: cann-robot Description: ## 描述 ops-transformer仓支持各个算子独立编译torch_extention,并将torch_extension从集中式改成分布式(算子的文件分布到算子源码目录下新建的torch_extension文件夹) ## 关联的Issue https://gitcode.com/cann/ops-transformer/issues/4502 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] 🐛 Bug修复 - [ ] ✨ 新特性 - [ ] ⚡ 性能优化 - [x] ♻️ 重构 - [ ] 🧪 测试 - [ ] 📦 构建/CI - [ ] 🔧 配置变更 - [ ] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-transformer!9712 | 1 个月前 | |
feat(moe_ep_combine): 拆分combine为moe_ep_combine和moe_ep_combine_epilogue Co-authored-by: Shawn Lee<lixi8@huawei.com> # message auto-generated for no-merge-commit merge: !10249 merge master_combine_epilogue_0818 into master feat(moe_ep_combine): 拆分combine为moe_ep_combine和moe_ep_combine_epilogue Created-by: l00858142 Commit-by: l00858142;Shawn Lee Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> moe_ep_combine(发送阶段): - 只保留SendPhaseExpertToToken,发送expert输出到远端rank的HCCL Window - 移除combined_x/combined_topk_weights输出,改为无输出 - kernel entry移除输出GM_ADDR参数 moe_ep_combine_epilogue(接收+归约阶段,新增): - 从原始combine kernel提取RecvPhaseReduce/ProcessTopKToken/WaitDispatch/BuffInit - 输入: context, topk_idx; 输出: combined_x, combined_topk_weights(optional) - 新建op_def/op_api/op_tiling/op_kernel完整工程 - tiling计算combineStateWinOffset/combineDataWinOffset与combine保持一致 elastic_buffer.cpp: - MoeEpCombine改为void(仅发送),MoeEpCombineEpilogue返回tuple(接收+归约) - pybind11注册moe_ep_combine_epilogue elastic_buffer.py: - combine()预分配输出后依次调用moe_ep_combine和moe_ep_combine_epilogue ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] 🐛 Bug修复 - [x] ✨ 新特性 - [x] ⚡ 性能优化 - [ ] ♻️ 重构 - [ ] 🧪 测试 - [ ] 📦 构建/CI - [ ] 🔧 配置变更 - [ ] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-transformer!10249 | 1 个月前 | |
update cmake minimum required to 3.18.4 Co-authored-by: poorwill<wangbing110@huawei.com> # message auto-generated for no-merge-commit merge: !9634 merge master into master update cmake minimum required to 3.18.4 Created-by: wangbing110 Commit-by: poorwill Merged-by: cann-robot Description: update cmake minimum required to 3.18.4 See merge request: cann/ops-transformer!9634 | 1 个月前 | |
Pre-Commit 规范整改 — 公共 Co-authored-by: gitcode_lijd<lijiandong20@huawei.com> # message auto-generated for no-merge-commit merge: !5305 merge refactor into master Pre-Commit 规范整改 — 公共 Created-by: gitcode_lijd Commit-by: gitcode_lijd Merged-by: cann-robot Description: pre-commit是一个Git Hooks框架,用于在 git commit时自动运行代码检查和格式化工具。: | Hook | 功能 | 说明 | |------|------|------| | **clang-format** | C/C++ 代码格式化 | 自动格式化代码,保持风格一致 | | **OAT Check** | 开源合规检查 | 检测许可证头、禁止二进制文件提交 | 本PR对于公共文件进行了pre-commit检查 See merge request: cann/ops-transformer!5305 | 2 个月前 | |
Pre-Commit 规范整改 — 公共 Co-authored-by: gitcode_lijd<lijiandong20@huawei.com> # message auto-generated for no-merge-commit merge: !5305 merge refactor into master Pre-Commit 规范整改 — 公共 Created-by: gitcode_lijd Commit-by: gitcode_lijd Merged-by: cann-robot Description: pre-commit是一个Git Hooks框架,用于在 git commit时自动运行代码检查和格式化工具。: | Hook | 功能 | 说明 | |------|------|------| | **clang-format** | C/C++ 代码格式化 | 自动格式化代码,保持风格一致 | | **OAT Check** | 开源合规检查 | 检测许可证头、禁止二进制文件提交 | 本PR对于公共文件进行了pre-commit检查 See merge request: cann/ops-transformer!5305 | 2 个月前 | |
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 | 6 个月前 |
ops-transformer
🔥Latest News
- [2026/07] A5上新支持算子quant_flash_attn,Dense Attention全量化场景专用,以及experimental目录新增同名算子支持A5的MxFP4全量化;chunk_gated_delta_rule算子支持A5;A5新增DSV4 dense训练阶段TopK筛选反向算子dense_lightning_indexer_grad_kl_loss、dense_lightning_indexer_softmax_lse;mc2新支持算子engram_fetch_grad。
- [2026/06] A5上新增支持sparse_flash_mla、mixed_quant_sparse_flash_mla以及对应的metadata算子,用于DSV4场景稀疏Attention计算。新增lightning_indexer_v2、quant_lightning_indexer_v2以及对应的metadata算子,用于DSV4场景TopK筛选。A5新增DSV4 sparse训练阶段Attention反向算子sparse_flash_mla_grad、sparse_lightning_indexer_kl_loss_grad;mc2新支持算子engram_fetch、engram_fetch_wait。
- [2026/05] fused_infer_attention_score算子A5上支持MxFP8全量化;A5上新支持算子flash_attn,Dense Attention非量化场景专用。
- [2026/04] mc2新支持算子mega_moe。
- [2026/03] recurrent_gated_delta_rule算子支持A5。
- [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] 开源算子支持NPU 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:本项目功能和文档正在持续更新和完善中,欢迎您关注最新版本。