| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
[master][Fix] Fix static check errors detected by clang-format Co-authored-by: zhoupeng<zp2165064878@163.com> # message auto-generated for no-merge-commit merge: !5551 merge clang-format into master [master][Fix] Fix static check errors detected by clang-format Created-by: thickhair Commit-by: zhoupeng Merged-by: ascend-robot Description: <!-- PR描述模板更新日期:20260203 --> # 【合入来源】 > <font color="red">**如有社区issue,请关联issue链接**</font>\ > <font color="red">**请勿携带内部流程信息(需求链接、问题单、内部issue等)**</font> - [ ] 需求 - [ ] 问题单 - [x] issue/工单 https://gitcode.com/Ascend/op-plugin/issues/323 - [ ] 重构优化 - [ ] 资料更新 # 【修改方案】 使用pta clang-format风格,修复相关问题 # 【资料变更】 > 请确认是否涉及资料变更。如涉及,需要在PR中体现,并简要说明修改内容。如不涉及,需填写“不涉及” # 【接口变更】 > 请确认是否涉及跨代码仓或者客户面可见的接口变更。如涉及,需要详细说明接口以及对应的变更内容,同时需要在资料中体现。如不涉及,需填写“不涉及” # 【功能验证】  # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [x] 代码注释完备,正确记录错误日志 - [x] 代码实现进行了返回值、空指针等校验 - [x] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [x] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/op-plugin!5551 | 3 个月前 | |
[master][Fix] Fix static check errors detected by clang-format Co-authored-by: zhoupeng<zp2165064878@163.com> # message auto-generated for no-merge-commit merge: !5551 merge clang-format into master [master][Fix] Fix static check errors detected by clang-format Created-by: thickhair Commit-by: zhoupeng Merged-by: ascend-robot Description: <!-- PR描述模板更新日期:20260203 --> # 【合入来源】 > <font color="red">**如有社区issue,请关联issue链接**</font>\ > <font color="red">**请勿携带内部流程信息(需求链接、问题单、内部issue等)**</font> - [ ] 需求 - [ ] 问题单 - [x] issue/工单 https://gitcode.com/Ascend/op-plugin/issues/323 - [ ] 重构优化 - [ ] 资料更新 # 【修改方案】 使用pta clang-format风格,修复相关问题 # 【资料变更】 > 请确认是否涉及资料变更。如涉及,需要在PR中体现,并简要说明修改内容。如不涉及,需填写“不涉及” # 【接口变更】 > 请确认是否涉及跨代码仓或者客户面可见的接口变更。如涉及,需要详细说明接口以及对应的变更内容,同时需要在资料中体现。如不涉及,需填写“不涉及” # 【功能验证】  # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [x] 代码注释完备,正确记录错误日志 - [x] 代码实现进行了返回值、空指针等校验 - [x] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [x] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/op-plugin!5551 | 3 个月前 | |
[master][Fix] Fix static check errors detected by clang-format Co-authored-by: zhoupeng<zp2165064878@163.com> # message auto-generated for no-merge-commit merge: !5551 merge clang-format into master [master][Fix] Fix static check errors detected by clang-format Created-by: thickhair Commit-by: zhoupeng Merged-by: ascend-robot Description: <!-- PR描述模板更新日期:20260203 --> # 【合入来源】 > <font color="red">**如有社区issue,请关联issue链接**</font>\ > <font color="red">**请勿携带内部流程信息(需求链接、问题单、内部issue等)**</font> - [ ] 需求 - [ ] 问题单 - [x] issue/工单 https://gitcode.com/Ascend/op-plugin/issues/323 - [ ] 重构优化 - [ ] 资料更新 # 【修改方案】 使用pta clang-format风格,修复相关问题 # 【资料变更】 > 请确认是否涉及资料变更。如涉及,需要在PR中体现,并简要说明修改内容。如不涉及,需填写“不涉及” # 【接口变更】 > 请确认是否涉及跨代码仓或者客户面可见的接口变更。如涉及,需要详细说明接口以及对应的变更内容,同时需要在资料中体现。如不涉及,需填写“不涉及” # 【功能验证】  # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [x] 代码注释完备,正确记录错误日志 - [x] 代码实现进行了返回值、空指针等校验 - [x] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [x] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/op-plugin!5551 | 3 个月前 | |
!1242 Update copyright * Update copyright | 2 年前 | |
| 1 年前 | ||
fix(npu): 对齐searchsorted接口入参为side=right时的正确语义、补齐相关校验和告警信息 Co-authored-by: Margaret_wangrui<wangrui178@huawei.com> # message auto-generated for no-merge-commit merge: !4934 merge searchsorted into master fix(npu): 对齐searchsorted接口入参为side=right时的正确语义、补齐相关校验和告警信息 Created-by: Margaret_wangrui Commit-by: Margaret_wangrui Merged-by: ascend-robot Description: # 【合入来源】 > <font color="red">**如有社区issue,请关联issue链接**</font>\ > <font color="red">**请勿携带内部流程信息(需求链接、问题单、内部issue等)**</font> https://gitcode.com/Ascend/pytorch/issues/1910 - [ ] 需求 - [x] 问题单 - [ ] issue/工单 - [ ] 重构优化 - [ ] 资料更新 涉及用例: python test_reductions.py -v -k test_bucketization_npu 用例主要测试searchsorted接口不同入参和校验告警等情况,PR用于处理对齐side=right时的正确语义、补齐相关校验和告警信息。 - 此前 NPU 侧多直接透传 right,未按 PyTorch 语义处理 **side**(side 存在时应覆盖 right),易导致与 GPU 结果不一致(含边界与 NaN 场景)。 - 设备编排与 CANN / aclnn 侧报错信息与 **ATen searchsorted_pre_check** 不一致,不利于脚本与单测排障(例如 out dtype、sorter、device 等应先抛出 PyTorch 风格 RuntimeError)。 - 非连续输入缺少与 GPU 类似的 **TORCH_WARN_ONCE** 提示,行为不透明。 # 【修改方案】 > 请描述修改内容的具体实现,涉及哪些组件之间进行交互,可以用1、2、3、...进行罗列\ > 如果是需求或者重构类的PR,需要补充详细设计文档(说明上下游组件关系、时序图、类图、DFX能力等内容) 1. **工具头文件(op_plugin/utils/)** - **SearchsortedSideUtil.h**:resolve_searchsorted_effective_right,在 **已完成** searchsorted_pre_check_npu 的前提下,将可选 side 解析为调用底层算子使用的有效 right(避免与校验逻辑重复)。 - **SearchsortedValidateUtil.h**:镜像 **BucketizationUtils.h** 中 **searchsorted_pre_check**,统一 dtype / shape / device / sorter / out 与 out_int32 等约束及报错文案;提供 searchsorted_validate_tensor_out_op、searchsorted_validate_core_no_output(functional、尚无 out 参数时)、searchsorted_validate_scalar_op 等封装,便于 YAML 与内核复用。 - **SearchsortedWarnUtil.h**:searchsorted_tensor_is_row_major_contiguous 与 **warn_if_searchsorted_*_noncontiguous**,对齐 ATen 侧对非连续 boundary / values / sorter 的告警语义。 2. **ACL 内核(SearchsortedKernelNpu.cpp)** 在 **CheckOut / SearchSorted OpCommand** 之前插入 **validate → warn → right_eff**,保证 acl_op 路径与 op_api 策略一致。 3. **op_api 生成配置(op_plugin_functions.yaml)** 对 **searchsorted.Scalar**、**searchsorted.Tensor**、**searchsorted.Tensor_out** 的 **gen_opapi** 增加 **new_params.right_eff**:使用 C++ 逗号表达式 **(validate, warn, resolve)** 顺序执行,表达式值为最终 **bool** 传入 aclnn;**Tensor** 重载不再仅 **structured_inherit**,显式给出 **out size/dtype** 与带 **right_eff 的 exec**,以便在分配 **out** 前做与 functional 匹配的校验链。 4. **公共头(op_api_common_base.h)** 在文件末尾 **#include** 上述三个 Searchsorted 工具头,供生成的 op_api 翻译单元在展开 new_params 时可见 **op_plugin::** 符号(通过 **npu_cpp_extension.h → op_api_common_base.h** 引入)。 5. **测试(test/test_base_ops/test_searchsorted.py)** 补充与 CPU 对比的 **side / right**、非法 side、side 与 right 冲突、sorter dtype/shape/越界、跨 device、out dtype 错误、前置维度不匹配、非连续告警等用例。 # 【资料变更】 > 请确认是否涉及资料变更。如涉及,需要在PR中体现,并简要说明修改内容。如不涉及,需填写“不涉及” 不涉及 # 【接口变更】 > 请确认是否涉及跨代码仓或者客户面可见的接口变更。如涉及,需要详细说明接口以及对应的变更内容,同时需要在资料中体现。如不涉及,需填写“不涉及” 不涉及 # 【功能验证】 > 说明测试场景,测试方法。如果本次测试方式与常规单元测试不同,请详细说明您的测试步骤\ > 新增/变更内容是否已新增/适配UT测试用例看护,并补充测试自验证截图 自验结果  # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [x] 代码注释完备,正确记录错误日志 - [x] 代码实现进行了返回值、空指针等校验 - [x] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [x] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/op-plugin!4934 | 5 个月前 | |
feat: 新增DC算子Setup/Teardown新接口 Co-authored-by: tongzy1242<tongzeyun@huawei.com> # message auto-generated for no-merge-commit merge: !4468 merge new_op_urma into master feat: 新增DC算子Setup/Teardown新接口 Created-by: tongzy1242 Commit-by: tongzy1242 Merged-by: ascend-robot Description: <!-- PR描述模板更新日期:20260203 --> # 【合入来源】 > <font color="red">**如有社区issue,请关联issue链接**</font>\ > <font color="red">**请勿携带内部流程信息(需求链接、问题单、内部issue等)**</font> Issue [#892](https://gitcode.com/cann/ops-transformer/issues/892) - [x] 需求 - [ ] 问题单 - [ ] issue/工单 - [ ] 重构优化 - [ ] 资料更新 # 【修改方案】 > 请描述修改内容的具体实现,涉及哪些组件之间进行交互,可以用1、2、3、...进行罗列\ > 如果是需求或者重构类的PR,需要补充详细设计文档(说明上下游组件关系、时序图、类图、DFX能力等内容) 具体实现包括:1)在YAML配置文件中注册算子并配置ACL接口;2)在Python端添加元函数,用于编译时的形状和数据类型推断;3)在C++端实现输出形状和数据类型(如FLOAT8_E8M0)的动态计算逻辑;4)在算子注册配置(JSON)中补充接口签名;5)新增了FakeTensor模式下的元数据测试和多进程分布式环境下的功能集成测试,以验证算子链路的正确性。 # 【资料变更】 > 请确认是否涉及资料变更。如涉及,需要在PR中体现,并简要说明修改内容。如不涉及,需填写“不涉及” 不涉及 # 【接口变更】 > 请确认是否涉及跨代码仓或者客户面可见的接口变更。如涉及,需要详细说明接口以及对应的变更内容,同时需要在资料中体现。如不涉及,需填写“不涉及” 本次修改在算子插件框架中新增了四个算子定义:npu_moe_distribute_dispatch_setup、npu_moe_distribute_dispatch_teardown、npu_moe_distribute_combine_setup和npu_moe_distribute_combine_teardown。 # 【功能验证】 > 说明测试场景,测试方法。如果本次测试方式与常规单元测试不同,请详细说明您的测试步骤\ > 新增/变更内容是否已新增/适配UT测试用例看护,并补充测试自验证截图 已本地自验证 # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [x] 代码注释完备,正确记录错误日志 - [x] 代码实现进行了返回值、空指针等校验 - [x] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [ ] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/op-plugin!4468 | 7 个月前 | |
feat: 新增DC算子Setup/Teardown新接口 Co-authored-by: tongzy1242<tongzeyun@huawei.com> # message auto-generated for no-merge-commit merge: !4468 merge new_op_urma into master feat: 新增DC算子Setup/Teardown新接口 Created-by: tongzy1242 Commit-by: tongzy1242 Merged-by: ascend-robot Description: <!-- PR描述模板更新日期:20260203 --> # 【合入来源】 > <font color="red">**如有社区issue,请关联issue链接**</font>\ > <font color="red">**请勿携带内部流程信息(需求链接、问题单、内部issue等)**</font> Issue [#892](https://gitcode.com/cann/ops-transformer/issues/892) - [x] 需求 - [ ] 问题单 - [ ] issue/工单 - [ ] 重构优化 - [ ] 资料更新 # 【修改方案】 > 请描述修改内容的具体实现,涉及哪些组件之间进行交互,可以用1、2、3、...进行罗列\ > 如果是需求或者重构类的PR,需要补充详细设计文档(说明上下游组件关系、时序图、类图、DFX能力等内容) 具体实现包括:1)在YAML配置文件中注册算子并配置ACL接口;2)在Python端添加元函数,用于编译时的形状和数据类型推断;3)在C++端实现输出形状和数据类型(如FLOAT8_E8M0)的动态计算逻辑;4)在算子注册配置(JSON)中补充接口签名;5)新增了FakeTensor模式下的元数据测试和多进程分布式环境下的功能集成测试,以验证算子链路的正确性。 # 【资料变更】 > 请确认是否涉及资料变更。如涉及,需要在PR中体现,并简要说明修改内容。如不涉及,需填写“不涉及” 不涉及 # 【接口变更】 > 请确认是否涉及跨代码仓或者客户面可见的接口变更。如涉及,需要详细说明接口以及对应的变更内容,同时需要在资料中体现。如不涉及,需填写“不涉及” 本次修改在算子插件框架中新增了四个算子定义:npu_moe_distribute_dispatch_setup、npu_moe_distribute_dispatch_teardown、npu_moe_distribute_combine_setup和npu_moe_distribute_combine_teardown。 # 【功能验证】 > 说明测试场景,测试方法。如果本次测试方式与常规单元测试不同,请详细说明您的测试步骤\ > 新增/变更内容是否已新增/适配UT测试用例看护,并补充测试自验证截图 已本地自验证 # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [x] 代码注释完备,正确记录错误日志 - [x] 代码实现进行了返回值、空指针等校验 - [x] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [ ] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/op-plugin!4468 | 7 个月前 | |
add gru aclnn version Co-authored-by: XianglongZeng<zengxianglong1@huawei.com> # message auto-generated for no-merge-commit merge: !5567 merge master into master add gru aclnn version Created-by: probiotics_53 Commit-by: XianglongZeng Merged-by: ascend-robot Description: <!-- PR描述模板更新日期:20260203 --> # 【合入来源】 > <font color="red">**如有社区issue,请关联issue链接**</font>\ > <font color="red">**请勿携带内部流程信息(需求链接、问题单、内部issue等)**</font> - [x] 需求 - [ ] 问题单 - [ ] issue/工单 - [ ] 重构优化 - [ ] 资料更新 # 【修改方案】 1. torch.nn.GRU正反向接入aclnn,以替换之前的aclop实现,暂不支持变长Sequence输入 2. 调整一个阻塞CI的存量精度问题用例(group_norm_backward)的阈值,issue见https://gitcode.com/Ascend/pytorch/issues/3515 # 【资料变更】 在原生api清单限制中添加dropout不生效的提示 # 【接口变更】 不涉及 # 【功能验证】 正向ut:  反向ut:  # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [x] 代码注释完备,正确记录错误日志 - [x] 代码实现进行了返回值、空指针等校验 - [x] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [x] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/op-plugin!5567 | 2 个月前 | |
add gru aclnn version Co-authored-by: XianglongZeng<zengxianglong1@huawei.com> # message auto-generated for no-merge-commit merge: !5567 merge master into master add gru aclnn version Created-by: probiotics_53 Commit-by: XianglongZeng Merged-by: ascend-robot Description: <!-- PR描述模板更新日期:20260203 --> # 【合入来源】 > <font color="red">**如有社区issue,请关联issue链接**</font>\ > <font color="red">**请勿携带内部流程信息(需求链接、问题单、内部issue等)**</font> - [x] 需求 - [ ] 问题单 - [ ] issue/工单 - [ ] 重构优化 - [ ] 资料更新 # 【修改方案】 1. torch.nn.GRU正反向接入aclnn,以替换之前的aclop实现,暂不支持变长Sequence输入 2. 调整一个阻塞CI的存量精度问题用例(group_norm_backward)的阈值,issue见https://gitcode.com/Ascend/pytorch/issues/3515 # 【资料变更】 在原生api清单限制中添加dropout不生效的提示 # 【接口变更】 不涉及 # 【功能验证】 正向ut:  反向ut:  # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [x] 代码注释完备,正确记录错误日志 - [x] 代码实现进行了返回值、空指针等校验 - [x] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [x] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/op-plugin!5567 | 2 个月前 | |
compat(v2.13): gate named-tensor operators for PyTorch 2.13 Co-authored-by: chz34<chenhaozhe1@huawei.com> # message auto-generated for no-merge-commit merge: !5320 merge compat/master into master compat(v2.13): gate named-tensor operators for PyTorch 2.13 Created-by: c_34 Commit-by: chz34 Merged-by: ascend-robot Description: <!-- PR描述模板更新日期:20260203 --> # 【合入来源】 > <font color="red">**如有社区issue,请关联issue链接**</font>\ > <font color="red">**请勿携带内部流程信息(需求链接、问题单、内部issue等)**</font> - [ ] 需求 - [ ] 问题单 - [x] issue/工单 https://gitcode.com/Ascend/pytorch/issues/2325 - [x] 重构优化 https://gitcode.com/Ascend/pytorch/issues/2569 - [ ] 资料更新 # 【修改方案】 > 请描述修改内容的具体实现,涉及哪些组件之间进行交互,可以用1、2、3、...进行罗列\ > 如果是需求或者重构类的PR,需要补充详细设计文档(说明上下游组件关系、时序图、类图、DFX能力等内容) 1. 算子实现:通过修改yaml中适配的version信息,在2.13+版本上不提供 2. 算子实现: 提供一个NamedTensorCompat.h的兼容头文件, 在 op-plugin 里,同种场景下使用兼容头文件和宏定义区分来区分不同版本,具体**分工原则**是: | 情况 | 处理方式 | | ---------------------------------------------------------------------------------------------------------------- | ------------------------------- | | 已被删的**类型 / 自由函数 / 名字空间**(如 at::Dimname, at::namedinference::*, at::NoNamesGuard) | Named Tensor Compat.h 提供 stand-in / no-op stub | | 已被删的**类的成员方法**(如 Tensor::has_names(), Tensor::names(), Tensor::opt_names(), Tensor::rename()) | 只能用 #if 绕开 | | 一个函数**整体**是 named overload(签名含 at::Dimname / at::DimnameList) | 用 #if 把整个函数 gate 掉 | | 一个正常函数**体内**只是零星 name-propagation 调用 | 依赖 shim stub,不加 #if | # 【资料变更】 > 请确认是否涉及资料变更。如涉及,需要在PR中体现,并简要说明修改内容。如不涉及,需填写“不涉及” op-plugin仓库不涉及 # 【接口变更】 > 请确认是否涉及跨代码仓或者客户面可见的接口变更。如涉及,需要详细说明接口以及对应的变更内容,同时需要在资料中体现。如不涉及,需填写“不涉及” 跟随pytorch版本演进删除NamedTensor相关的接口。 # 【功能验证】 > 说明测试场景,测试方法。如果本次测试方式与常规单元测试不同,请详细说明您的测试步骤\ > 新增/变更内容是否已新增/适配UT测试用例看护,并补充测试自验证截图 不涉及新增测试 # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [x] 代码注释完备,正确记录错误日志 - [x] 代码实现进行了返回值、空指针等校验 - [x] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [x] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/op-plugin!5320 | 3 个月前 | |
!1713 fix ops * fix ops | 2 年前 | |
!1242 Update copyright * Update copyright | 2 年前 | |
[feat] A5 optimization split Co-authored-by: chenshuai<chenshuai81@huawei.com> # message auto-generated for no-merge-commit merge: !5588 merge split into master [feat] A5 optimization split Created-by: culechan Commit-by: chenshuai Merged-by: ascend-robot Description: <!-- PR描述模板更新日期:20260203 --> # 【合入来源】 > <font color="red">**如有社区issue,请关联issue链接**</font>\ > <font color="red">**请勿携带内部流程信息(需求链接、问题单、内部issue等)**</font> - [x] 需求 - [ ] 问题单 - [ ] issue/工单 - [ ] 重构优化 - [ ] 资料更新 # 【修改方案】 如果设备是A5及以上则直接走aclnn融合路线 # 【资料变更】 不涉及 # 【接口变更】 不涉及 # 【功能验证】 调用的已经是aclnn算子了  # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [x] 代码注释完备,正确记录错误日志 - [x] 代码实现进行了返回值、空指针等校验 - [x] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [x] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/op-plugin!5588 | 3 个月前 | |
[feat] A5 optimization split Co-authored-by: chenshuai<chenshuai81@huawei.com> # message auto-generated for no-merge-commit merge: !5588 merge split into master [feat] A5 optimization split Created-by: culechan Commit-by: chenshuai Merged-by: ascend-robot Description: <!-- PR描述模板更新日期:20260203 --> # 【合入来源】 > <font color="red">**如有社区issue,请关联issue链接**</font>\ > <font color="red">**请勿携带内部流程信息(需求链接、问题单、内部issue等)**</font> - [x] 需求 - [ ] 问题单 - [ ] issue/工单 - [ ] 重构优化 - [ ] 资料更新 # 【修改方案】 如果设备是A5及以上则直接走aclnn融合路线 # 【资料变更】 不涉及 # 【接口变更】 不涉及 # 【功能验证】 调用的已经是aclnn算子了  # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [x] 代码注释完备,正确记录错误日志 - [x] 代码实现进行了返回值、空指针等校验 - [x] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [x] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/op-plugin!5588 | 3 个月前 | |
Refine randomness legacy compatibility Co-authored-by: wang_ziqi<wangziqi4@huawei.com> # message auto-generated for no-merge-commit merge: !5497 merge compatiable_randomness_master into master Refine randomness legacy compatibility Created-by: wang-ziqi-code Commit-by: wang_ziqi Merged-by: ascend-robot Description: <!-- PR描述模板更新日期:20260203 --> # 【合入来源】 > <font color="red">**如有社区issue,请关联issue链接**</font>\ > <font color="red">**请勿携带内部流程信息(需求链接、问题单、内部issue等)**</font> - [x] 需求 https://gitcode.com/Ascend/pytorch/issues/2853 - [ ] 问题单 - [ ] issue/工单 - [x] 重构优化 - [ ] 资料更新 # 【修改方案】 > 请描述修改内容的具体实现,涉及哪些组件之间进行交互,可以用1、2、3、...进行罗列\ > 如果是需求或者重构类的PR,需要补充详细设计文档(说明上下游组件关系、时序图、类图、DFX能力等内容) 1. 将 RandomUtil.h 中新增的 randomness helper 函数命名调整为存量代码一致的 snake_case 风格,并同步更新 dropout 调用点。 # 【资料变更】 > 请确认是否涉及资料变更。如涉及,需要在PR中体现,并简要说明修改内容。如不涉及,需填写“不涉及” 不涉及资料变更。 # 【接口变更】 > 请确认是否涉及跨代码仓或者客户面可见的接口变更。如涉及,需要详细说明接口以及对应的变更内容,同时需要在资料中体现。如不涉及,需填写“不涉及” 不涉及新增接口。 # 【功能验证】 > 说明测试场景,测试方法。如果本次测试方式与常规单元测试不同,请详细说明您的测试步骤\ > 新增/变更内容是否已新增/适配UT测试用例看护,并补充测试自验证截图 已执行静态检查: bash git -C op-plugin diff --cached --check 验证场景: 1. RandomUtil.h 新增 helper 函数命名已与存量 calc_counter_offset、calc_final_counter_offset 等 snake_case 风格保持一致。 2. dropout 调用点已同步使用 prepare_randomness_compatible(false)。 # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [x] 代码注释完备,正确记录错误日志 - [x] 代码实现进行了返回值、空指针等校验 - [x] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [x] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/op-plugin!5497 | 3 个月前 | |
fix(npu): 对齐searchsorted接口入参为side=right时的正确语义、补齐相关校验和告警信息 Co-authored-by: Margaret_wangrui<wangrui178@huawei.com> # message auto-generated for no-merge-commit merge: !4934 merge searchsorted into master fix(npu): 对齐searchsorted接口入参为side=right时的正确语义、补齐相关校验和告警信息 Created-by: Margaret_wangrui Commit-by: Margaret_wangrui Merged-by: ascend-robot Description: # 【合入来源】 > <font color="red">**如有社区issue,请关联issue链接**</font>\ > <font color="red">**请勿携带内部流程信息(需求链接、问题单、内部issue等)**</font> https://gitcode.com/Ascend/pytorch/issues/1910 - [ ] 需求 - [x] 问题单 - [ ] issue/工单 - [ ] 重构优化 - [ ] 资料更新 涉及用例: python test_reductions.py -v -k test_bucketization_npu 用例主要测试searchsorted接口不同入参和校验告警等情况,PR用于处理对齐side=right时的正确语义、补齐相关校验和告警信息。 - 此前 NPU 侧多直接透传 right,未按 PyTorch 语义处理 **side**(side 存在时应覆盖 right),易导致与 GPU 结果不一致(含边界与 NaN 场景)。 - 设备编排与 CANN / aclnn 侧报错信息与 **ATen searchsorted_pre_check** 不一致,不利于脚本与单测排障(例如 out dtype、sorter、device 等应先抛出 PyTorch 风格 RuntimeError)。 - 非连续输入缺少与 GPU 类似的 **TORCH_WARN_ONCE** 提示,行为不透明。 # 【修改方案】 > 请描述修改内容的具体实现,涉及哪些组件之间进行交互,可以用1、2、3、...进行罗列\ > 如果是需求或者重构类的PR,需要补充详细设计文档(说明上下游组件关系、时序图、类图、DFX能力等内容) 1. **工具头文件(op_plugin/utils/)** - **SearchsortedSideUtil.h**:resolve_searchsorted_effective_right,在 **已完成** searchsorted_pre_check_npu 的前提下,将可选 side 解析为调用底层算子使用的有效 right(避免与校验逻辑重复)。 - **SearchsortedValidateUtil.h**:镜像 **BucketizationUtils.h** 中 **searchsorted_pre_check**,统一 dtype / shape / device / sorter / out 与 out_int32 等约束及报错文案;提供 searchsorted_validate_tensor_out_op、searchsorted_validate_core_no_output(functional、尚无 out 参数时)、searchsorted_validate_scalar_op 等封装,便于 YAML 与内核复用。 - **SearchsortedWarnUtil.h**:searchsorted_tensor_is_row_major_contiguous 与 **warn_if_searchsorted_*_noncontiguous**,对齐 ATen 侧对非连续 boundary / values / sorter 的告警语义。 2. **ACL 内核(SearchsortedKernelNpu.cpp)** 在 **CheckOut / SearchSorted OpCommand** 之前插入 **validate → warn → right_eff**,保证 acl_op 路径与 op_api 策略一致。 3. **op_api 生成配置(op_plugin_functions.yaml)** 对 **searchsorted.Scalar**、**searchsorted.Tensor**、**searchsorted.Tensor_out** 的 **gen_opapi** 增加 **new_params.right_eff**:使用 C++ 逗号表达式 **(validate, warn, resolve)** 顺序执行,表达式值为最终 **bool** 传入 aclnn;**Tensor** 重载不再仅 **structured_inherit**,显式给出 **out size/dtype** 与带 **right_eff 的 exec**,以便在分配 **out** 前做与 functional 匹配的校验链。 4. **公共头(op_api_common_base.h)** 在文件末尾 **#include** 上述三个 Searchsorted 工具头,供生成的 op_api 翻译单元在展开 new_params 时可见 **op_plugin::** 符号(通过 **npu_cpp_extension.h → op_api_common_base.h** 引入)。 5. **测试(test/test_base_ops/test_searchsorted.py)** 补充与 CPU 对比的 **side / right**、非法 side、side 与 right 冲突、sorter dtype/shape/越界、跨 device、out dtype 错误、前置维度不匹配、非连续告警等用例。 # 【资料变更】 > 请确认是否涉及资料变更。如涉及,需要在PR中体现,并简要说明修改内容。如不涉及,需填写“不涉及” 不涉及 # 【接口变更】 > 请确认是否涉及跨代码仓或者客户面可见的接口变更。如涉及,需要详细说明接口以及对应的变更内容,同时需要在资料中体现。如不涉及,需填写“不涉及” 不涉及 # 【功能验证】 > 说明测试场景,测试方法。如果本次测试方式与常规单元测试不同,请详细说明您的测试步骤\ > 新增/变更内容是否已新增/适配UT测试用例看护,并补充测试自验证截图 自验结果  # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [x] 代码注释完备,正确记录错误日志 - [x] 代码实现进行了返回值、空指针等校验 - [x] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [x] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/op-plugin!4934 | 5 个月前 | |
fix(npu): 对齐searchsorted接口入参为side=right时的正确语义、补齐相关校验和告警信息 Co-authored-by: Margaret_wangrui<wangrui178@huawei.com> # message auto-generated for no-merge-commit merge: !4934 merge searchsorted into master fix(npu): 对齐searchsorted接口入参为side=right时的正确语义、补齐相关校验和告警信息 Created-by: Margaret_wangrui Commit-by: Margaret_wangrui Merged-by: ascend-robot Description: # 【合入来源】 > <font color="red">**如有社区issue,请关联issue链接**</font>\ > <font color="red">**请勿携带内部流程信息(需求链接、问题单、内部issue等)**</font> https://gitcode.com/Ascend/pytorch/issues/1910 - [ ] 需求 - [x] 问题单 - [ ] issue/工单 - [ ] 重构优化 - [ ] 资料更新 涉及用例: python test_reductions.py -v -k test_bucketization_npu 用例主要测试searchsorted接口不同入参和校验告警等情况,PR用于处理对齐side=right时的正确语义、补齐相关校验和告警信息。 - 此前 NPU 侧多直接透传 right,未按 PyTorch 语义处理 **side**(side 存在时应覆盖 right),易导致与 GPU 结果不一致(含边界与 NaN 场景)。 - 设备编排与 CANN / aclnn 侧报错信息与 **ATen searchsorted_pre_check** 不一致,不利于脚本与单测排障(例如 out dtype、sorter、device 等应先抛出 PyTorch 风格 RuntimeError)。 - 非连续输入缺少与 GPU 类似的 **TORCH_WARN_ONCE** 提示,行为不透明。 # 【修改方案】 > 请描述修改内容的具体实现,涉及哪些组件之间进行交互,可以用1、2、3、...进行罗列\ > 如果是需求或者重构类的PR,需要补充详细设计文档(说明上下游组件关系、时序图、类图、DFX能力等内容) 1. **工具头文件(op_plugin/utils/)** - **SearchsortedSideUtil.h**:resolve_searchsorted_effective_right,在 **已完成** searchsorted_pre_check_npu 的前提下,将可选 side 解析为调用底层算子使用的有效 right(避免与校验逻辑重复)。 - **SearchsortedValidateUtil.h**:镜像 **BucketizationUtils.h** 中 **searchsorted_pre_check**,统一 dtype / shape / device / sorter / out 与 out_int32 等约束及报错文案;提供 searchsorted_validate_tensor_out_op、searchsorted_validate_core_no_output(functional、尚无 out 参数时)、searchsorted_validate_scalar_op 等封装,便于 YAML 与内核复用。 - **SearchsortedWarnUtil.h**:searchsorted_tensor_is_row_major_contiguous 与 **warn_if_searchsorted_*_noncontiguous**,对齐 ATen 侧对非连续 boundary / values / sorter 的告警语义。 2. **ACL 内核(SearchsortedKernelNpu.cpp)** 在 **CheckOut / SearchSorted OpCommand** 之前插入 **validate → warn → right_eff**,保证 acl_op 路径与 op_api 策略一致。 3. **op_api 生成配置(op_plugin_functions.yaml)** 对 **searchsorted.Scalar**、**searchsorted.Tensor**、**searchsorted.Tensor_out** 的 **gen_opapi** 增加 **new_params.right_eff**:使用 C++ 逗号表达式 **(validate, warn, resolve)** 顺序执行,表达式值为最终 **bool** 传入 aclnn;**Tensor** 重载不再仅 **structured_inherit**,显式给出 **out size/dtype** 与带 **right_eff 的 exec**,以便在分配 **out** 前做与 functional 匹配的校验链。 4. **公共头(op_api_common_base.h)** 在文件末尾 **#include** 上述三个 Searchsorted 工具头,供生成的 op_api 翻译单元在展开 new_params 时可见 **op_plugin::** 符号(通过 **npu_cpp_extension.h → op_api_common_base.h** 引入)。 5. **测试(test/test_base_ops/test_searchsorted.py)** 补充与 CPU 对比的 **side / right**、非法 side、side 与 right 冲突、sorter dtype/shape/越界、跨 device、out dtype 错误、前置维度不匹配、非连续告警等用例。 # 【资料变更】 > 请确认是否涉及资料变更。如涉及,需要在PR中体现,并简要说明修改内容。如不涉及,需填写“不涉及” 不涉及 # 【接口变更】 > 请确认是否涉及跨代码仓或者客户面可见的接口变更。如涉及,需要详细说明接口以及对应的变更内容,同时需要在资料中体现。如不涉及,需填写“不涉及” 不涉及 # 【功能验证】 > 说明测试场景,测试方法。如果本次测试方式与常规单元测试不同,请详细说明您的测试步骤\ > 新增/变更内容是否已新增/适配UT测试用例看护,并补充测试自验证截图 自验结果  # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [x] 代码注释完备,正确记录错误日志 - [x] 代码实现进行了返回值、空指针等校验 - [x] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [x] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/op-plugin!4934 | 5 个月前 | |
fix(npu): 对齐searchsorted接口入参为side=right时的正确语义、补齐相关校验和告警信息 Co-authored-by: Margaret_wangrui<wangrui178@huawei.com> # message auto-generated for no-merge-commit merge: !4934 merge searchsorted into master fix(npu): 对齐searchsorted接口入参为side=right时的正确语义、补齐相关校验和告警信息 Created-by: Margaret_wangrui Commit-by: Margaret_wangrui Merged-by: ascend-robot Description: # 【合入来源】 > <font color="red">**如有社区issue,请关联issue链接**</font>\ > <font color="red">**请勿携带内部流程信息(需求链接、问题单、内部issue等)**</font> https://gitcode.com/Ascend/pytorch/issues/1910 - [ ] 需求 - [x] 问题单 - [ ] issue/工单 - [ ] 重构优化 - [ ] 资料更新 涉及用例: python test_reductions.py -v -k test_bucketization_npu 用例主要测试searchsorted接口不同入参和校验告警等情况,PR用于处理对齐side=right时的正确语义、补齐相关校验和告警信息。 - 此前 NPU 侧多直接透传 right,未按 PyTorch 语义处理 **side**(side 存在时应覆盖 right),易导致与 GPU 结果不一致(含边界与 NaN 场景)。 - 设备编排与 CANN / aclnn 侧报错信息与 **ATen searchsorted_pre_check** 不一致,不利于脚本与单测排障(例如 out dtype、sorter、device 等应先抛出 PyTorch 风格 RuntimeError)。 - 非连续输入缺少与 GPU 类似的 **TORCH_WARN_ONCE** 提示,行为不透明。 # 【修改方案】 > 请描述修改内容的具体实现,涉及哪些组件之间进行交互,可以用1、2、3、...进行罗列\ > 如果是需求或者重构类的PR,需要补充详细设计文档(说明上下游组件关系、时序图、类图、DFX能力等内容) 1. **工具头文件(op_plugin/utils/)** - **SearchsortedSideUtil.h**:resolve_searchsorted_effective_right,在 **已完成** searchsorted_pre_check_npu 的前提下,将可选 side 解析为调用底层算子使用的有效 right(避免与校验逻辑重复)。 - **SearchsortedValidateUtil.h**:镜像 **BucketizationUtils.h** 中 **searchsorted_pre_check**,统一 dtype / shape / device / sorter / out 与 out_int32 等约束及报错文案;提供 searchsorted_validate_tensor_out_op、searchsorted_validate_core_no_output(functional、尚无 out 参数时)、searchsorted_validate_scalar_op 等封装,便于 YAML 与内核复用。 - **SearchsortedWarnUtil.h**:searchsorted_tensor_is_row_major_contiguous 与 **warn_if_searchsorted_*_noncontiguous**,对齐 ATen 侧对非连续 boundary / values / sorter 的告警语义。 2. **ACL 内核(SearchsortedKernelNpu.cpp)** 在 **CheckOut / SearchSorted OpCommand** 之前插入 **validate → warn → right_eff**,保证 acl_op 路径与 op_api 策略一致。 3. **op_api 生成配置(op_plugin_functions.yaml)** 对 **searchsorted.Scalar**、**searchsorted.Tensor**、**searchsorted.Tensor_out** 的 **gen_opapi** 增加 **new_params.right_eff**:使用 C++ 逗号表达式 **(validate, warn, resolve)** 顺序执行,表达式值为最终 **bool** 传入 aclnn;**Tensor** 重载不再仅 **structured_inherit**,显式给出 **out size/dtype** 与带 **right_eff 的 exec**,以便在分配 **out** 前做与 functional 匹配的校验链。 4. **公共头(op_api_common_base.h)** 在文件末尾 **#include** 上述三个 Searchsorted 工具头,供生成的 op_api 翻译单元在展开 new_params 时可见 **op_plugin::** 符号(通过 **npu_cpp_extension.h → op_api_common_base.h** 引入)。 5. **测试(test/test_base_ops/test_searchsorted.py)** 补充与 CPU 对比的 **side / right**、非法 side、side 与 right 冲突、sorter dtype/shape/越界、跨 device、out dtype 错误、前置维度不匹配、非连续告警等用例。 # 【资料变更】 > 请确认是否涉及资料变更。如涉及,需要在PR中体现,并简要说明修改内容。如不涉及,需填写“不涉及” 不涉及 # 【接口变更】 > 请确认是否涉及跨代码仓或者客户面可见的接口变更。如涉及,需要详细说明接口以及对应的变更内容,同时需要在资料中体现。如不涉及,需填写“不涉及” 不涉及 # 【功能验证】 > 说明测试场景,测试方法。如果本次测试方式与常规单元测试不同,请详细说明您的测试步骤\ > 新增/变更内容是否已新增/适配UT测试用例看护,并补充测试自验证截图 自验结果  # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [x] 代码注释完备,正确记录错误日志 - [x] 代码实现进行了返回值、空指针等校验 - [x] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [x] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/op-plugin!4934 | 5 个月前 | |
fix(npu): correction 非整数时对 std/var 走 CPU 回退 Co-authored-by: Margaret_wangrui<wangrui178@huawei.com> # message auto-generated for no-merge-commit merge: !4997 merge std into master fix(npu): correction 非整数时对 std/var 走 CPU 回退 Created-by: Margaret_wangrui Commit-by: Margaret_wangrui Merged-by: ascend-robot Description: # 【合入来源】 > <font color="red">**如有社区issue,请关联issue链接**</font>\ <font color="red">**请勿携带内部流程信息(需求链接、问题单、内部issue等)**</font> https://gitcode.com/Ascend/pytorch/issues/2069 - [ ] 需求 - [x] 问题单 - [ ] issue/工单 - [ ] 重构优化 - [ ] 资料更新 # 【修改方案】 > 请描述修改内容的具体实现,涉及哪些组件之间进行交互,可以用1、2、3、...进行罗列\ > 如果是需求或者重构类的PR,需要补充详细设计文档(说明上下游组件关系、时序图、类图、DFX能力等内容) 1. **新增工具函数**: - 在 op_plugin/utils/StdVarCorrectionUtils.h 中新增 correction_fits_aclnn_int64 函数 - 该函数用于检查 correction 参数是否可以精确转换为 int64 类型 - 检查逻辑包括:无值情况、整数类型、非浮点数类型、浮点数范围和精度检查 2. **Std 函数修复**: - 在 op_plugin/ops/aclops/StdKernelNpu.cpp 中的 std_out、std、std_mean 函数中添加 CPU 回退逻辑 - 当 correction 不适合 aclnn 处理时,将计算回退到 CPU 执行,以保证精度 3. **Var 函数修复**: - 在 op_plugin/ops/aclops/VarKernelNpu.cpp 中的 var_out、var、var_mean 函数中添加相同的 CPU 回退逻辑 - 实现方式与 Std 函数类似,确保语义一致性 # 【资料变更】 > 请确认是否涉及资料变更。如涉及,需要在PR中体现,并简要说明修改内容。如不涉及,需填写“不涉及” 不涉及 # 【接口变更】 > 请确认是否涉及跨代码仓或者客户面可见的接口变更。如涉及,需要详细说明接口以及对应的变更内容,同时需要在资料中体现。如不涉及,需填写“不涉及” 不涉及 # 【功能验证】 > 说明测试场景,测试方法。如果本次测试方式与常规单元测试不同,请详细说明您的测试步骤\ > 新增/变更内容是否已新增/适配UT测试用例看护,并补充测试自验证截图    1. **测试场景**: - 整数 correction 情况:确保 NPU 加速正常工作 - 非整数 correction 情况:确保结果与 CPU 版本一致 - 边界值测试:如 correction 为负数、零、大数等情况 - 不同数据类型和维度的张量测试 2. **测试方法**: - 运行现有的 test_std.py 和 test_var.py 测试用例 - 新增针对非整数 correction 的测试用例 - 对比 NPU 和 CPU 版本的计算结果 3. **UT测试**: - 已适配现有 UT 测试用例 - 测试用例覆盖各种 correction 类型和边界情况 # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 \[ ] 为 \[x] - [x] 代码注释完备,正确记录错误日志 - [x] 代码实现进行了返回值、空指针等校验 - [x] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [x] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/op-plugin!4997 | 5 个月前 | |
compat(v2.14): register v2.14, follow upstream #185272 and #187115 Co-authored-by: chz34<chenhaozhe1@huawei.com> # message auto-generated for no-merge-commit merge: !5388 merge compat/2.14 into master compat(v2.14): register v2.14, follow upstream #185272 and #187115 Created-by: c_34 Commit-by: chz34 Merged-by: ascend-robot Description: <!-- PR描述模板更新日期:20260203 --> # 【合入来源】 > <font color="red">**如有社区issue,请关联issue链接**</font>\ > <font color="red">**请勿携带内部流程信息(需求链接、问题单、内部issue等)**</font> - [ ] 需求 - [ ] 问题单 - [x] issue/工单 https://gitcode.com/Ascend/pytorch/issues/2578 , https://gitcode.com/Ascend/pytorch/issues/2594 - [ ] 重构优化 - [ ] 资料更新 # 【修改方案】 > 请描述修改内容的具体实现,涉及哪些组件之间进行交互,可以用1、2、3、...进行罗列\ > 如果是需求或者重构类的PR,需要补充详细设计文档(说明上下游组件关系、时序图、类图、DFX能力等内容) 1. 针对https://gitcode.com/Ascend/pytorch/issues/2578,临时采用python白名单控制转换,依赖隐式转换实现多版本的兼容。正式方案依赖算子补充.out类型,并参照上游进行meta处理与device处理的解耦,特殊算子依赖950硬件验证,后续单独处理 2. 针对https://gitcode.com/Ascend/pytorch/issues/2594,直接补齐缺省参数,天然兼容历史版本,补齐的参数与原默认参数保持一致。 compat(v2.14): register v2.14, follow upstream #185272 and #187115 Register PyTorch 2.14 as a supported minor across op-plugin's version housekeeping so gencode.sh can produce the v2r14 dispatch tables and VERSION_BETWEEN(...) macros compile in a torch 2.14 build: * op_plugin/utils/Version.h -- add #define V2R14 13 and move VERSION_NEWEST from V2R13 to V2R14. Without this, torch 2.14 builds cause CMakeLists.txt to inject -DCURRENT_VERSION=V2R14, which then fails at preprocessing. * op_plugin/config/op_plugin_functions.yaml + derivatives.yaml -- append v2.14 to the all_version list so gencode.sh generates registration entries for v2.14. * gencode.sh -- bump newest_minor_version=13 to 14 so the test/test_v2r{n}_ops loop covers v2r14. * test/test_v2r14_ops/unsupported_ops_info.yaml -- new stub matching the v2r13 template (the header-only comment file; gencode.sh will prepend test/unsupported_ops_info_base.yaml at build time). Also, follow upstream pytorch#185272 which converted _scaled_mm_v2 into a structured operator (landed 2026-06-15, releasing in 2.14). As a side effect, torchgen switched the C++ binding of the Tensor[] scale_a / scale_b params from at::TensorList to const at::ITensorListRef&, so the wrapper generated in torch_npu's RegisterNPU.cpp on 2.14 no longer matches op_plugin::_scaled_mm_v2, which still expects at::TensorList: * torchnpugen/context.py -- add a small op whitelist that force-enables param_use_ilistref_for_tensor_lists for _scaled_mm_v2 regardless of what op_plugin_functions.yaml says. Codegen output for the four interface files now declares scale_a / scale_b as const at::ITensorListRef&; the other 73 ops that use Tensor[] params are untouched. * op_plugin/ops/opapi/ScaledMmV2KernelNpuOpApi.cpp -- change the handwritten impl signature to match, then materialize the ilist inputs into a local at::TensorList at function entry so the existing body -- ten scale_a[i] indexings, .empty() / .size() checks, matcher_fn pass-through -- needs no further edit. Both directions of the boundary are safe without version gating: * On 2.11-2.13, torch_npu's wrapper still passes at::TensorList; IListRef has an implicit constructor from ArrayRef so it converts transparently to const ITensorListRef&. * On 2.14, torch_npu's wrapper passes const at::ITensorListRef& directly and the types match. Follow upstream pytorch#187115, which dropped the includeBool=false default on at::isIntegralType(t): all such callsites in MatmulAllReduceBaseKernelNpuOpApi.cpp, RangeKernelNpuOpApi.cpp, OpUtils.cpp and ScalarOpApi.cpp now pass the second argument explicitly to compile on both 2.13 and 2.14. Users must rerun gencode.sh <version> python3 to regenerate the four untracked interface files after this change; the source-tracked change alone is not enough for a working build. Independent follow-up (not in this commit): upstream 2.14 deprecates c10::value_or_else in favor of std::optional::value_or; op_plugin emits many warnings but no errors. See docs/issue_scaled_mm_v2_structured.md. # 【资料变更】 > 请确认是否涉及资料变更。如涉及,需要在PR中体现,并简要说明修改内容。如不涉及,需填写“不涉及” 不涉及 # 【接口变更】 > 请确认是否涉及跨代码仓或者客户面可见的接口变更。如涉及,需要详细说明接口以及对应的变更内容,同时需要在资料中体现。如不涉及,需填写“不涉及” 不涉及 # 【功能验证】 > 说明测试场景,测试方法。如果本次测试方式与常规单元测试不同,请详细说明您的测试步骤\ > 新增/变更内容是否已新增/适配UT测试用例看护,并补充测试自验证截图 兼容性修改,依赖历史测试用例 # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [x] 代码注释完备,正确记录错误日志 - [x] 代码实现进行了返回值、空指针等校验 - [x] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [x] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/op-plugin!5388 | 3 个月前 | |
[fix]cpp_extension compile Co-authored-by: liangsongwei<liangsongwei@huawei.com> # message auto-generated for no-merge-commit merge: !5640 merge master2 into master [fix]cpp_extension compile Created-by: liangsongwei Commit-by: liangsongwei Merged-by: ascend-robot Description: <!-- PR描述模板更新日期:20260203 --> # 【合入来源】 > <font color="red">**如有社区issue,请关联issue链接**</font>\ > <font color="red">**请勿携带内部流程信息(需求链接、问题单、内部issue等)**</font> - [ ] 需求 - [ ] 问题单 - [x] issue/工单 - [ ] 重构优化 - [ ] 资料更新 # 【修改方案】 解除 ExecuteCachedOp / ExecuteCachedOpV2 函数对 c10_npu::DeterministicSnapshot 完整类型的高耦合,将确定性模式的配置时机 从缓存命中后的执行阶段前置到缓存查询之前。 # 【资料变更】 不涉及 # 【接口变更】 不涉及 # 【功能验证】 cpp_extension编译正常  # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [x] 代码注释完备,正确记录错误日志 - [x] 代码实现进行了返回值、空指针等校验 - [x] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [x] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/op-plugin!5640 | 2 个月前 | |
deterministic level 0/1/2/3 Co-authored-by: chenshuai<chenshuai81@huawei.com> # message auto-generated for no-merge-commit merge: !5500 merge feat717 into master deterministic level 0/1/2/3 Created-by: culechan Commit-by: chenshuai Merged-by: ascend-robot Description: <!-- PR描述模板更新日期:20260203 --> # 【合入来源】 > <font color="red">**如有社区issue,请关联issue链接**</font>\ > <font color="red">**请勿携带内部流程信息(需求链接、问题单、内部issue等)**</font> - [x] 需求 - [ ] 问题单 - [ ] issue/工单 - [ ] 重构优化 - [ ] 资料更新 # 【修改方案】 1、set_deterministic_level接口当前可以支持设置到3. 2、根据cann版本的不同选择不同的下发方式,老版本cann仍使用ACL_OPT_DETERMINISTIC和ACL_OPT_STRONG_CONSISTENCY配合下发,新版本的cann使用ACL_OPT_DETERMINISTIC直接配置 3、原实现只在npu初始化时会下发, 新版本可以实时下发,在算子一阶段前取快照,在一阶段dequeue提交前下发配置。 # 【资料变更】 有修改 # 【接口变更】 torch_npu.npu.set_deterministic_level支持范围扩充到3 # 【功能验证】 多流反复切换deterministic_level,算子侧可以接收到正确的deterministic_level  # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [x] 代码注释完备,正确记录错误日志 - [x] 代码实现进行了返回值、空指针等校验 - [x] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [x] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/op-plugin!5500 | 3 个月前 | |
[fix]cpp_extension compile Co-authored-by: liangsongwei<liangsongwei@huawei.com> # message auto-generated for no-merge-commit merge: !5640 merge master2 into master [fix]cpp_extension compile Created-by: liangsongwei Commit-by: liangsongwei Merged-by: ascend-robot Description: <!-- PR描述模板更新日期:20260203 --> # 【合入来源】 > <font color="red">**如有社区issue,请关联issue链接**</font>\ > <font color="red">**请勿携带内部流程信息(需求链接、问题单、内部issue等)**</font> - [ ] 需求 - [ ] 问题单 - [x] issue/工单 - [ ] 重构优化 - [ ] 资料更新 # 【修改方案】 解除 ExecuteCachedOp / ExecuteCachedOpV2 函数对 c10_npu::DeterministicSnapshot 完整类型的高耦合,将确定性模式的配置时机 从缓存命中后的执行阶段前置到缓存查询之前。 # 【资料变更】 不涉及 # 【接口变更】 不涉及 # 【功能验证】 cpp_extension编译正常  # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [x] 代码注释完备,正确记录错误日志 - [x] 代码实现进行了返回值、空指针等校验 - [x] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [x] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/op-plugin!5640 | 2 个月前 | |
| 1 年前 | ||
feat:opplugin的算子执行添加控核维测日志 Co-authored-by: ChengLyric<licheng236@huawei.com> # message auto-generated for no-merge-commit merge: !4954 merge feat_op_exec_log into master feat:opplugin的算子执行添加控核维测日志 Created-by: Guanam2020 Commit-by: ChengLyric Merged-by: ascend-robot Description: <!-- PR描述模板更新日期:20260203 --> # 【合入来源】 > <font color="red">**如有社区issue,请关联issue链接**</font>\ > <font color="red">**请勿携带内部流程信息(需求链接、问题单、内部issue等)**</font> - [ ] 需求 - [ ] 问题单 - [x] issue/工单https://gitcode.com/Ascend/op-plugin/issues/66 - [ ] 重构优化 - [ ] 资料更新 # 【修改方案】 > 请描述修改内容的具体实现,涉及哪些组件之间进行交互,可以用1、2、3、...进行罗列\ > 如果是需求或者重构类的PR,需要补充详细设计文档(说明上下游组件关系、时序图、类图、DFX能力等内容) 1. 修复OP_EXEC_LOG_WITH_TASK_QUEUE支持aclgraph场景,不再打印scaler tensor 2. 额外增加打印acl_stream、控核信息日志 # 【资料变更】 > 请确认是否涉及资料变更。如涉及,需要在PR中体现,并简要说明修改内容。如不涉及,需填写“不涉及” 不涉及 # 【接口变更】 > 请确认是否涉及跨代码仓或者客户面可见的接口变更。如涉及,需要详细说明接口以及对应的变更内容,同时需要在资料中体现。如不涉及,需填写“不涉及” 不涉及 # 【功能验证】 > 说明测试场景,测试方法。如果本次测试方式与常规单元测试不同,请详细说明您的测试步骤\ > 新增/变更内容是否已新增/适配UT测试用例看护,并补充测试自验证截图 自验证ok # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [x] 代码注释完备,正确记录错误日志 - [x] 代码实现进行了返回值、空指针等校验 - [x] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [x] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/op-plugin!4954 | 5 个月前 | |
[bug]解除op-plugin对NPUCachingAllocator.h依赖 Co-authored-by: LiNuohang<linuohang@huawei.com> # message auto-generated for no-merge-commit merge: !5417 merge twj into master [bug]解除op-plugin对NPUCachingAllocator.h依赖 Created-by: LiNuohang Commit-by: LiNuohang Merged-by: ascend-robot Description: <!-- PR描述模板更新日期:20260203 --> # 【合入来源】 > <font color="red">**如有社区issue,请关联issue链接**</font>\ > <font color="red">**请勿携带内部流程信息(需求链接、问题单、内部issue等)**</font> - [ ] 需求 - [ ] 问题单 - [x] issue/工单 - [ ] 重构优化 - [ ] 资料更新 # 【修改方案】 原引用链:torch_npu/csrc/framework/OpCommand.h->framework/utils/CalcuOpUtil.h->framework/utils/NpuUtils.h->core/npu/NPUCachingAllocator.h 改动NPUCachingAllocator.h会导致934 个 op-plugin 算子ccache缓存失效 解决方案:Utils不应该引用NPUCachingAllocator.h # 【资料变更】 不涉及 # 【接口变更】 不涉及 # 【功能验证】 CI pass即可 修改NPUCachingAllocator.h后,重新编译文件从934下降至73 Cacheable calls: 73 / 73 (100.0%) Hits: 0 / 73 ( 0.00%) Direct: 0 Preprocessed: 0 Misses: 73 / 73 (100.0%) Local storage: Cache size (GB): 10.0 / 10.0 (99.94%) Cleanups: 2 Hits: 0 / 73 ( 0.00%) Misses: 73 / 73 (100.0%) # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [x] 代码注释完备,正确记录错误日志 - [x] 代码实现进行了返回值、空指针等校验 - [x] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [x] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/op-plugin!5417 | 3 个月前 | |
| 1 年前 |
| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
| 3 个月前 | ||
| 3 个月前 | ||
| 3 个月前 | ||
| 2 年前 | ||
| 1 年前 | ||
| 5 个月前 | ||
| 7 个月前 | ||
| 7 个月前 | ||
| 2 个月前 | ||
| 2 个月前 | ||
| 3 个月前 | ||
| 2 年前 | ||
| 2 年前 | ||
| 3 个月前 | ||
| 3 个月前 | ||
| 3 个月前 | ||
| 5 个月前 | ||
| 5 个月前 | ||
| 5 个月前 | ||
| 5 个月前 | ||
| 3 个月前 | ||
| 2 个月前 | ||
| 3 个月前 | ||
| 2 个月前 | ||
| 1 年前 | ||
| 5 个月前 | ||
| 3 个月前 | ||
| 1 年前 |