本项目是CANN提供的transformer类大模型算子库,实现网络在NPU上加速计算。
| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
恢复--tiling_key入参编译&&适配Hcomm路径&&优化pr类型标签样式 Co-authored-by: lidongsheng<lidongsheng43@huawei.com> # message auto-generated for no-merge-commit merge: !2340 merge cmake into master 恢复--tiling_key入参编译&&适配Hcomm路径&&优化pr类型标签样式 Created-by: qq_46353993 Commit-by: lidongsheng Merged-by: cann-robot Description: ## 描述 本次修改共涉及三个内容,描述如下: 1. 恢复--tiling_key入参,支持部分还未模板化整改的算子使用。 2. 适配Hcomm路径。HCCL老仓下线,原${TOP_DIR}/ace/comop路径已废弃,需要整改为新路径${TOP_DIR}/hcomm、${TOP_DIR}/hccl。 3. 优化pr的类型标签样式。 ## 关联的Issue [--tiling_key参数未支持,部分未模板化算子还需要使用](https://gitcode.com/cann/ops-transformer/issues/1086) [适配Hcomm路径](https://gitcode.com/cann/ops-transformer/issues/1108) [扩充和美化PR的类型标签](https://gitcode.com/cann/ops-transformer/issues/932) ## 测试 编译触发、二级冒烟、--tiling_key入参编译与用例执行、--kernel_template_input入参编译与用例执行 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-transformer!2340 | 7 个月前 | |
qsfap支持盘古sink sp3问题修复 Co-authored-by: wangyuanhe1<wangyuanhe1@huawei.com> # message auto-generated for no-merge-commit merge: !3232 merge master into master qsfap支持盘古sink sp3问题修复 Created-by: wangyuanhe1 Commit-by: wangyuanhe1 Merged-by: cann-robot Description: ## 描述 qsfap支持盘古sink sp3问题修复 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [x ] 🐛 Bug 修复 - [ ] ✨ 新特性 - [ ] ⚡ 性能优化 - [ ] ♻️ 重构 - [ ] 🧪 测试 - [ ] 📦 构建/CI - [ ] 🔧 配置变更 - [ ] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-transformer!3232 | 6 个月前 | |
为add_example增加infershape和kernel UT Co-authored-by: lidongsheng<lidongsheng43@huawei.com> # message auto-generated for no-merge-commit merge: !3066 merge examples into master 为add_example增加infershape和kernel UT Created-by: qq_46353993 Commit-by: lidongsheng Merged-by: cann-robot Description: ## 描述 AI Core算子开发指南中对算子UT交付件的编写进行了详细讲解,并以add_example算子为示例,但由于仓上缺少infershape和kernel的UT代码,因此文档中的链接失效。本次修改增加了add_example的infershape和kernel的UT。 ## 关联的Issue [AI Core算子开发指南-UT验证中部分样例文件链接失效](https://gitcode.com/cann/ops-transformer/issues/1386) ## 测试 1. 验证host UT 执行命令: bash build.sh -u --ophost --ops=add_example 执行结果:   2. 验证kernel UT 执行命令:bash build.sh -u --opkernel --ops=add_example 执行结果:     3. 编译触发 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] 🐛 Bug 修复 - [ ] ✨ 新特性 - [ ] ⚡ 性能优化 - [ ] ♻️ 重构 - [x] 🧪 测试 - [ ] 📦 构建/CI - [ ] 🔧 配置变更 - [ ] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-transformer!3066 | 6 个月前 | |
将kernel_event.h和kernel_macros.h的引用改成kernel_operator.h Co-authored-by: hblnb<huangbolin3@huawei.com> # message auto-generated for no-merge-commit merge: !3043 merge kernel_event_h into master 将kernel_event.h和kernel_macros.h的引用改成kernel_operator.h Created-by: hblnb Commit-by: hblnb Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] 🐛 Bug 修复 - [ ] ✨ 新特性 - [ ] ⚡ 性能优化 - [ ] ♻️ 重构 - [ ] 🧪 测试 - [ ] 📦 构建/CI - [ ] 🔧 配置变更 - [ ] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-transformer!3043 | 6 个月前 | |
install文档描述调整 Co-authored-by: lidongsheng<lidongsheng43@huawei.com> Co-authored-by: gitcode-chenjiao<chenjiao31@huawei.com> # message auto-generated for no-merge-commit merge: !3118 merge else into master install文档描述调整 Created-by: qq_46353993 Commit-by: lidongsheng;gitcode-chenjiao Merged-by: cann-robot Description: ## 描述 重新调整环境部署的大纲逻辑 ## 关联的Issue [快速入门里有多个流程和多种安装](https://gitcode.com/cann/ops-transformer/issues/1360) ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 - README.md - docs/QUICKSTART.md - docs/zh/install/dir_structure.md - docs/zh/install/quick_install.md - docs/zh/invocation/quick_op_invocation.md ## 类型标签 <!-- [x] 表示选中 --> - [ ] 🐛 Bug 修复 - [ ] ✨ 新特性 - [ ] ⚡ 性能优化 - [ ] ♻️ 重构 - [ ] 🧪 测试 - [ ] 📦 构建/CI - [ ] 🔧 配置变更 - [x] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-transformer!3118 | 6 个月前 | |
为add_example增加infershape和kernel UT Co-authored-by: lidongsheng<lidongsheng43@huawei.com> # message auto-generated for no-merge-commit merge: !3066 merge examples into master 为add_example增加infershape和kernel UT Created-by: qq_46353993 Commit-by: lidongsheng Merged-by: cann-robot Description: ## 描述 AI Core算子开发指南中对算子UT交付件的编写进行了详细讲解,并以add_example算子为示例,但由于仓上缺少infershape和kernel的UT代码,因此文档中的链接失效。本次修改增加了add_example的infershape和kernel的UT。 ## 关联的Issue [AI Core算子开发指南-UT验证中部分样例文件链接失效](https://gitcode.com/cann/ops-transformer/issues/1386) ## 测试 1. 验证host UT 执行命令: bash build.sh -u --ophost --ops=add_example 执行结果:   2. 验证kernel UT 执行命令:bash build.sh -u --opkernel --ops=add_example 执行结果:     3. 编译触发 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] 🐛 Bug 修复 - [ ] ✨ 新特性 - [ ] ⚡ 性能优化 - [ ] ♻️ 重构 - [x] 🧪 测试 - [ ] 📦 构建/CI - [ ] 🔧 配置变更 - [ ] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-transformer!3066 | 6 个月前 | |
将kernel_event.h和kernel_macros.h的引用改成kernel_operator.h Co-authored-by: hblnb<huangbolin3@huawei.com> # message auto-generated for no-merge-commit merge: !3043 merge kernel_event_h into master 将kernel_event.h和kernel_macros.h的引用改成kernel_operator.h Created-by: hblnb Commit-by: hblnb Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] 🐛 Bug 修复 - [ ] ✨ 新特性 - [ ] ⚡ 性能优化 - [ ] ♻️ 重构 - [ ] 🧪 测试 - [ ] 📦 构建/CI - [ ] 🔧 配置变更 - [ ] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-transformer!3043 | 6 个月前 | |
整仓文档表述不清晰、拼写错误、标点等低错问题修改 Co-authored-by: gitee-yanglulu<yanglulul@h-partners.com> # message auto-generated for no-merge-commit merge: !3192 merge master into master 整仓文档表述不清晰、拼写错误、标点等低错问题修改 Created-by: gitee-yanglulu Commit-by: gitee-yanglulu Merged-by: cann-robot Description: 整仓文档表述不清晰、拼写错误、标点等低错问题修改 See merge request: cann/ops-transformer!3192 | 6 个月前 | |
GMM类算子SC告警清理。 Co-authored-by: tooslow<zhangzhizhuo1@huawei.com> # message auto-generated for no-merge-commit merge: !2928 merge sc into master GMM类算子SC告警清理。 Created-by: zhangzhizhuo Commit-by: zhangzhizhuo;tooslow Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> gmm/grouped_matmul/op_host/op_api/grouped_matmul_util.cpp IsTransposeLastTwoDims未校验维度,可能存在减翻问题。 gmm/grouped_matmul_finalize_routing/examples/arch35/test_aclnn_grouped_matmul_finalize_routing_mx.cpp gmm/grouped_matmul_finalize_routing/examples/arch35/test_aclnn_grouped_matmul_finalize_routing_weightnz.cpp 存在魔鬼数字 gmm/grouped_matmul_swiglu_quant_v2/op_host/op_api/grouped_matmul_swiglu_quant_v2_utils.h IsDtypeCompatiblePertoken 为修改成员变量的函数添加const限定 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> 关联Issue [#1292](https://gitcode.com/cann/ops-transformer/issues/1292) ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] 🐛 Bug 修复 - [ ] ✨ 新特性 - [ ] ⚡ 性能优化 - [ ] ♻️ 重构 - [ ] 🧪 测试 - [ ] 📦 构建/CI - [ ] 🔧 配置变更 - [ ] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [x] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-transformer!2928 | 6 个月前 | |
QuantGroupedMatlMulAlltoAllv问题单修复: aclnn校验信息 + 资料修改 Co-authored-by: Khan-Li<likehan2@huawei.com> # message auto-generated for no-merge-commit merge: !3201 merge master into master QuantGroupedMatlMulAlltoAllv问题单修复: aclnn校验信息 + 资料修改 Created-by: Khan-Li Commit-by: Khan-Li Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> [Bug-Report|缺陷反馈](https://gitcode.com/cann/ops-transformer/issues/1410) ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] 🐛 Bug 修复 - [ ] ✨ 新特性 - [ ] ⚡ 性能优化 - [ ] ♻️ 重构 - [ ] 🧪 测试 - [ ] 📦 构建/CI - [ ] 🔧 配置变更 - [ ] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-transformer!3201 | 6 个月前 | |
[BugFix][MhcPost] Fix null check order in InferDataTypeForMhcPost Co-authored-by: 薛靖晖<xuejinghui@huawei.com> # message auto-generated for no-merge-commit merge: !3182 merge mhcpost_codecheck into master [BugFix][MhcPost] Fix null check order in InferDataTypeForMhcPost Created-by: xuejinghui Commit-by: 薛靖晖 Merged-by: cann-robot Description: ## 描述 Mhcpost修改context的检查顺序,避免core dump <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue https://gitcode.com/cann/ops-transformer/issues/1378 <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [x] 🐛 Bug 修复 - [ ] ✨ 新特性 - [ ] ⚡ 性能优化 - [ ] ♻️ 重构 - [ ] 🧪 测试 - [ ] 📦 构建/CI - [ ] 🔧 配置变更 - [ ] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-transformer!3182 | 6 个月前 | |
同步nn仓inplace_index_add修改 Co-authored-by: fazhenyao123<fazhenyao@h-partners.com> # message auto-generated for no-merge-commit merge: !3114 merge 3_21 into master 同步nn仓inplace_index_add修改 Created-by: fazhenyao123 Commit-by: fazhenyao123 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 同步nn仓inplace_index_add修改 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> https://gitcode.com/cann/ops-transformer/issues/1365 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。-->  ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> 不涉及 ## 类型标签 <!-- [x] 表示选中 --> - [ ] 🐛 Bug 修复 - [ ] ✨ 新特性 - [ ] ⚡ 性能优化 - [ ] ♻️ 重构 - [ ] 🧪 测试 - [ ] 📦 构建/CI - [ ] 🔧 配置变更 - [ ] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [x] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-transformer!3114 | 6 个月前 | |
fix(rotary_position_embedding): fix uint16 overflow caused by oversized stride on 310p Co-authored-by: yu-xinjie62<yuxinjie1@huawei.com> # message auto-generated for no-merge-commit merge: !2536 merge bugfix/rope_310p into master fix(rotary_position_embedding): fix uint16 overflow caused by oversized stride on 310p Created-by: yu-xinjie62 Commit-by: yu-xinjie62 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 在Ascend 310P平台上,RoPE算子当输入stride参数数值超过uint16类型最大值(65535)时,会发生整数溢出,引发算子计算结果异常、运行崩溃等问题。 算子底层实现中,stride相关参数采用uint16类型进行存储与地址偏移计算;当业务场景下stride数值超出65535时,会发生无符号整数回卷溢出,导致计算逻辑错误,最终引发算子输出异常。 修复方案: 1. 算子逻辑修复:针对Ascend 310P平台,新增stride参数范围校验与溢出防护逻辑,拦截超出uint16取值范围的非法输入,避免异常数值进入底层计算; 2. 文档补充:在算子官方说明资料中,新增Ascend 310P平台下的stride参数取值范围限制条件,明确使用约束。 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> 关联Issue [#1392](https://gitcode.com/cann/ops-transformer/issues/1392) ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> - 【功能验证】在310P平台完成全场景测试:uint16合法范围内输入计算正常、临界值(65535)无异常、超范围输入可触发明确报错,无溢出问题; - 【兼容性验证】原有合法输入场景下,算子计算精度、性能无劣化,与修复前结果完全一致; - 【文档验证】补充的限制条件已同步至对应资料,描述准确无歧义,符合算子文档规范。 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> 更新了aclnnRotaryPositionEmbedding.md文档。 ## 类型标签 <!-- [x] 表示选中 --> - [x] 🐛 Bug 修复 - [ ] ✨ 新特性 - [ ] ⚡ 性能优化 - [ ] ♻️ 重构 - [ ] 🧪 测试 - [ ] 📦 构建/CI - [ ] 🔧 配置变更 - [x] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-transformer!2536 | 6 个月前 | |
更新离线编译第三方库下载脚本,添加opbase相关 Co-authored-by: davon<liuwenda4@huawei.com> # message auto-generated for no-merge-commit merge: !3028 merge third into master 更新离线编译第三方库下载脚本,添加opbase相关 Created-by: Davon14272 Commit-by: davon Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 更新离线编译第三方库下载脚本,添加opbase相关 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> [#1332](https://gitcode.com/cann/ops-transformer/issues/1332) ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [x] 🐛 Bug 修复 - [ ] ✨ 新特性 - [ ] ⚡ 性能优化 - [ ] ♻️ 重构 - [ ] 🧪 测试 - [ ] 📦 构建/CI - [ ] 🔧 配置变更 - [ ] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-transformer!3028 | 6 个月前 | |
mc2与common目录内头文件引用整改 Co-authored-by: candy_cloud_fly<tangyunfei4@h-partners.com> # message auto-generated for no-merge-commit merge: !2636 merge fix_aclnn_h into master mc2与common目录内头文件引用整改 Created-by: candy_cloud_fly Commit-by: candy_cloud_fly Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> mc2目录下transformer仓头文件整改 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] 🐛 Bug 修复 - [ ] ✨ 新特性 - [ ] ⚡ 性能优化 - [ ] ♻️ 重构 - [ ] 🧪 测试 - [ ] 📦 构建/CI - [ ] 🔧 配置变更 - [ ] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [x] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-transformer!2636 | 6 个月前 | |
整仓文档表述不清晰、拼写错误、标点等低错问题修改 Co-authored-by: gitee-yanglulu<yanglulul@h-partners.com> # message auto-generated for no-merge-commit merge: !3192 merge master into master 整仓文档表述不清晰、拼写错误、标点等低错问题修改 Created-by: gitee-yanglulu Commit-by: gitee-yanglulu Merged-by: cann-robot Description: 整仓文档表述不清晰、拼写错误、标点等低错问题修改 See merge request: cann/ops-transformer!3192 | 6 个月前 | |
更新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 | 9 个月前 | |
在 gitignore 里屏蔽 third_party Co-authored-by: coiline<baitian5@huawei.com> # message auto-generated for no-merge-commit merge: !608 merge gitignore into master 在 gitignore 里屏蔽 third_party Created-by: coiline Commit-by: coiline Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-transformer!608 | 9 个月前 | |
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 | 8 个月前 | |
ut编译隔离不同芯片 Co-authored-by: hblnb<huangbolin3@huawei.com> # message auto-generated for no-merge-commit merge: !2196 merge get_soc_script into master ut编译隔离不同芯片 Created-by: hblnb Commit-by: hblnb Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-transformer!2196 | 6 个月前 | |
add contributing of document Co-authored-by: gitcode-chenjiao<chenjiao31@huawei.com> # message auto-generated for no-merge-commit merge: !1701 merge master into master add contributing of document Created-by: gitcode-chenjiao Commit-by: gitcode-chenjiao Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 更新了文档贡献指南. ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> 不需要关联issue ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> 不涉及功能测试,文档已检视。 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> 更新contributing类文档 ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ x] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-transformer!1701 | 8 个月前 | |
init | 1 年前 | |
fix license Co-authored-by: wang-minbo<wangminbo1@hisilicon.com> # message auto-generated for no-merge-commit merge: !1462 merge master into master fix license Created-by: wang-minbo Commit-by: wang-minbo Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。-->修复transformer仓license ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000-->https://gitcode.com/cann/ops-transformer/issues/657 <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-transformer!1462 | 8 个月前 | |
install文档描述调整 Co-authored-by: lidongsheng<lidongsheng43@huawei.com> Co-authored-by: gitcode-chenjiao<chenjiao31@huawei.com> # message auto-generated for no-merge-commit merge: !3118 merge else into master install文档描述调整 Created-by: qq_46353993 Commit-by: lidongsheng;gitcode-chenjiao Merged-by: cann-robot Description: ## 描述 重新调整环境部署的大纲逻辑 ## 关联的Issue [快速入门里有多个流程和多种安装](https://gitcode.com/cann/ops-transformer/issues/1360) ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 - README.md - docs/QUICKSTART.md - docs/zh/install/dir_structure.md - docs/zh/install/quick_install.md - docs/zh/invocation/quick_op_invocation.md ## 类型标签 <!-- [x] 表示选中 --> - [ ] 🐛 Bug 修复 - [ ] ✨ 新特性 - [ ] ⚡ 性能优化 - [ ] ♻️ 重构 - [ ] 🧪 测试 - [ ] 📦 构建/CI - [ ] 🔧 配置变更 - [x] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-transformer!3118 | 6 个月前 | |
修改公共文档问题 Co-authored-by: cc-z<zhaochenchen11@huawei.com> # message auto-generated for no-merge-commit merge: !1022 merge master into master 修改公共文档问题 Created-by: cc-z Commit-by: cc-z Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 修改公共文档问题 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-transformer!1022 | 8 个月前 | |
支持按模板参数编译算子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 | 7 个月前 | |
更新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 | 9 个月前 | |
ut编译隔离不同芯片 Co-authored-by: hblnb<huangbolin3@huawei.com> # message auto-generated for no-merge-commit merge: !2196 merge get_soc_script into master ut编译隔离不同芯片 Created-by: hblnb Commit-by: hblnb Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-transformer!2196 | 6 个月前 | |
解决ifa模块的扫描目录冲突问题 Co-authored-by: wangsong96<wangsong109@huawei.com> # message auto-generated for no-merge-commit merge: !2922 merge master into master 解决ifa模块的扫描目录冲突问题 Created-by: wangsong96 Commit-by: wangsong96 Merged-by: cann-robot Description: ## 描述 解决classify_rule中“- ops/ops-transformer/attention/incre_flash_attention/op_host/incre_flash_attention_tiling_v2.cpp”同时存在与“ifa”和“transformer-5”两个模块中的路径冲突 ## 关联的Issue 关联Issue [#1259](https://gitcode.com/cann/ops-transformer/issues/1259) ## 测试 构建测试 ## 文档更新 无 ## 类型标签 <!-- [x] 表示选中 --> - [x] 🐛 Bug 修复 - [ ] ✨ 新特性 - [ ] ⚡ 性能优化 - [ ] ♻️ 重构 - [ ] 🧪 测试 - [ ] 📦 构建/CI - [ ] 🔧 配置变更 - [ ] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-transformer!2922 | 6 个月前 | |
[fix]自适应install_deps.sh 的 sudo, 避免找不到 sudo 报错 Co-authored-by: WangLingfeng<wlf_x_contion@sina.com> # message auto-generated for no-merge-commit merge: !846 merge master into master [fix]自适应install_deps.sh 的 sudo, 避免找不到 sudo 报错 Created-by: wlf-darkmatter Commit-by: WangLingfeng Merged-by: cann-robot Description: ## 描述 替换脚本中的 sudo 命令,自动监测是否存在 sudo,避免因为 sudo 找不到而执行失败   修复方案: 改写 sudo 为 $try_sudo,当系统中没有 sudo 指令时,try_sudo=""为空;当系统中有 sudo 指令时,try_sudo=“sudo"  修复结果:   ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-transformer!846 | 8 个月前 | |
init | 1 年前 | |
修复CANN 8.5.2 补丁版本的兼容性问题 Co-authored-by: hblnb<huangbolin3@huawei.com> # message auto-generated for no-merge-commit merge: !2959 merge version_cmake into master 修复CANN 8.5.2 补丁版本的兼容性问题 Created-by: hblnb Commit-by: hblnb Merged-by: cann-robot Description: ## 描述 安装8.5.2的ops包和toolkit包后,单独升级9.0.0的transformer包,再安装hccl的8.5.2的包会报错要求hccl版本大于9.0 现在修改这个限制为8.5 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] 🐛 Bug 修复 - [ ] ✨ 新特性 - [ ] ⚡ 性能优化 - [ ] ♻️ 重构 - [ ] 🧪 测试 - [ ] 📦 构建/CI - [ ] 🔧 配置变更 - [ ] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-transformer!2959 | 6 个月前 | |
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 | 7 个月前 |
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] 开源算子支持Ascend 950PR/Ascend 950DT/KirinX90,可以通过CANN Simulator仿真工具开发调试。
- [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类等算子,算子库架构图如下:

📝版本配套
本项目源码会跟随CANN软件版本发布,关于CANN软件版本与本项目标签的对应关系请参阅release仓库中的相应版本说明 。 请注意,为确保您的源码定制开发顺利进行,请选择配套的CANN版本与Gitcode标签源码,使用master分支可能存在版本不匹配的风险。
⚡️快速入门
若您希望从零到一快速体验项目能力,请访问下述简易教程。
- 环境部署:本文是QuickStart和各类教程的操作前提,请先完成基础环境搭建和源码下载。
- QuickStart:针对源码编译、算子调用/开发/调试等关键能力,提供快速上手的简易指南。
📖学习教程
若您已学习完快速入门章节,对本项目有一定认知,并希望深入了解和体验项目,请访问下述详细教程。
- 算子列表:提供全量算子信息,方便您查看算子分类和功能。
- 算子调用:提供多种源码编译和执行算子样例(包括执行UT)的方法。
- 算子开发:提供算子端到端开发指南,从零学习创建算子工程、实现Tiling和Kernel核心交付件。
- 算子调试调优:提供常见算子调试和调优方法,如DumpTensor、msProf、Simulator等。
除了上述关键教程,还有其他文档介绍,例如算子调用方式、build参数说明、术语概念等,全量文档请访问docs。
🔍目录结构
关键目录如下,详细目录介绍参见项目目录。
├── cmake # 项目工程编译目录
├── common # 项目公共头文件和公共源码
├── attention # attention类算子
│ ├── flash_attention_score # flash_attention_score算子所有交付件
│ │ ├── CMakeLists.txt # 算子编译配置文件
│ │ ├── docs # 算子说明文档
│ │ ├── examples # 算子使用示例
│ │ ├── op_graph # 算子构图相关目录
│ │ ├── op_host # 算子信息库、Tiling、InferShape相关实现目录
│ │ ├── op_api # 可选,算子aclnn接口实现目录,如未提供则表示此算子的aclnn接口会让工程自动生成
│ │ ├── op_kernel # 算子kernel目录
│ │ └── README.md # 算子介绍文档
│ ├── ...
│ └── CMakeLists.txt # 算子编译配置文件
├── docs # 项目文档介绍
├── examples # 端到端算子开发和调用示例
├── experimental # 用户自定义算子存放目录
├── ...
├── moe # moe类算子
├── posembedding # posembedding类算子
├── scripts # 脚本目录,包含自定义算子、Kernel构建相关配置文件
├── tests # 测试工程目录
├── CMakeLists.txt
├── README.md
├── build.sh # 项目工程编译脚本
├── install_deps.sh # 安装依赖包脚本
└── requirements.txt # 本项目需要的第三方依赖包
💬相关信息
🤝联系我们
本项目功能和文档正在持续更新和完善中,建议您关注最新版本。
-
问题反馈:通过GitCode【Issues】提交问题。
-
社区互动:通过GitCode【讨论】参与交流。
-
技术专栏:通过GitCode【Wiki】获取技术文章,如系列化教程、优秀实践等。
技术专题 样例 算子性能优化实践 FA算子性能优化实践和效果分析