| Files | Last commit | Last update |
|---|---|---|
refactor: 统一 add/mul/pow/real_div/sub 算子代码风格 Co-authored-by: cai-chengchao<caichengchao1@h-partners.com> # message auto-generated for no-merge-commit merge: !6053 merge ccc_0929 into master refactor: 统一 add/mul/pow/real_div/sub 算子代码风格 Created-by: cai-chengchao Commit-by: cai-chengchao Merged-by: cann-robot Description: ## 描述 对 add、mul、pow、real_div、sub 五个数学算子的代码进行统一的代码风格规范化(clang-format),包括: - 统一命名空间/类的括号风格与缩进 - 统一指针、引用修饰符位置(如 const char* const) - 规范函数声明与调用的换行对齐 - 统一注释风格及文件结尾换行符 - 修正 real_div 配置注释中的拼写错误(build-in → built-in) 本次改动仅涉及代码格式调整,不包含任何功能或逻辑变更。 ## 关联的Issue - #3464 ## 测试 无功能变更,仅代码格式调整,未新增测试。 ## 文档更新 无。 ## 类型标签 - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:代码风格规范化 See merge request: cann/ops-math!6053 | 29 days ago | |
refactor: 统一 add/mul/pow/real_div/sub 算子代码风格 Co-authored-by: cai-chengchao<caichengchao1@h-partners.com> # message auto-generated for no-merge-commit merge: !6053 merge ccc_0929 into master refactor: 统一 add/mul/pow/real_div/sub 算子代码风格 Created-by: cai-chengchao Commit-by: cai-chengchao Merged-by: cann-robot Description: ## 描述 对 add、mul、pow、real_div、sub 五个数学算子的代码进行统一的代码风格规范化(clang-format),包括: - 统一命名空间/类的括号风格与缩进 - 统一指针、引用修饰符位置(如 const char* const) - 规范函数声明与调用的换行对齐 - 统一注释风格及文件结尾换行符 - 修正 real_div 配置注释中的拼写错误(build-in → built-in) 本次改动仅涉及代码格式调整,不包含任何功能或逻辑变更。 ## 关联的Issue - #3464 ## 测试 无功能变更,仅代码格式调整,未新增测试。 ## 文档更新 无。 ## 类型标签 - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:代码风格规范化 See merge request: cann/ops-math!6053 | 29 days ago | |
fix(pow/sub): A2/A3补充out dtype白名单校验(#3964) Co-authored-by: doufloat<baijinxiang@huawei.com> # message auto-generated for no-merge-commit merge: !6800 merge fix/pow-out-dtype-whitelist into master fix(pow/sub): A2/A3补充out dtype白名单校验(#3964) Created-by: doufloat Commit-by: doufloat Merged-by: cann-robot Description: ## 描述 **问题** aclnnPowScalarTensor、aclnnPowTensorScalar、aclnnPowTensorTensor、aclnnSubs 和 aclnnSub 在 out 传入资料输出支持列表之外的 dtype(如 DT_INT4)时,A2/A3 会继续进入 Build/Cast 并返回内部错误码,而不是第一段接口约定的 161002。 **根因** 输出类型此前只经过可转换关系检查。部分非法 dtype 能被 CanCast 放行,随后在 Build/Cast 阶段失败,导致参数非法被降级为内部错误。 **方案** - 新增 out dtype 白名单校验,但仅在 NpuArch::DAV_2201(A2/A3)启用。 - aclnn_pow.cpp 和 aclnn_pow_tensor_tensor.cpp 覆盖 aclnnPowScalarTensor、aclnnPowTensorScalar、aclnnPowTensorTensor 三个 out-of-place 入口。 - aclnn_sub.cpp 在 CheckParamsScalar 和 CheckParams 中覆盖 aclnnSubs、aclnnSub;原地接口继续沿用原有输入别名校验。 - A5 走 DAV_3510 路径,不启用新增白名单,保持原有 CanCast 及后续 Build 行为不变。 - A2/A3 合法 out dtype 路径不变,仅将非法 dtype 的返回码修正为 ACLNN_ERR_PARAM_INVALID(161002)。 ## 关联的Issue https://gitcode.com/cann/ops-math/issues/3964 ## 测试 **A2:Ascend 910B3,CANN 9.2.0** - math_op_api_ut:158/158 PASS,包含新增 A2 非法 out 校验和 A5 不拦截回归用例。 - 当前补丁真机矩阵:PowScalarTensor/PowTensorScalar/PowTensorTensor/Subs/Sub 的 INT4/UINT1/HIFLOAT8/FLOAT8_E5M2/COMPLEX32 均返回 161002。 - 合法路径未被误拦截:三个 Pow 入口的 INT64 -> UINT16/UINT32/UINT64 均返回 0;FLOAT/FLOAT16/DOUBLE/BF16/COMPLEX64/COMPLEX128 输出在对应可转换输入下保持 0。 **A5:Ascend 950PR,CANN 9.2.0** - math_op_api_ut:158/158 PASS,包含 Ascend950_out_dtype_check_not_applied 回归用例。 - 当前补丁真机矩阵与基线一致: | out dtype | PowScalarTensor | PowTensorScalar / PowTensorTensor / Subs / Sub | | --- | --- | --- | | INT4 / UINT1 / COMPLEX32 | 561000 | 561103 | | HIFLOAT8 / FLOAT8_E5M2 | 0 | 0 | - 新增 A2/A3 out 白名单在 A5 未生效;合法 INT64 -> UINT16/UINT32/UINT64 仍返回 0。 **实现路径说明** A3 与 A2 均走 DAV_2201 路径,共用同一实现。本轮完成 A2 和 A5 真机验证。 ## 文档更新 不涉及。 ## 类型标签 - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他(请说明) See merge request: cann/ops-math!6800 | 10 days ago |