| Files | Last commit | Last update |
|---|---|---|
【社区任务】feat(mod): add int16 same/mixed-dtype support + large-quotient numerical stability enhancement (A2/A3) Co-authored-by: Admin05210<2916838196@qq.com> # message auto-generated for no-merge-commit merge: !3788 merge fmod-mod-enhance-v7 into master 【社区任务】feat(mod): add int16 same/mixed-dtype support + large-quotient numerical stability enhancement (A2/A3) Created-by: Admin05210 Commit-by: Admin05210 Merged-by: cann-robot Description: ## 描述 本 PR 是对已有官方 Mod 算子(experimental/math/mod,!3240 引入)的**增强**,非新增算子、非替换。关联需求 issue:#2114。 > 本 PR 取代 #3701(内容一致,重建以刷新流水线)。#3701 的 codecheck_precommit 失败经排查为上游 scripts/oat_check.sh 在 pre-commit 并行分批下共享非唯一 PlainReport_*.txt 的竞态(OAT 实际 0 violation),与本 PR 代码无关。 ### 新增能力 1. **INT16 同 dtype + 混合 dtype 支持**:补齐 int16⊗int16→int16 的 tensor-tensor 计算,以及 int16 与 bf16/fp16/fp32 的混合 dtype 组合。 2. **大商场景数值稳定性增强**:浮点截断求模(trunc-mod)在 |self/other| 较大时的精度隐患修复,仅在检测到相应条件时启用增强路径,其余场景保持原 Div -> Trunc -> Mul -> Sub 行为逐位不变。 ### 影响范围 - 新增能力**仅在 Atlas A2 训练系列(Ascend910B)与 Atlas A3 系列(Ascend910_93)生效**;其余平台(Ascend310P/Ascend910/950 等)行为不变。 - 现有 BF16/FLOAT16/FLOAT32/INT32/DOUBLE/INT64/INT8/UINT8 的既有支持范围与行为不受影响。 - **零删除**:diff 仅修改既有文件(op_api/op_host/op_kernel 实现 + README/docs)+ 新增 op_kernel 拆分头文件,无删除文件;op_kernel/mod.cpp(kernel 入口)与全部 tests/ut/* 逻辑保持等价。 ### 验证状态(CANN 9.0.0 / Atlas 910B) - ✅ 编译:build.sh --pkg --experimental --soc=ascend910b --ops=mod,rc=0,20/20 device kernel 二进制(.o)全部编出。 - ✅ 精度:官方 AscendOpTest 代表性用例 FmodTensor / FmodScalar 全部通过(覆盖 fp32/fp16/bf16、int16 同 dtype / 混合 dtype、大商数值稳定路径、大 shape)。 --- ### 追加 general 广播性能修复 (本版 vs #3776) 前序版本对**非可融合广播几何**(混合 dtype / 中间轴 / 高维)在 A2/A3 走 in-kernel 通用 broadcast, 高维几何 tile 退化到近逐元素, 在泛化测试矩阵上出现数百倍劣化。本版在 L0 路由层改为对非可融合几何走 BroadcastTo 物化(对标参考实现), kernel 见连续输入。 - 数值**逐字节不变**(物化复刻 in-kernel stride 广播语义; 含 NaN/Inf/大商)。 - **kernel .o 全部不变**, 仅 op_api/mod.cpp 一个 L0 文件改动。 - A2/A3 (arch22) 守卫, 上游能力/AICPU/通用广播路全保留 (0-deletion / additive)。 关联需求 issue #2114。 > 本 PR 取代 #3786(内容逐字节一致、同 git tree),重建以刷新 codecheck_precommit 的 oat-check 并发批次竞态(infra flake,0 违规:日志全 All checks passed + PlainReport not found/code 127,与代码无关)。codecheck / clang-format / SCA / UT 等在 #3786 均已 SUCCESS。 See merge request: cann/ops-math!3788 | 2 months ago | |
refactor: 迁移 experimental 公共头文件引用到 math 后缀 Co-authored-by: clinglai0517<laichangling@huawei.com> # message auto-generated for no-merge-commit merge: !6346 merge refactor/math-prefix-common-headers-1014 into master refactor: 迁移 experimental 公共头文件引用到 math 后缀 Created-by: clinglai0517 Commit-by: clinglai0517 Merged-by: cann-robot Description: ## 描述 继续将 ops-math 的公共 op_api 头文件引用迁移到带 _math 后缀的名称,减少多个算子仓库集成时同名头文件误引用的风险。 本次更新 36 个 experimental 文件中的 42 处引用: - level2_base.h → level2_base_math.h:14 处。 - level2_base_caculation.h → level2_base_caculation_math.h:4 处。 - op_api_def.h → op_api_def_math.h:24 处。 29 个文件附带仓库要求的 clang-format、空白或 EOF 调整,7 个文件仅替换 include;合计新增 418 行、删除 469 行。C++ token 对比在映射头文件名称并忽略注释、空白后保持一致。 现有兼容转发头及 classification 元数据保留;本批继续迁移源码引用,最终软件包的同名头文件冲突仍待后续处理。 ## 关联的Issue 延续公共头文件增加 math 后缀的分阶段迁移:[cann/ops-math#3243](https://gitcode.com/cann/ops-math/issues/3243)。 ## 测试 以下容器结果为该次 37 文件验证记录。 - git diff --check:通过,保留原有 CRLF 文件行尾。 - pre-commit:全部适用 hook 通过,包含 clang-format 18.1.8。 - 显式 OAT:完整扫描 37 文件,全部通过。 - 暂缓 Tile 后,仓库 scripts/ci/gen_ci_cmd.py 按实际 37 文件清单生成并执行 experimental op_api UT,指定 ascend910b:242 用例、24 个 suite 全部通过,未设置 GTEST_FILTER;包含 cross BF16 用例。 - 按实际 37 文件清单生成并执行 experimental --pkg 命令:142 条 kernel 编译任务通过,生产动态库链接及完整出包成功,退出码 0;产出 cann-ops-math-experimental_linux-aarch64.run(4,763,686 字节)。 ## 文档更新 不涉及用户文档更新。 ## 类型标签 - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:公共头文件引用重构及格式规范化。 See merge request: cann/ops-math!6346 | 27 days ago | |
【社区任务】feat(mod): add int16 same/mixed-dtype support + large-quotient numerical stability enhancement (A2/A3) Co-authored-by: Admin05210<2916838196@qq.com> # message auto-generated for no-merge-commit merge: !3788 merge fmod-mod-enhance-v7 into master 【社区任务】feat(mod): add int16 same/mixed-dtype support + large-quotient numerical stability enhancement (A2/A3) Created-by: Admin05210 Commit-by: Admin05210 Merged-by: cann-robot Description: ## 描述 本 PR 是对已有官方 Mod 算子(experimental/math/mod,!3240 引入)的**增强**,非新增算子、非替换。关联需求 issue:#2114。 > 本 PR 取代 #3701(内容一致,重建以刷新流水线)。#3701 的 codecheck_precommit 失败经排查为上游 scripts/oat_check.sh 在 pre-commit 并行分批下共享非唯一 PlainReport_*.txt 的竞态(OAT 实际 0 violation),与本 PR 代码无关。 ### 新增能力 1. **INT16 同 dtype + 混合 dtype 支持**:补齐 int16⊗int16→int16 的 tensor-tensor 计算,以及 int16 与 bf16/fp16/fp32 的混合 dtype 组合。 2. **大商场景数值稳定性增强**:浮点截断求模(trunc-mod)在 |self/other| 较大时的精度隐患修复,仅在检测到相应条件时启用增强路径,其余场景保持原 Div -> Trunc -> Mul -> Sub 行为逐位不变。 ### 影响范围 - 新增能力**仅在 Atlas A2 训练系列(Ascend910B)与 Atlas A3 系列(Ascend910_93)生效**;其余平台(Ascend310P/Ascend910/950 等)行为不变。 - 现有 BF16/FLOAT16/FLOAT32/INT32/DOUBLE/INT64/INT8/UINT8 的既有支持范围与行为不受影响。 - **零删除**:diff 仅修改既有文件(op_api/op_host/op_kernel 实现 + README/docs)+ 新增 op_kernel 拆分头文件,无删除文件;op_kernel/mod.cpp(kernel 入口)与全部 tests/ut/* 逻辑保持等价。 ### 验证状态(CANN 9.0.0 / Atlas 910B) - ✅ 编译:build.sh --pkg --experimental --soc=ascend910b --ops=mod,rc=0,20/20 device kernel 二进制(.o)全部编出。 - ✅ 精度:官方 AscendOpTest 代表性用例 FmodTensor / FmodScalar 全部通过(覆盖 fp32/fp16/bf16、int16 同 dtype / 混合 dtype、大商数值稳定路径、大 shape)。 --- ### 追加 general 广播性能修复 (本版 vs #3776) 前序版本对**非可融合广播几何**(混合 dtype / 中间轴 / 高维)在 A2/A3 走 in-kernel 通用 broadcast, 高维几何 tile 退化到近逐元素, 在泛化测试矩阵上出现数百倍劣化。本版在 L0 路由层改为对非可融合几何走 BroadcastTo 物化(对标参考实现), kernel 见连续输入。 - 数值**逐字节不变**(物化复刻 in-kernel stride 广播语义; 含 NaN/Inf/大商)。 - **kernel .o 全部不变**, 仅 op_api/mod.cpp 一个 L0 文件改动。 - A2/A3 (arch22) 守卫, 上游能力/AICPU/通用广播路全保留 (0-deletion / additive)。 关联需求 issue #2114。 > 本 PR 取代 #3786(内容逐字节一致、同 git tree),重建以刷新 codecheck_precommit 的 oat-check 并发批次竞态(infra flake,0 违规:日志全 All checks passed + PlainReport not found/code 127,与代码无关)。codecheck / clang-format / SCA / UT 等在 #3786 均已 SUCCESS。 See merge request: cann/ops-math!3788 | 2 months ago | |
【社区任务】feat(mod): add int16 same/mixed-dtype support + large-quotient numerical stability enhancement (A2/A3) Co-authored-by: Admin05210<2916838196@qq.com> # message auto-generated for no-merge-commit merge: !3788 merge fmod-mod-enhance-v7 into master 【社区任务】feat(mod): add int16 same/mixed-dtype support + large-quotient numerical stability enhancement (A2/A3) Created-by: Admin05210 Commit-by: Admin05210 Merged-by: cann-robot Description: ## 描述 本 PR 是对已有官方 Mod 算子(experimental/math/mod,!3240 引入)的**增强**,非新增算子、非替换。关联需求 issue:#2114。 > 本 PR 取代 #3701(内容一致,重建以刷新流水线)。#3701 的 codecheck_precommit 失败经排查为上游 scripts/oat_check.sh 在 pre-commit 并行分批下共享非唯一 PlainReport_*.txt 的竞态(OAT 实际 0 violation),与本 PR 代码无关。 ### 新增能力 1. **INT16 同 dtype + 混合 dtype 支持**:补齐 int16⊗int16→int16 的 tensor-tensor 计算,以及 int16 与 bf16/fp16/fp32 的混合 dtype 组合。 2. **大商场景数值稳定性增强**:浮点截断求模(trunc-mod)在 |self/other| 较大时的精度隐患修复,仅在检测到相应条件时启用增强路径,其余场景保持原 Div -> Trunc -> Mul -> Sub 行为逐位不变。 ### 影响范围 - 新增能力**仅在 Atlas A2 训练系列(Ascend910B)与 Atlas A3 系列(Ascend910_93)生效**;其余平台(Ascend310P/Ascend910/950 等)行为不变。 - 现有 BF16/FLOAT16/FLOAT32/INT32/DOUBLE/INT64/INT8/UINT8 的既有支持范围与行为不受影响。 - **零删除**:diff 仅修改既有文件(op_api/op_host/op_kernel 实现 + README/docs)+ 新增 op_kernel 拆分头文件,无删除文件;op_kernel/mod.cpp(kernel 入口)与全部 tests/ut/* 逻辑保持等价。 ### 验证状态(CANN 9.0.0 / Atlas 910B) - ✅ 编译:build.sh --pkg --experimental --soc=ascend910b --ops=mod,rc=0,20/20 device kernel 二进制(.o)全部编出。 - ✅ 精度:官方 AscendOpTest 代表性用例 FmodTensor / FmodScalar 全部通过(覆盖 fp32/fp16/bf16、int16 同 dtype / 混合 dtype、大商数值稳定路径、大 shape)。 --- ### 追加 general 广播性能修复 (本版 vs #3776) 前序版本对**非可融合广播几何**(混合 dtype / 中间轴 / 高维)在 A2/A3 走 in-kernel 通用 broadcast, 高维几何 tile 退化到近逐元素, 在泛化测试矩阵上出现数百倍劣化。本版在 L0 路由层改为对非可融合几何走 BroadcastTo 物化(对标参考实现), kernel 见连续输入。 - 数值**逐字节不变**(物化复刻 in-kernel stride 广播语义; 含 NaN/Inf/大商)。 - **kernel .o 全部不变**, 仅 op_api/mod.cpp 一个 L0 文件改动。 - A2/A3 (arch22) 守卫, 上游能力/AICPU/通用广播路全保留 (0-deletion / additive)。 关联需求 issue #2114。 > 本 PR 取代 #3786(内容逐字节一致、同 git tree),重建以刷新 codecheck_precommit 的 oat-check 并发批次竞态(infra flake,0 违规:日志全 All checks passed + PlainReport not found/code 127,与代码无关)。codecheck / clang-format / SCA / UT 等在 #3786 均已 SUCCESS。 See merge request: cann/ops-math!3788 | 2 months ago | |
【社区任务】feat(mod): add int16 same/mixed-dtype support + large-quotient numerical stability enhancement (A2/A3) Co-authored-by: Admin05210<2916838196@qq.com> # message auto-generated for no-merge-commit merge: !3788 merge fmod-mod-enhance-v7 into master 【社区任务】feat(mod): add int16 same/mixed-dtype support + large-quotient numerical stability enhancement (A2/A3) Created-by: Admin05210 Commit-by: Admin05210 Merged-by: cann-robot Description: ## 描述 本 PR 是对已有官方 Mod 算子(experimental/math/mod,!3240 引入)的**增强**,非新增算子、非替换。关联需求 issue:#2114。 > 本 PR 取代 #3701(内容一致,重建以刷新流水线)。#3701 的 codecheck_precommit 失败经排查为上游 scripts/oat_check.sh 在 pre-commit 并行分批下共享非唯一 PlainReport_*.txt 的竞态(OAT 实际 0 violation),与本 PR 代码无关。 ### 新增能力 1. **INT16 同 dtype + 混合 dtype 支持**:补齐 int16⊗int16→int16 的 tensor-tensor 计算,以及 int16 与 bf16/fp16/fp32 的混合 dtype 组合。 2. **大商场景数值稳定性增强**:浮点截断求模(trunc-mod)在 |self/other| 较大时的精度隐患修复,仅在检测到相应条件时启用增强路径,其余场景保持原 Div -> Trunc -> Mul -> Sub 行为逐位不变。 ### 影响范围 - 新增能力**仅在 Atlas A2 训练系列(Ascend910B)与 Atlas A3 系列(Ascend910_93)生效**;其余平台(Ascend310P/Ascend910/950 等)行为不变。 - 现有 BF16/FLOAT16/FLOAT32/INT32/DOUBLE/INT64/INT8/UINT8 的既有支持范围与行为不受影响。 - **零删除**:diff 仅修改既有文件(op_api/op_host/op_kernel 实现 + README/docs)+ 新增 op_kernel 拆分头文件,无删除文件;op_kernel/mod.cpp(kernel 入口)与全部 tests/ut/* 逻辑保持等价。 ### 验证状态(CANN 9.0.0 / Atlas 910B) - ✅ 编译:build.sh --pkg --experimental --soc=ascend910b --ops=mod,rc=0,20/20 device kernel 二进制(.o)全部编出。 - ✅ 精度:官方 AscendOpTest 代表性用例 FmodTensor / FmodScalar 全部通过(覆盖 fp32/fp16/bf16、int16 同 dtype / 混合 dtype、大商数值稳定路径、大 shape)。 --- ### 追加 general 广播性能修复 (本版 vs #3776) 前序版本对**非可融合广播几何**(混合 dtype / 中间轴 / 高维)在 A2/A3 走 in-kernel 通用 broadcast, 高维几何 tile 退化到近逐元素, 在泛化测试矩阵上出现数百倍劣化。本版在 L0 路由层改为对非可融合几何走 BroadcastTo 物化(对标参考实现), kernel 见连续输入。 - 数值**逐字节不变**(物化复刻 in-kernel stride 广播语义; 含 NaN/Inf/大商)。 - **kernel .o 全部不变**, 仅 op_api/mod.cpp 一个 L0 文件改动。 - A2/A3 (arch22) 守卫, 上游能力/AICPU/通用广播路全保留 (0-deletion / additive)。 关联需求 issue #2114。 > 本 PR 取代 #3786(内容逐字节一致、同 git tree),重建以刷新 codecheck_precommit 的 oat-check 并发批次竞态(infra flake,0 违规:日志全 All checks passed + PlainReport not found/code 127,与代码无关)。codecheck / clang-format / SCA / UT 等在 #3786 均已 SUCCESS。 See merge request: cann/ops-math!3788 | 2 months ago |
| Files | Last commit | Last update |
|---|---|---|
| 2 months ago | ||
| 27 days ago | ||
| 2 months ago | ||
| 2 months ago | ||
| 2 months ago |