| Files | Last commit | Last update |
|---|---|---|
【GroupedMatmulFinalizeRouting】修复hif4数据流torch通路问题 Co-authored-by: liutao249<liutao249@hisilicon.com> # message auto-generated for no-merge-commit merge: !14721 merge fix_hif4_torch into master 【GroupedMatmulFinalizeRouting】修复hif4数据流torch通路问题 Created-by: liutao249 Commit-by: liutao249 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 末维长度基准按数据类型区分: 新增局部变量 mxScaleLastDim,当 tensor->GetDataType() 为 Ops::Transformer::DT_HIFLOAT4_SCALE 时取 1,否则仍取 MX_SCALE_LAST_DIM_SIZE(即 2),替换原先硬编码的常量。 步长连续性校验改用动态基准: dim2、dim1 两个维度的 stride 比较条件均改用 mxScaleLastDim,使 hif4 scale 张量的 stride 布局(末维步长为 1)能够通过与普通 Mx 量化相同的判定逻辑。 批量维连续性累加基准同步调整: 计算 tmpNxD 时以 mxScaleLastDim 替代 MX_SCALE_LAST_DIM_SIZE,保证从倒数第四维开始的批量维连续性检查与前序判断使用同一基准。 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> 关联Issue [#6914](https://gitcode.com/cann/ops-transformer/issues/6914) ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> 二级冒烟,hif4类型的torch单算子通路用例 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> 不涉及 ## 类型标签 <!-- [x] 表示选中 --> - [x] 🐛 Bug修复 - [ ] ✨ 新特性 - [ ] ⚡ 性能优化 - [ ] ♻️ 重构 - [ ] 🧪 测试 - [ ] 📦 构建/CI - [ ] 🔧 配置变更 - [ ] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-transformer!14721 | 9 days ago | |
fix(mhc_pre_sinkhorn): 修复c对齐校验缺失/needBackward=false空指针561103/B=0梯度输出未写 Co-authored-by: renruhai<renruhai1@huawei.com> # message auto-generated for no-merge-commit merge: !14770 merge fix/issue-6619-6654-6694-mhc-pre-sinkhorn into master fix(mhc_pre_sinkhorn): 修复c对齐校验缺失/needBackward=false空指针561103/B=0梯度输出未写 Created-by: renruhai Commit-by: renruhai Merged-by: cann-robot Description: ## 描述 针对 #6619、#6654、#6694 三个缺陷的修复(mhc_pre_sinkhorn 算子族)。 **#6654**:文档规格约束(Atlas A2/A3系列产品)要求尾轴 c 为 128 的倍数,但 CheckShape 未校验,c=130 被静默接受。补充 c % 128 == 0 校验(返回 161002 并带实际 c 值),门控于非 TND 平台(!IsPlatformSupportTnd(),即 A2/A3),950/960DT 的 TND 路径不受影响。 **#6694**:needBackward=false 时 hPre/hcBeforeNorm/invRms/sumOut/normOut 传 nullptr 会流经参数校验进入组图阶段,框架 SelectBin 因空指针无法匹配算子原型定义而选核失败,最终以内部错误码 561103 返回(上报点 mhc_pre_sinkhorn.cpp:47 ADD_TO_LAUNCHER_LIST_AICORE)。内核侧不读 needBackward、无条件写全部 8 个输出,这 5 个输出必须为合法张量。修复:CheckNotNull 对这 5 个输出无条件做非空校验,传 nullptr 返回 ACLNN_ERR_PARAM_NULLPTR(161001),替代 561103。(曾评估过占位张量方案让 nullptr 走通,因会给推理路径增加 Fill 开销且内核本就要写全部输出、显存并无真实节省,未采用。) **#6619 缺陷2(B=0 输出未写)**:backward 空 tensor 早退分支不写任何输出,而 gradPhi/gradAlpha/gradBias 是参数梯度(shape 与 B 无关,B=0 时仍非空),调用方读到未初始化内存。早退路径对非空的 gradX/gradPhi/gradAlpha/gradBias 通过 l0op::Fill + ViewCopy 写零后再返回。 #6619 缺陷1(大 shape 梯度漂移)与缺陷3(并发输出污染)需要报告者提供的 FD 脚本 / 并发 harness / mssanitizer 原始日志复现定位,本 PR 暂不涉及。 ## 关联的Issue - https://gitcode.com/cann/ops-transformer/issues/6654 - https://gitcode.com/cann/ops-transformer/issues/6694 - https://gitcode.com/cann/ops-transformer/issues/6619 **附加修复:op_api UT 编译阻塞(非本 PR 业务代码问题,随 PR 一并合入以解除全仓阻塞)** CI 的 op_api UT 失败根因:UT 框架 stub(tests/ut/framework_normal/op_api/stub/opdev/platform.h)内嵌的 NpuArch/Ops::Base::DAV_* 常量快照缺少 DAV_5162,且该 stub 通过定义 OP_COMMON_OP_HOST_UTIL_OP_CONST_DEF_H guard 宏短路了 third_party 真头文件——导致 aclnn_platform.h(IsRegbase 引用 DAV_5162,!14033 引入)在 op_api UT 构建中编译失败('DAV_5162' is not a member of 'Ops::Base'),阻塞全仓所有 PR。stub 枚举与 constexpr 区各补一行 DAV_5162 对齐真头文件。实机验证:补丁后无任何临时改动情况下 scoped op_api UT 编译通过、mhc 全部 4 用例 PASSED。 ## 测试 Atlas 910B3(A2/DAV_2201),cann/master 未修复版与本分支分别构建(9.3.0 weekly 20261014 toolkit),LD_PRELOAD A/B,issue 原样场景探针(两轮稳定): | 场景 | 未修复 master | 本 PR | 预期 | |---|---|---|---| | #6654 前向 c=130 | 0(放行) | **161002** | 161002 | | #6654 前向 c=128 回归 | 0 | 0 | 0 | | #6694 needBackward=false + 5 出参 nullptr | 561103 | **161001** | 161001 | | #6694 needBackward=false + 5 出参分配(回归) | 0 | 0 | 0 | | #6619 backward B=0(gradPhi 预填 0xAB 金丝雀 49152B) | 全残留 | **全 0** | 全 0 | | #6619 backward 有效路径回归(bs=2,pattern 填充输入) | sync=0 | sync=0,gradPhi checksum 与修复前**逐位一致** | 行为不变 | ## 文档更新 NA(#6694 的"输出无效"措辞与可空规则、#6619 附带的 P3 头文件约束缺口,建议由资料模块随本 PR 合入后单独跟进) ## 类型标签 - [x] 🐛 Bug修复 See merge request: cann/ops-transformer!14770 | 9 days ago | |
修复graph的UT编译报错 Co-authored-by: lixiawei<lixiawei2@h-partners.com> # message auto-generated for no-merge-commit merge: !13571 merge asan_build into master 修复graph的UT编译报错 Created-by: lixiawei Commit-by: lixiawei Merged-by: cann-robot Description: ## 描述 修复graph的UT编译报错 ## 关联的Issue https://gitcode.com/cann/ops-transformer/issues/6035 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] 🐛 Bug修复 - [ ] ✨ 新特性 - [ ] ⚡ 性能优化 - [ ] ♻️ 重构 - [ ] 🧪 测试 - [ ] 📦 构建/CI - [ ] 🔧 配置变更 - [ ] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-transformer!13571 | 28 days ago | |
fix(pre-commit): 全仓代码规范整改——公共 Co-authored-by: gitcode_lijd<lijiandong20@huawei.com> # message auto-generated for no-merge-commit merge: !13532 merge common into master fix(pre-commit): 全仓代码规范整改——公共 Created-by: gitcode_lijd Commit-by: gitcode_lijd Merged-by: cann-robot Description: 关联Issue https://gitcode.com/cann/ops-transformer/issues/5939 ## 描述 全仓代码规范整改系列——公共目录(common/、examples/、tests/、scripts/ 等)。基于仓库 pre-commit 门禁对存量代码做一次性规范收敛: - clang-format 按 .clang-format 统一格式(列宽 120、指针左对齐等),ruff 格式化 Python - 行尾空白、文件末尾换行修复,少量文档笔误修正 - 规模:280 个文件,+4708/-5785 行,纯格式化改动语义等价,无逻辑变更 ## 关联的Issue https://gitcode.com/cann/ops-transformer/issues/5939(全仓整改总跟踪) ## 测试 - pre-commit 全部钩子本地通过 - CI 流水线(compile/UT)验证 See merge request: cann/ops-transformer!13532 | 30 days ago | |
fix(pre-commit): 全仓代码规范整改——公共 Co-authored-by: gitcode_lijd<lijiandong20@huawei.com> # message auto-generated for no-merge-commit merge: !13532 merge common into master fix(pre-commit): 全仓代码规范整改——公共 Created-by: gitcode_lijd Commit-by: gitcode_lijd Merged-by: cann-robot Description: 关联Issue https://gitcode.com/cann/ops-transformer/issues/5939 ## 描述 全仓代码规范整改系列——公共目录(common/、examples/、tests/、scripts/ 等)。基于仓库 pre-commit 门禁对存量代码做一次性规范收敛: - clang-format 按 .clang-format 统一格式(列宽 120、指针左对齐等),ruff 格式化 Python - 行尾空白、文件末尾换行修复,少量文档笔误修正 - 规模:280 个文件,+4708/-5785 行,纯格式化改动语义等价,无逻辑变更 ## 关联的Issue https://gitcode.com/cann/ops-transformer/issues/5939(全仓整改总跟踪) ## 测试 - pre-commit 全部钩子本地通过 - CI 流水线(compile/UT)验证 See merge request: cann/ops-transformer!13532 | 30 days ago | |
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 | 3 months ago | |
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 | 3 months ago |