| Files | Last commit | Last update |
|---|---|---|
refactor: 迁移 arch35 算子 Reg API、修正拼写并规范化日志文案 Co-authored-by: esok11<yangsifa@huawei.com> # message auto-generated for no-merge-commit merge: !5135 merge f082601 into master refactor: 迁移 arch35 算子 Reg API、修正拼写并规范化日志文案 Created-by: esok11 Commit-by: esok11 Merged-by: cann-robot Description: ## 描述 对 arch35 架构下多个算子进行 AscendC Reg API 迁移、命名拼写修正及日志文案规范化,共 46 个文件,涉及 conversion/ 与 math/ 下 15 个算子。 主要改动: - AscendC Reg API 迁移(arch35 kernel 代码,21 个 .h 文件): - 地址空间修饰符: __local_mem__ → __ubuf__ - Reg 数据搬运 API 细化:加载用 AscendC::Reg::LoadAlign(原 Reg::DataCopy 加载语义),存储用 AscendC::Reg::StoreAlign(原 Reg::DataCopy 存储语义) - 掩码操作 API 重命名:AscendC::Reg::MaskNot → AscendC::Reg::Not、AscendC::Reg::MaskAnd → AscendC::Reg::And - 移除冗余 using AscendC::Reg::DataCopy; 声明 - 命名拼写修正(op_host/arch35,3 个文件): - 方法名 TilingForReleatedTranspose → TilingForRelatedTranspose(Releated→Related) - 成员变量 isReleatedTranspsoe_ → isRelatedTranspose_(Releated→Related, Transpsoe→Transpose) - 同步修改 confusion_transpose_d、depth_to_space 中对该方法的调用 - 日志清理(examples、op_host、op_api,22 个文件): - 失败路径日志级别 INFO → ERROR(Initialize ge failed、Run graph failed、Finalize ir graph session failed 等) - 文案语法修正:only support → only supports、is: %s and %s → are: %s and %s、expect %f → expected %f、multiples's → multiples' - tile 示例代码宏定义缩进格式化 ### 改动原因 配合 AscendC Reg API 演进,将 arch35 算子迁移至新的地址空间修饰符与 LoadAlign/StoreAlign/Not/And API;修正 transpose 相关命名中的拼写错误;统一日志级别与文案规范,提升日志可读性与问题定位效率。 ### 改动方法 - kernel 侧:逐文件替换 __local_mem__→__ubuf__、Reg::DataCopy(加载)→Reg::LoadAlign、Reg::DataCopy(存储)→Reg::StoreAlign、Reg::MaskNot→Reg::Not、Reg::MaskAnd→Reg::And,不改变控制流。 - host 侧:重命名 TilingForReleatedTranspose→TilingForRelatedTranspose、isReleatedTranspsoe_→isRelatedTranspose_,同步所有调用点。 - 日志:修改 printf/OP_LOGE/OP_LOGW/OP_LOGI 文案与级别字符串,不改变校验逻辑。 ## 关联的Issue - #2916 ## 测试 本 PR 为 API 迁移、命名修正与日志清理,通过已有测试用例(含 arch35 tiling UT 与 examples 二级冒烟)回归验证。 ## 文档更新 本 PR 未包含文档更新。 ## 类型标签 - [ ] Bug修复 - [ ] 新特性 - [x] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述:AscendC Reg API 迁移 + 命名拼写修正 + 日志规范化 See merge request: cann/ops-math!5135 | 2 months ago | |
迁移开源TF插件--math Co-authored-by: yaochen<yaochen15@huawei.com> # message auto-generated for no-merge-commit merge: !4308 merge transfer-math into master 迁移开源TF插件--math Created-by: nextyale Commit-by: yaochen Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:迁移TF插件 See merge request: cann/ops-math!4308 | 3 months ago | |
format: batch_to_space_nd 等算子代码格式化 Co-authored-by: zhanw_coding<zhanwang@huawei.com> # message auto-generated for no-merge-commit merge: !3822 merge fix-fmt into master format: batch_to_space_nd 等算子代码格式化 Created-by: zhanw_coding Commit-by: zhanw_coding Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> format: batch_to_space_nd 等算子代码格式化 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> https://gitcode.com/cann/ops-math/issues/2147 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:代码格式化 See merge request: cann/ops-math!3822 | 4 months ago | |
feat(infershape): 补齐 12 个算子 op_graph InferDataType 注册 Co-authored-by: yangjinhan<yangjinhan@huawei.com> # message auto-generated for no-merge-commit merge: !6644 merge feat/register-infer-datatype into master feat(infershape): 补齐 12 个算子 op_graph InferDataType 注册 Created-by: Ruyue1550 Commit-by: yangjinhan Merged-by: cann-robot Description: ## 描述 按 RT1.0 到 RT2.0 推导框架迁移方案第 1 步(补齐缺失的 InferDataType 注册,零行为变更)要求,为 12 个缺失 InferDataType 注册的算子新增 op_graph/*_graph_infer.cpp 注册文件。本次变更只新增文件、不修改任何存量代码,共 12 个文件、240 行。 ### 改动点 | # | 算子 | 新增文件 | 注册方式 | |---|------|---------|---------| | 1 | Pad | conversion/pad/op_graph/pad_graph_infer.cpp | InferDataTypeOutputSameAsInput | | 2 | PadV2 | conversion/pad_v2/op_graph/pad_v2_graph_infer.cpp | 同上 | | 3 | PadV3 | conversion/pad_v3/op_graph/pad_v3_graph_infer.cpp | 同上 | | 4 | PadV3Grad | conversion/pad_v3_grad/op_graph/pad_v3_grad_graph_infer.cpp | 同上 | | 5 | MirrorPad | conversion/mirror_pad/op_graph/mirror_pad_graph_infer.cpp | 同上 | | 6 | BroadcastTo | conversion/broadcast_to/op_graph/broadcast_to_graph_infer.cpp | 同上 | | 7 | Transpose | conversion/transpose/op_graph/transpose_graph_infer.cpp | 同上 | | 8 | Rint | math/rint/op_graph/rint_graph_infer.cpp | 同上 | | 9 | TruncateDiv | math/truncate_div/op_graph/truncate_div_graph_infer.cpp | 同上 | | 10 | Expand | math/expand/op_graph/expand_graph_infer.cpp | 同上 | | 11 | GetShape | math/get_shape/op_graph/get_shape_graph_infer.cpp | 专门推导,输出固定 INT32 | | 12 | HistogramFixedWidth | math/histogram_fixed_width/op_graph/histogram_fixed_width_graph_infer.cpp | 专门推导,输出固定 INT32 | ### 改动原因 1. 背景:RT2.0 V2 路径的 dtype 推导在未注册 InferDataType 时依赖 IR(proto/def 的 TensorType)符号映射兜底。以显式注册替代隐式兜底,使推导逻辑代码自明、不依赖 IR 声明的隐式行为,并为后续推导框架切换就位 op_graph 注册设施。 2. dtype 语义逐算子以 RT1.0 SetDataType 为基线核对(迁移原则:非算子语义变更): - 上述 #1-#10 共 10 个算子的 canndev RT1.0 实现均为 SetDataType(input_dtype)(取输入 x 的类型,const/非 const/未知 rank 各分支一致),输出 dtype 跟随输入,故注册仓内公共推导函数 InferDataTypeOutputSameAsInput,与本仓已有 Tile/Erfc/TruncateMod 注册同构; - GetShape、HistogramFixedWidth 的 RT1.0 实现硬编码 SetDataType(DT_INT32),输出为形状值/直方图计数,与输入 dtype 无关,故注册输出固定 INT32 的专门推导,与两者 proto/def 中 OUTPUT(y, TensorType({DT_INT32})) 声明一致。 3. 零行为变更:注册结果与 IR 符号推导兜底结果一致,不改变任何现网推导行为。 4. 构建零改动:op_graph/*.cpp 由 CMake GLOB_RECURSE 自动收集(cmake/func.cmake),无需修改 CMakeLists。 ## 关联的Issue https://gitcode.com/cann/ops-math/issues/4099 ## 测试 - 本地无 CANN 构建环境,未执行编译与 UT,请通过门禁验证(评论 compile 触发 CI) - 已完成静态核对:13 个注册的 dtype 语义与 canndev RT1.0 SetDataType 逐分支一致、与各算子 proto/def 输出声明一致、与本仓已有同款注册(tile/erfc/truncate_mod/circular_pad)代码风格一致 - UT dtype 断言用例(断言注册结果=兜底结果)可随检视意见补充 ## 文档更新 无需更新文档(纯推导注册代码,无接口与行为变化) ## 类型标签 - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!6644 | 17 days ago | |
feat: 新增 ascend960pr/ascend960dt 平台算子适配(14 个算子) Co-authored-by: esok11<yangsifa@huawei.com> # message auto-generated for no-merge-commit merge: !6157 merge f1008 into master feat: 新增 ascend960pr/ascend960dt 平台算子适配(14 个算子) Created-by: esok11 Commit-by: esok11 Merged-by: cann-robot Description: ## 描述 为 ascend960pr / ascend960dt 两个新增芯片形态适配算子,覆盖 conversion 与 math 目录下共 14 个算子;同时修正 addr 的 dtype 支持列表判断逻辑,并对个别文件做版权头/格式整理。 ### 改动原因 ascend960pr / ascend960dt 为新增芯片形态,现有算子需补齐平台注册、编译单元与二进制配置后,才能在新平台上被算子信息库发现、编译并选择正确的 kernel 二进制。 ### 改动方法 1. **算子信息库注册**( *_def.cpp):新增 this->AICore().AddConfig("ascend960pr", ...) 与 AddConfig("ascend960dt", ...) - conversion:assign、dynamic_partition、masked_fill、mem_set、tensor_move、tril、triu - math:addr、asin、eye、mod、sinc、truncate_div、truncate_mod 2. **编译配置**(CMakeLists.txt):在 SUPPORT_COMPUTE_UNIT / COMPUTE_UNIT 中追加 ascend960pr、ascend960dt,并在 SUPPORT_TILING_DIR / TILING_DIR 中追加对应的 arch35(tiling 目录沿用 arch35) 3. **二进制配置**:为每个算子新增 op_host/config/ascend960pr/ 与 op_host/config/ascend960dt/ 目录,包含 <op>_binary.json 与 <op>_simplified_key.ini 4. **addr dtype 判断修正**(math/addr/op_api/aclnn_addr.cpp):GetDtypeSupportList() 的判断由区间判断 >= ASCEND910B && <= ASCEND910E 改为显式判断 == ASCEND910B || == ASCEND910_93 || IsRegBase(),使 reg-base 平台复用 910B dtype 支持列表 5. **格式整理**:conversion/mem_set_v2/op_host/mem_set_v2_def.cpp、math/adds/op_host/adds_def.cpp、math/adds/CMakeLists.txt 仅做版权头/空行/行尾换行等整理 ## 关联的Issue - https://gitcode.com/cann/ops-math/issues/3440 ## 测试 本 PR 未包含测试代码改动;适配涉及算子信息库、编译配置与二进制配置,需在 ascend960pr / ascend960dt 平台补充二级冒烟与算子泛化验证。 ## 文档更新 无。 ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!6157 | 1 month ago | |
refactor: 迁移 arch35 算子 Reg API、修正拼写并规范化日志文案 Co-authored-by: esok11<yangsifa@huawei.com> # message auto-generated for no-merge-commit merge: !5135 merge f082601 into master refactor: 迁移 arch35 算子 Reg API、修正拼写并规范化日志文案 Created-by: esok11 Commit-by: esok11 Merged-by: cann-robot Description: ## 描述 对 arch35 架构下多个算子进行 AscendC Reg API 迁移、命名拼写修正及日志文案规范化,共 46 个文件,涉及 conversion/ 与 math/ 下 15 个算子。 主要改动: - AscendC Reg API 迁移(arch35 kernel 代码,21 个 .h 文件): - 地址空间修饰符: __local_mem__ → __ubuf__ - Reg 数据搬运 API 细化:加载用 AscendC::Reg::LoadAlign(原 Reg::DataCopy 加载语义),存储用 AscendC::Reg::StoreAlign(原 Reg::DataCopy 存储语义) - 掩码操作 API 重命名:AscendC::Reg::MaskNot → AscendC::Reg::Not、AscendC::Reg::MaskAnd → AscendC::Reg::And - 移除冗余 using AscendC::Reg::DataCopy; 声明 - 命名拼写修正(op_host/arch35,3 个文件): - 方法名 TilingForReleatedTranspose → TilingForRelatedTranspose(Releated→Related) - 成员变量 isReleatedTranspsoe_ → isRelatedTranspose_(Releated→Related, Transpsoe→Transpose) - 同步修改 confusion_transpose_d、depth_to_space 中对该方法的调用 - 日志清理(examples、op_host、op_api,22 个文件): - 失败路径日志级别 INFO → ERROR(Initialize ge failed、Run graph failed、Finalize ir graph session failed 等) - 文案语法修正:only support → only supports、is: %s and %s → are: %s and %s、expect %f → expected %f、multiples's → multiples' - tile 示例代码宏定义缩进格式化 ### 改动原因 配合 AscendC Reg API 演进,将 arch35 算子迁移至新的地址空间修饰符与 LoadAlign/StoreAlign/Not/And API;修正 transpose 相关命名中的拼写错误;统一日志级别与文案规范,提升日志可读性与问题定位效率。 ### 改动方法 - kernel 侧:逐文件替换 __local_mem__→__ubuf__、Reg::DataCopy(加载)→Reg::LoadAlign、Reg::DataCopy(存储)→Reg::StoreAlign、Reg::MaskNot→Reg::Not、Reg::MaskAnd→Reg::And,不改变控制流。 - host 侧:重命名 TilingForReleatedTranspose→TilingForRelatedTranspose、isReleatedTranspsoe_→isRelatedTranspose_,同步所有调用点。 - 日志:修改 printf/OP_LOGE/OP_LOGW/OP_LOGI 文案与级别字符串,不改变校验逻辑。 ## 关联的Issue - #2916 ## 测试 本 PR 为 API 迁移、命名修正与日志清理,通过已有测试用例(含 arch35 tiling UT 与 examples 二级冒烟)回归验证。 ## 文档更新 本 PR 未包含文档更新。 ## 类型标签 - [ ] Bug修复 - [ ] 新特性 - [x] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述:AscendC Reg API 迁移 + 命名拼写修正 + 日志规范化 See merge request: cann/ops-math!5135 | 2 months ago | |
test: 同步 Math BRC 零 workspace 的 Host UT 期望值 Co-authored-by: zhang-song-rui<zhangsongrui@h-partners.com> # message auto-generated for no-merge-commit merge: !6242 merge fix/ascend950-vector-workspace into master test: 同步 Math BRC 零 workspace 的 Host UT 期望值 Created-by: zhang-song-rui Commit-by: zhang-song-rui Merged-by: cann-robot Description: ## 修改内容 仅同步公共 BroadcastBaseTiling(BRC)workspace 清零所影响的 Host UT:把成功 BRC 用例的 workspace 期望由 16777216(16 MiB)改为 0。 共修改 38 个已有 UT 文件,228 行增加、228 行删除,全部为上述 workspace 字面值替换。无生产代码、kernel、CMake、公共 UT 框架、依赖版本或失败用例修改;分支保持一次提交。 ## Major 意见核对与处理 opbase #1007 在 BroadcastBaseTiling::DoTiling 公共成功出口写入 DEFAULT_TILING_WORKSPACE_SIZE=0,默认 kernel type 同样受影响,并非可排除条件。结合本地 opbase 与当前 ops-math 源码,逐项处理如下: | 算子 | 本 PR 处理 | 保留原期望的依据 | | --- | --- | --- | | AddV2 | 生产文件及 UT 均保持主线原样 | BRC 返回后 SetWorkspace 显式按 CompileInfo/平台信息重新申请 workspace,最终结果仍为 16 MiB;不能仅改 UT 为 0。 | | LeftShift | 8 个成功用例改为 0 | 另 1 个失败用例的占位期望不参与 workspace 检查,保持原样。 | | RightShift | 10 个成功用例改为 0 | 另 2 个失败用例同上,保持原样。 | | MaximumGrad | 7 个成功 BRC 用例改为 0 | 另 4 个空张量用例走 HandleEmptyTensor 独立分支,仍显式申请系统 workspace,保留 16 MiB。 | | MinimumGrad | 7 个成功 BRC 用例改为 0 | 同上,另 4 个空张量独立分支保留 16 MiB。 | | MaskedFill | 7 个成功 BRC 用例改为 0 | 无遗漏。 | | TruncateDiv | 6 个成功 BRC 用例改为 0 | 原有两个 0 是失败用例,不是非 BRC 成功路径;保持原样。 | 全仓扫描发现的另外三组遗漏也已补齐:FusedMulAdd(10 处)、FusedMulAddAdd(10 处)、MulNoNan(11 处)。上述新增补齐共 9 个文件、76 处。其余原有 UT 中仅属于失败用例的 8 处占位值修改也已撤回,避免无关修改。 ## 本地验证(2026-11-05) 最终提交: ae55efaba。 环境:aarch64、GNU 9.4.0、CANN 9.2.0(用户目录安装)、目标 ascend950。使用仓库默认固定 opbase 8e8cf1b60b28bc1f8aaa1652fe054ac7e35d5852,未叠加本地 opbase 补丁。 - 最终 UT-only 版本已重新编译、最终链接并运行 math_op_host_ut:**548/548 测试通过,78 个测试套件,构建退出码 0**。范围包括全部 38 个变更算子,以及保持原样的 AddV2,共 39 个算子;保留 16 MiB 的 AddV2/梯度空张量用例也实际通过。 - 逐字节检查全部 38 个变更文件,仅存在 {16777216} → {0} 的替换;失败用例无差异,AddV2 无差异。 - 按原有 CRLF 换行格式执行差异空白检查,通过。 - 扫描仓库 50 个直接 BRC Host 消费算子,核对剩余 16 MiB 用例及上述独立分支。 最终复测日志:/tmp/pr6242-ut-only-final.log。日志含复用构建目录产生的 gcov profile 时间戳提示;测试和构建均成功,本次不提供覆盖率结论。Host UT 不替代设备 kernel 精度、性能或越界验证;本轮未执行设备测试。 ## 关联 PR - [opbase #1007](https://gitcode.com/cann/opbase/pull/1007):已合入的公共 BRC workspace 清理。 - [ops-math #6711](https://gitcode.com/cann/ops-math/pull/6711):已合入独立实现路径清理及其 4 个 UT 文件。已同步包含该修改的主线,上述 10 个文件不在本 PR 差异中。 See merge request: cann/ops-math!6242 | 9 days ago | |
feat: 新增 ascend960pr/ascend960dt 平台算子适配(14 个算子) Co-authored-by: esok11<yangsifa@huawei.com> # message auto-generated for no-merge-commit merge: !6157 merge f1008 into master feat: 新增 ascend960pr/ascend960dt 平台算子适配(14 个算子) Created-by: esok11 Commit-by: esok11 Merged-by: cann-robot Description: ## 描述 为 ascend960pr / ascend960dt 两个新增芯片形态适配算子,覆盖 conversion 与 math 目录下共 14 个算子;同时修正 addr 的 dtype 支持列表判断逻辑,并对个别文件做版权头/格式整理。 ### 改动原因 ascend960pr / ascend960dt 为新增芯片形态,现有算子需补齐平台注册、编译单元与二进制配置后,才能在新平台上被算子信息库发现、编译并选择正确的 kernel 二进制。 ### 改动方法 1. **算子信息库注册**( *_def.cpp):新增 this->AICore().AddConfig("ascend960pr", ...) 与 AddConfig("ascend960dt", ...) - conversion:assign、dynamic_partition、masked_fill、mem_set、tensor_move、tril、triu - math:addr、asin、eye、mod、sinc、truncate_div、truncate_mod 2. **编译配置**(CMakeLists.txt):在 SUPPORT_COMPUTE_UNIT / COMPUTE_UNIT 中追加 ascend960pr、ascend960dt,并在 SUPPORT_TILING_DIR / TILING_DIR 中追加对应的 arch35(tiling 目录沿用 arch35) 3. **二进制配置**:为每个算子新增 op_host/config/ascend960pr/ 与 op_host/config/ascend960dt/ 目录,包含 <op>_binary.json 与 <op>_simplified_key.ini 4. **addr dtype 判断修正**(math/addr/op_api/aclnn_addr.cpp):GetDtypeSupportList() 的判断由区间判断 >= ASCEND910B && <= ASCEND910E 改为显式判断 == ASCEND910B || == ASCEND910_93 || IsRegBase(),使 reg-base 平台复用 910B dtype 支持列表 5. **格式整理**:conversion/mem_set_v2/op_host/mem_set_v2_def.cpp、math/adds/op_host/adds_def.cpp、math/adds/CMakeLists.txt 仅做版权头/空行/行尾换行等整理 ## 关联的Issue - https://gitcode.com/cann/ops-math/issues/3440 ## 测试 本 PR 未包含测试代码改动;适配涉及算子信息库、编译配置与二进制配置,需在 ascend960pr / ascend960dt 平台补充二级冒烟与算子泛化验证。 ## 文档更新 无。 ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!6157 | 1 month ago | |
产品名变更 Co-authored-by: gitcode-chenjiao<chenjiao31@huawei.com> # message auto-generated for no-merge-commit merge: !5912 merge master into master 产品名变更 Created-by: gitcode-chenjiao Commit-by: gitcode-chenjiao Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> AI处理器对应的产品型号名称更新 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> [#3258](https://gitcode.com/cann/ops-math/issues/3258) ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ok ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> *.md ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!5912 | 1 month ago | |
docs: add English translations for markdown files Co-authored-by: jenny_xiang<jenny.xiang@huawei.com> # message auto-generated for no-merge-commit merge: !7113 merge docs/add-english-translations into master docs: add English translations for markdown files Created-by: jenny_xiang Commit-by: jenny_xiang Merged-by: cann-robot Description: ## 描述 新增仓库Markdown文档英文译稿(第二批,共409个文件):第一批(已合入)之外的其余全部译稿,覆盖conversion、examples、ge、math、random各类算子README译稿,以及CHANGELOG_en.md、.gitcode PR模板英文版等。 本批内全部仓内链接均指向master已有文件(含第一批已合入的21+2篇译稿),合入后本仓432篇英文文档全部就位,链接完整生效。 本批同时包含4篇基于最新源文档的增量更新(math/ada_cast、math/prod_force_se_a、math/sinkhorn、math/xlogy,对应上游近期文档变更)。 ## 关联的Issue 无 ## 测试 文档类变更,无需算子测试;已通过链接有效性校验(本批全部相对链接仅指向master已有文件,无指向本PR外未提交文件的链接),并完成逐篇翻译规范自查与语义校对(含支持状态表、限定词、术语、数值符号核对)。 ## 文档更新 新增409个英文译稿文件(*_en.md / .en-US.md),不修改任何现有文件。 ## 类型标签 - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!7113 | 9 days ago |
TruncateDiv
English | 简体中文
Product Support Status
| Product | Supported |
|---|---|
| Ascend 950PR&950DT products | √ |
| Atlas A3 products | √ |
| Atlas A2 products | √ |
| Atlas 200I/500 A2 inference products | √ |
| Atlas inference products | × |
| Atlas training products | √ |
Function Description
-
API function: performs the truncation division computation, and the result is rounded toward zero
-
Computation formula:
outi=trunc(x1ix2i)out_i = trunc(\frac{x1_i}{x2_i}) outi=trunc(x2ix1i)
where
truncindicates rounding toward zero (truncation). -
Exception: None
Parameter Description
| Parameter Name | Input/Output/Attribute | Description | Data Type | Data Format |
|---|---|---|---|---|
| x1 | Input | The dividend in the formula. | BFLOAT16, FLOAT16, FLOAT, INT32, UINT8, INT8, INT64, INT16 | ND |
| x2 | Input | The divisor in the formula. | BFLOAT16, FLOAT16, FLOAT, INT32, UINT8, INT8, INT64, INT16 | ND |
| y | Output | out in the formula, which is the truncation division result. | BFLOAT16, FLOAT16, FLOAT, INT32, UINT8, INT8, INT64, INT16 | ND |
Constraint Description
- The inputs x1 and x2 must satisfy the broadcast relationship.
- When the divisor is 0, the result is undefined behavior.
Invocation Description
| Invocation Method | Sample Code | Description |
|---|---|---|
| Graph-mode invocation | test_geir_truncate_div | Invokes the TruncateDiv operator by building a graph through the operator IR. |