| Files | Last commit | Last update |
|---|---|---|
fix: E*9****内部错误码整改为正式语义码并保留内部异常EZ9999上报 Co-authored-by: chenyifeng<chenyifeng27@h-partners.com> # message auto-generated for no-merge-commit merge: !6606 merge fix_errorNum_1021 into master fix: E*9****内部错误码整改为正式语义码并保留内部异常EZ9999上报 Created-by: chen_0715 Commit-by: chenyifeng Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 本次 PR 整改以下 43 个算子中非法使用的内部错误码(E*9****),使其符合错误码使用规范: - cholesky / complex / cross / cummax / cummin / cumprod / get_shape / histogram_v2 / is_finite / is_inf - kl_div_v2 / lin_space / log_add_exp / non_finite_check / pdist / polar / pows / radix_top_k - reduce_log_sum / reduce_log_sum_exp / reduce_max / reduce_mean / reduce_mean_with_count / reduce_min - reduce_nansum / reduce_std_with_mean / rfft1_d / search_sorted / signbit / sin / sinc / sinkhorn / topk - affine_grid / amp_update_scale / angle_v2 / arg_max_v2 / arg_min / arg_min_with_value / atan2 / bessel_i1e / cdist_grad - conversion/tril 改动原因:上述算子 op_host / op_api / op_graph 源码中存在裸 OP_LOGE (EZ9999 兜底上报)、 OP_CHECK_NULL_WITH_CONTEXT / OP_CHECK_NOTNULL (EZ9999 上报)等不符合错误码使用规范的上报路径,需按失败原因分类整改为正式语义码或内部透传。 采取的方法: - op_host 参数/输入校验类(shape / dtype / format / attr 值域等)裸 OP_LOGE → 正式语义宏(EZ0004 / EZ0008–EZ0038) - op_host 内部 API 失败类(平台能力查询、tiling API 失败等)→ OP_LOGE_WITHOUT_REPORT 透传,去掉 EZ9999 上报、保留日志 - OP_CHECK_NULL_WITH_CONTEXT (EZ9999)→ 显式空指针检查 + 正式码宏 - op_api OP_CHECK_NOTNULL (EZ9999)→ 显式检查 + OP_LOGE_WITHOUT_REPORT(ACLNN_ERR_INNER_NULLPTR) + 返回公共错误码 - op_api OP_LOGE(ACLNN_ERR_INNER_* / RUNTIME_ERROR) (561xxx / 361xxx)→ OP_LOGE_WITHOUT_REPORT ;正式参数码 ACLNN_ERR_PARAM_* (161xxx)保留 - 删除 CREATE_EXECUTOR 之后不可达的空指针死检查( CHECK_RET(executor.get()!=nullptr, ACLNN_ERR_INNER_CREATE_EXECUTOR) ,40 处) - op_graph(histogram_v2 / reduce_mean 融合 pass)E9 上报 → 正式码或透传 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> https://gitcode.com/cann/ops-math/issues/3977 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> - 43 算子 op_host / op_api / op_graph 全量编译通过,exit 0(910b + 950/arch35) - 本地增加ut测试130 用例全量通过(910b 83 + 950 47),日志级验证触发 78 次正式 EZ 错误码上报,覆盖 14 个正式错误码 - 原版 math_op_host_ut 300 用例全量通过,无回归 - 静态复扫:范围内 E*9**** 正式上报清零(残留均为 CHECK_RET 返回公共码 / 动态 return 等允许项) - 附:适配 CANN 9.3.0 atvoss 库 tiling key 编码变化,更新 reduce_max / reduce_mean_with_count 测试的 9 处 expectedTilingKey (官方 master 在 9.3.0 下同样失败,非本 PR 引入) ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!6606 | 15 days ago | |
docs(atan2): 对齐象限公式与实现流程 Co-authored-by: little_apple_12<020716ljh@gmail.com> # message auto-generated for no-merge-commit merge: !6244 merge fix/ops-math-2026-10-04-002 into master docs(atan2): 对齐象限公式与实现流程 Created-by: little_apple_12 Commit-by: little_apple_12 Merged-by: cann-robot Description: ## 描述 aclnnAtan2 的文档和公开头文件原先将双参数运算写成 tan^{-1}(self_i/other_i),丢失了 atan2 的象限语义;头文件流程图还把实际的 l0op::Atan2 标成了 l0op::Atan。根因是公式和流程图未与双输入实现保持一致。 本 PR 仅修改文档和公开头文件注释,不改变 API、kernel、运行时逻辑或测试逻辑。 逐 hunk 对账: 1. math/atan2/docs/aclnnAtan2&aclnnInplaceAtan2.md 公式 hunk:将功能说明改为 atan2(self_i, other_i)。 2. math/atan2/op_api/aclnn_atan2.h 第一段接口公式 hunk:同步改为双参数 atan2。 3. 同一头文件第二段接口公式与流程图 hunk:公式改为 atan2;流程图补齐 Self、Other 两路 l0op::Contiguous/l0op::Cast,汇入 l0op::Atan2,再经过输出 l0op::Cast/l0op::ViewCopy。 4. 同一头文件原位接口公式 hunk:同步改为双参数 atan2。 除上述四个 diff hunk 外无其他改动。 ## 关联的Issue 关联 issue #3401 ## 测试 静态文档回归、流程图/实现对账与空白检查均已实际执行: bash python3 - <<'PY' from pathlib import Path doc = Path("math/atan2/docs/aclnnAtan2&aclnnInplaceAtan2.md").read_text() header = Path("math/atan2/op_api/aclnn_atan2.h").read_text() impl = Path("math/atan2/op_api/aclnn_atan2.cpp").read_text() old = "tan^{-1}(self_{i}/other_{i})" new = "atan2(self_{i}, other_{i})" assert old not in doc + header assert doc.count(new) == 1, doc.count(new) assert header.count(new) == 3, header.count(new) for node in ( "A1[(Self)] --> B1([l0op::Contiguous]) --> C1([l0op::Cast]) --> D([l0op::Atan2])", "A2[(Other)] --> B2([l0op::Contiguous]) --> C2([l0op::Cast]) --> D([l0op::Atan2])", "D --> E([l0op::Cast]) --> F([l0op::ViewCopy]) --> G[(Out)]", ): assert node in header, node assert "l0op::Atan])" not in header assert "l0op::Atan2(selfCast, otherCast" in impl print(f"old_formula_count=0 new_formula_count={doc.count(new) + header.count(new)}") print("flowchart_inputs=Self,Other") print("flowchart_op=l0op::Atan2") print("flowchart_output=l0op::Cast->l0op::ViewCopy") print("implementation_call=l0op::Atan2(selfCast, otherCast, uniqueExecutor.get())") PY git diff --check printf '%s\n' 'static_documentation_check=PASS' grep -nF 'out_{i}=atan2(self_{i}, other_{i})' 'math/atan2/docs/aclnnAtan2&aclnnInplaceAtan2.md' math/atan2/op_api/aclnn_atan2.h grep -nF 'l0op::Atan2' math/atan2/op_api/aclnn_atan2.h math/atan2/op_api/aclnn_atan2.cpp 真实输出: text old_formula_count=0 new_formula_count=4 flowchart_inputs=Self,Other flowchart_op=l0op::Atan2 flowchart_output=l0op::Cast->l0op::ViewCopy implementation_call=l0op::Atan2(selfCast, otherCast, uniqueExecutor.get()) static_documentation_check=PASS math/atan2/docs/aclnnAtan2&aclnnInplaceAtan2.md:33: out_{i}=atan2(self_{i}, other_{i}) math/atan2/op_api/aclnn_atan2.h:25: * out_{i}=atan2(self_{i}, other_{i}) math/atan2/op_api/aclnn_atan2.h:43: * out_{i}=atan2(self_{i}, other_{i}) math/atan2/op_api/aclnn_atan2.h:65: * out_{i}=atan2(self_{i}, other_{i}) math/atan2/op_api/aclnn_atan2.h:48: A1[(Self)] --> B1([l0op::Contiguous]) --> C1([l0op::Cast]) --> D([l0op::Atan2]) math/atan2/op_api/aclnn_atan2.h:49: A2[(Other)] --> B2([l0op::Contiguous]) --> C2([l0op::Cast]) --> D([l0op::Atan2]) math/atan2/op_api/aclnn_atan2.cpp:151: auto kernelOut = l0op::Atan2(selfCast, otherCast, uniqueExecutor.get()); 另执行 ctest --test-dir math/atan2/tests -N,真实输出为: text Internal ctest changing into directory: /home/developer/inst/little_apple/cann-work/forks/little_apple/wt/ops-math-2026-10-04-002/math/atan2/tests Test project /home/developer/inst/little_apple/cann-work/forks/little_apple/wt/ops-math-2026-10-04-002/math/atan2/tests Total Tests: 0 当前 PR 只改文档/注释,当前环境未安装 CANN Toolkit,因此未声称运行编译或 NPU UT。 ## 文档更新 有。更新 math/atan2/docs/aclnnAtan2&aclnnInplaceAtan2.md 与 math/atan2/op_api/aclnn_atan2.h 的公式和流程图;无接口或实现代码更新。 ## 类型标签 - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: ### 当前PR是否有AI参与: [x] 是 __1. Agent平台信息: Codex CLI 0.153.4 __2. 模型信息: gpt-5.6-luna __3. Prompt摘要: 围绕已有 issue #3401 复现 aclnnAtan2 公式的象限语义缺失,对照 l0op::Atan2 实现完成最小文档修复,并进行逐 hunk 对账、静态回归和提交闸门核验。 ### 希望检视人员了解: 1. 人工参与说明:人工提供 issue #3401、候选证据、目标仓库/分支、环境信息和提交授权;代理在专用 worktree 独立复现旧公式与象限差异,逐项核对四处公式、流程图和 aclnn_atan2.cpp 调用,实施修复并实际运行静态回归、ctest -N 和 git diff --check。未运行 CANN 算子或 NPU 测试。 See merge request: cann/ops-math!6244 | 29 days ago | |
迁移增加atan2 Co-authored-by: Boyang_Zhang<zhangboyang15@h-partners.com> # message auto-generated for no-merge-commit merge: !2605 merge atan2_mig into master 迁移增加atan2 Created-by: BoyangZhang Commit-by: Boyang_Zhang Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 迁移atan2算子至ops-math ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> https://gitcode.com/cann/ops-math/issues/1681 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!2605 | 5 months ago | |
迁移增加atan2 Co-authored-by: Boyang_Zhang<zhangboyang15@h-partners.com> # message auto-generated for no-merge-commit merge: !2605 merge atan2_mig into master 迁移增加atan2 Created-by: BoyangZhang Commit-by: Boyang_Zhang Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 迁移atan2算子至ops-math ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> https://gitcode.com/cann/ops-math/issues/1681 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!2605 | 5 months ago |
| Files | Last commit | Last update |
|---|---|---|
| 15 days ago | ||
| 29 days ago | ||
| 5 months ago | ||
| 5 months ago |