| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
[Performance]: [v2.10.0]inductor reduce-overhead场景,有FA更新时,FA update动作和模型执行并行 Co-authored-by: Developer user<dingdairong@huawei.com> # message auto-generated for no-merge-commit merge: !43349 merge fa_update_replay_before_update into v2.10.0 [Performance]: [v2.10.0]inductor reduce-overhead场景,有FA更新时,FA update动作和模型执行并行 Created-by: dingdairong Commit-by: Developer user Merged-by: ascend-robot Description: <!-- PR描述模板更新日期:20260203 --> # 【合入来源】 > <font color="red">**如有社区issue,请关联issue链接**</font>\ > <font color="red">**请勿携带内部流程信息(需求链接、问题单、内部issue等)**</font> - [ ] 需求 - [ ] 问题单 - [x] issue/工单 - [ ] 重构优化 - [ ] 资料更新 # 【修改方案】 在 同一 NPUGraphTree key 第三次及以后执行的 replay 路径,如果当前 graph 支持 ACLGraph update、存在 update plan,且 ASCEND_LAUNCH_BLOCKING 未开启,则先拷贝 tensor 输入并异步提交 graph.replay(),再在 update_stream 上提交 ACLGraph update;图内 IFA 前捕获的 external event 会保证 IFA 等到 update 完成后再执行。blocking 场景, 避免卡死,保持旧顺序,先 update 后 replay。 # 【资料变更】 > “不涉及” # 【接口变更】 > 不涉及” # 【功能验证】 > 新增ST验证看护,性能优化效果参考issu中profiling截图 # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [x] 代码注释完备,正确记录错误日志 - [x] 代码实现进行了返回值、空指针等校验 - [x] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [x] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!43349 | 24 天前 | |
[inductor] migrate NPU Fast Launch to ACL host-args API Co-authored-by: erwin<j18636938310@163.com> # message auto-generated for no-merge-commit merge: !44648 merge fixit into v2.10.0 [inductor] migrate NPU Fast Launch to ACL host-args API Created-by: jiabiao_o Commit-by: erwin Merged-by: ascend-robot Description: # 【合入来源】 - [ ] 需求 - [ ] 问题单 - [x] issue/工单 https://gitcode.com/Ascend/pytorch/issues/4099 - [x] 重构优化 - [ ] 资料更新 # 【修改方案】 1. 将 NPU Fast Launch 的 Kernel 启动接口统一迁移至 aclrtLaunchKernelWithHostArgs,移除旧私有接口依赖。 2. SIMT 场景通过 ACL 属性传递动态 UBUF 大小。 3. 更新静态 UT,校验仅使用新的 ACL 启动接口。 # 【资料变更】 不涉及。 # 【接口变更】 不涉及跨仓及客户可见接口变更。 # 【功能验证】 相关静态 UT 及 PR CI 流水线执行通过。 # 【CheckList】 - [x] 代码注释完备,正确记录错误日志 - [x] 代码实现进行了返回值、空指针等校验 - [x] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [x] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!44648 | 6 天前 | |
[inductor] inductor support master Co-authored-by: duchengkun<duchengkun1@huawei.com> # message auto-generated for no-merge-commit merge: merge inductor_master into master [inductor] inductor support master Created-by: duchengkun Commit-by: duchengkun Merged-by: ascend-robot Description: inductor支持master - 在2.的基础上做的修改 - master的修改可以通过[inductor master](https://gitcode.com/Ascend/pytorch/commit/f99438d3eb6fff832f820bdebf4930fd4aa00512?ref=inductor_master&prId=25033)这个commit查看,为了方便检视,暂时不做commit squash See merge request: Ascend/pytorch!25033 | 10 个月前 | |
【inductor】Temporarily close some inductor ci tests, accelarate ci access control Co-authored-by: kkjocker<hexuanyu1@huawei.com> # message auto-generated for no-merge-commit merge: !30305 merge v2.10.0 into v2.10.0 【inductor】Temporarily close some inductor ci tests, accelarate ci access control Created-by: kkjocker Commit-by: kkjocker Merged-by: ascend-robot Description: <!-- Thanks for sending a pull request! --> **What type of PR is this?** > Uncomment only one /kind <> line, hit enter to put that in a new line, and remove leading whitespaces from that line: > > /kind bug > /kind task > /kind feature **What does this PR do / why do we need it**: **Which issue(s) this PR fixes**: <!-- *Automatically closes linked issue when PR is merged. Usage: Fixes #<issue number>, or Fixes (paste link of issue). --> Fixes # **Special notes for your reviewers**: See merge request: Ascend/pytorch!30305 | 6 个月前 | |
eager_init_variable_builder_builtin Co-authored-by: 1479518308<cuiduo1@huawei.com> # message auto-generated for no-merge-commit merge: !41619 merge v2.10.0 into v2.10.0 eager_init_variable_builder_builtin Created-by: cuiduo Commit-by: 1479518308 Merged-by: ascend-robot Description: <!-- PR描述模板更新日期:20260203 --> # 【合入来源】 > <font color="red">**如有社区issue,请关联issue链接**</font>\ > <font color="red">**请勿携带内部流程信息(需求链接、问题单、内部issue等)**</font> - [ ] 需求 - [ ] 问题单 - [ ] issue/工单 - [x] 重构优化 - [ ] 资料更新 # 【修改方案】 1. 将 patch_builtin_variable(及 v2.9.0 上的 patch_variable_builder)从懒触发函数 add_dynamo_methods_init()(首次 torch.compile 时触发)迁移至 import 期执行的 add_dynamo_methods(),确保这两个 Dynamo 内部类 patch 在任何 tracing 启动前就位,避免时序竞态。 2. 在 patch_dynamo_optimize 包裹的 npu_optimize 首行新增 add_dynamo_methods_init() 调用,把懒触发入口从 torch.compile 扩展到 torch._dynamo.optimize 路径,覆盖不经过 inductor wrapper 的 optimize 调用。 3. patch_dynamo_optimize 中 from torch._dynamo import optimize + src_optimize = optimize 合并为 src_optimize = torch._dynamo.optimize 模块内联引用,减少局部名污染。 4. 删除测试文件 test_aclgraph_update_plan_compile.py 中未使用的 import torch_npu._inductor(其余 from torch_npu._inductor.* import 自动导入父包,无影响)。 # 【资料变更】 不涉及 # 【接口变更】 不涉及 # 【功能验证】 - 验证场景:torch.compile 与 torch._dynamo.optimize(backend="npu") 两条编译入口均能正确触发 NPU dynamo patch 初始化。 - 验证方法:复用 test/_inductor 下既有 dynamo/inductor UT 用例看护,重点跑 test_aclgraph_update_plan_compile.py 及 dynamo trace 相关用例。 - UT 看护:本次为 patch 执行时机重构,无新增对外行为,由既有 UT 覆盖;已自验证 import torch_npu 后 patch_builtin_variable 在 eager 阶段生效。 # 【CheckList】 - [x] 代码注释完备,正确记录错误日志 - [x] 代码实现进行了返回值、空指针等校验 - [x] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [x] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!41619 | 1 个月前 | |
move_type_checking_import Co-authored-by: 1479518308<cuiduo1@huawei.com> # message auto-generated for no-merge-commit merge: !40341 merge v2.10.0 into v2.10.0 move_type_checking_import Created-by: cuiduo Commit-by: 1479518308 Merged-by: ascend-robot Description: <!-- PR描述模板更新日期:20260203 --> # 【合入来源】 > <font color="red">**如有社区issue,请关联issue链接**</font>\ > <font color="red">**请勿携带内部流程信息(需求链接、问题单、内部issue等)**</font> - [ ] 需求 - [ ] 问题单 - [ ] issue/工单 - [x] 重构优化 - [ ] 资料更新 # 【修改方案】 > 在import阶段dynamo相关的patch改到compile阶段执行,具体可看关联rfc文档 # 【资料变更】 > 不涉及 # 【接口变更】 > 不涉及 # 【功能验证】 > ci验证通过 # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [x] 代码注释完备,正确记录错误日志 - [x] 代码实现进行了返回值、空指针等校验 - [x] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [x] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!40341 | 1 个月前 | |
add_npu_backend_init_log Co-authored-by: 1479518308<cuiduo1@huawei.com> # message auto-generated for no-merge-commit merge: !39401 merge v2.10.0 into v2.10.0 add_npu_backend_init_log Created-by: cuiduo Commit-by: 1479518308 Merged-by: ascend-robot Description: <!-- PR描述模板更新日期:20260203 --> # 【合入来源】 > <font color="red">**如有社区issue,请关联issue链接**</font>\ > <font color="red">**请勿携带内部流程信息(需求链接、问题单、内部issue等)**</font> - [ ] 需求 - [ ] 问题单 - [x] issue/工单 - [ ] 重构优化 - [ ] 资料更新 # 【修改方案】 > 修复dvm后端stream报错的问题,增加使用后端提示信息 # 【资料变更】 > 不涉及 # 【接口变更】 > 不涉及 # 【功能验证】 > UT已通过 # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [x] 代码注释完备,正确记录错误日志 - [x] 代码实现进行了返回值、空指针等校验 - [x] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [x] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!39401 | 1 个月前 | |
lazy_init Co-authored-by: 1479518308<cuiduo1@huawei.com> # message auto-generated for no-merge-commit merge: !39539 merge v2.10.0 into v2.10.0 lazy_init Created-by: cuiduo Commit-by: 1479518308 Merged-by: ascend-robot Description: <!-- PR描述模板更新日期:20260203 --> # 【合入来源】 > <font color="red">**如有社区issue,请关联issue链接**</font>\ > <font color="red">**请勿携带内部流程信息(需求链接、问题单、内部issue等)**</font> - [ ] 需求 - [ ] 问题单 - [ ] issue/工单 - [x] 重构优化 - [ ] 资料更新 # 【修改方案】 > 在import阶段dynamo相关的patch改到compile阶段执行,具体可看关联rfc文档 # 【资料变更】 > 不涉及 # 【接口变更】 > 不涉及 # 【功能验证】 > ci验证通过 # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [x] 代码注释完备,正确记录错误日志 - [x] 代码实现进行了返回值、空指针等校验 - [x] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [x] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!39539 | 1 个月前 | |
[inductor] Add akg backend ut. Co-authored-by: huawuyi<liuxuehui4@huawei.com> # message auto-generated for no-merge-commit merge: !38510 merge v2.10.0 into v2.10.0 [inductor] Add akg backend ut. Created-by: huawuyi Commit-by: huawuyi Merged-by: ascend-robot Description: <!-- PR描述模板更新日期:20260203 --> # 【合入来源】 > <font color="red">**如有社区issue,请关联issue链接**</font>\ > <font color="red">**请勿携带内部流程信息(需求链接、问题单、内部issue等)**</font> https://gitcode.com/Ascend/pytorch/issues/1962 - [ ] 需求 - [ ] 问题单 - [ ] issue/工单 - [x] 重构优化 - [ ] 资料更新 # 【修改方案】 1、添加了akg后端的ci用例 # 【资料变更】 不涉及 # 【接口变更】 不涉及 # 【功能验证】 > 说明测试场景,测试方法。如果本次测试方式与常规单元测试不同,请详细说明您的测试步骤\ > 新增/变更内容是否已新增/适配UT测试用例看护,并补充测试自验证截图 # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [x] 代码注释完备,正确记录错误日志 - [x] 代码实现进行了返回值、空指针等校验 - [x] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [x] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!38510 | 2 个月前 | |
[inductor] inductor support master Co-authored-by: duchengkun<duchengkun1@huawei.com> # message auto-generated for no-merge-commit merge: merge inductor_master into master [inductor] inductor support master Created-by: duchengkun Commit-by: duchengkun Merged-by: ascend-robot Description: inductor支持master - 在2.的基础上做的修改 - master的修改可以通过[inductor master](https://gitcode.com/Ascend/pytorch/commit/f99438d3eb6fff832f820bdebf4930fd4aa00512?ref=inductor_master&prId=25033)这个commit查看,为了方便检视,暂时不做commit squash See merge request: Ascend/pytorch!25033 | 10 个月前 | |
[Inductor] fix AOTI update_constant_buffer bug Co-authored-by: zhuceHW<zhuce@huawei.com> # message auto-generated for no-merge-commit merge: !41499 merge v2.10.0-dev into v2.10.0 [Inductor] fix AOTI update_constant_buffer bug Created-by: zhucehw Commit-by: zhuceHW Merged-by: ascend-robot Description: <!-- PR描述模板更新日期:20260203 --> # 【合入来源】 https://gitcode.com/Ascend/pytorch/issues/2826?ref=&did=4160764#tid-4160764 - [ ] 需求 - [ ] 问题单 - [x] issue/工单 - [ ] 重构优化 - [ ] 资料更新 # 【修改方案】 1. fix bug of update constant buffer, use auto-detected for memcpy # 【资料变更】 不涉及 # 【接口变更】 不涉及 # 【功能验证】 CI PASS # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [x] 代码注释完备,正确记录错误日志 - [x] 代码实现进行了返回值、空指针等校验 - [x] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [x] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!41499 | 1 个月前 | |
[inductor] inductor support master Co-authored-by: duchengkun<duchengkun1@huawei.com> # message auto-generated for no-merge-commit merge: merge inductor_master into master [inductor] inductor support master Created-by: duchengkun Commit-by: duchengkun Merged-by: ascend-robot Description: inductor支持master - 在2.的基础上做的修改 - master的修改可以通过[inductor master](https://gitcode.com/Ascend/pytorch/commit/f99438d3eb6fff832f820bdebf4930fd4aa00512?ref=inductor_master&prId=25033)这个commit查看,为了方便检视,暂时不做commit squash See merge request: Ascend/pytorch!25033 | 10 个月前 | |
[inductor] inductor support master Co-authored-by: duchengkun<duchengkun1@huawei.com> # message auto-generated for no-merge-commit merge: merge inductor_master into master [inductor] inductor support master Created-by: duchengkun Commit-by: duchengkun Merged-by: ascend-robot Description: inductor支持master - 在2.的基础上做的修改 - master的修改可以通过[inductor master](https://gitcode.com/Ascend/pytorch/commit/f99438d3eb6fff832f820bdebf4930fd4aa00512?ref=inductor_master&prId=25033)这个commit查看,为了方便检视,暂时不做commit squash See merge request: Ascend/pytorch!25033 | 10 个月前 | |
[inductor] inductor support master Co-authored-by: duchengkun<duchengkun1@huawei.com> # message auto-generated for no-merge-commit merge: merge inductor_master into master [inductor] inductor support master Created-by: duchengkun Commit-by: duchengkun Merged-by: ascend-robot Description: inductor支持master - 在2.的基础上做的修改 - master的修改可以通过[inductor master](https://gitcode.com/Ascend/pytorch/commit/f99438d3eb6fff832f820bdebf4930fd4aa00512?ref=inductor_master&prId=25033)这个commit查看,为了方便检视,暂时不做commit squash See merge request: Ascend/pytorch!25033 | 10 个月前 | |
[inductor]sync graph optimization and multi stream ut Co-authored-by: zhoujinning<zhoujinning2@huawei.com> # message auto-generated for no-merge-commit merge: !44482 merge v210 into v2.10.0 [inductor]sync graph optimization and multi stream ut Created-by: zhoujinning Commit-by: zhoujinning Merged-by: ascend-robot Description: [#3978](https://gitcode.com/Ascend/pytorch/issues/3978) <!-- PR描述模板更新日期:20260203 --> # 【合入来源】 > <font color="red">**如有社区issue,请关联issue链接**</font>\ > <font color="red">**请勿携带内部流程信息(需求链接、问题单、内部issue等)**</font> - [ ] 需求 - [ ] 问题单 - [ ] issue/工单 - [ ] 重构优化 - [ ] 资料更新 # 【修改方案】 > 请描述修改内容的具体实现,涉及哪些组件之间进行交互,可以用1、2、3、...进行罗列\ > 如果是需求或者重构类的PR,需要补充详细设计文档(说明上下游组件关系、时序图、类图、DFX能力等内容) # 【资料变更】 > 请确认是否涉及资料变更。如涉及,需要在PR中体现,并简要说明修改内容。如不涉及,需填写“不涉及” # 【接口变更】 > 请确认是否涉及跨代码仓或者客户面可见的接口变更。如涉及,需要详细说明接口以及对应的变更内容,同时需要在资料中体现。如不涉及,需填写“不涉及” # 【功能验证】 > 说明测试场景,测试方法。如果本次测试方式与常规单元测试不同,请详细说明您的测试步骤\ > 新增/变更内容是否已新增/适配UT测试用例看护,并补充测试自验证截图 # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [ ] 代码注释完备,正确记录错误日志 - [ ] 代码实现进行了返回值、空指针等校验 - [ ] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [ ] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!44482 | 7 天前 | |
lower _assert_scalar op Co-authored-by: lihui<lihui488@huawei.com> # message auto-generated for no-merge-commit merge: !28611 merge asmaster into master lower _assert_scalar op Created-by: lihui488 Commit-by: lihui Merged-by: ascend-robot Description: <!-- Thanks for sending a pull request! --> **What type of PR is this?** > Uncomment only one /kind <> line, hit enter to put that in a new line, and remove leading whitespaces from that line: > > /kind bug **What does this PR do / why do we need it**: 客户现场问题,动态shape的_assert_scalar fallback后会报错;triton里面有三行死代码,特定情况下也会报错 **Which issue(s) this PR fixes**: <!-- *Automatically closes linked issue when PR is merged. Usage: Fixes #<issue number>, or Fixes (paste link of issue). --> Fixes # **Special notes for your reviewers**: See merge request: Ascend/pytorch!28611 | 7 个月前 | |
【inductor】fix inductor ci bug Co-authored-by: kkjocker<hexuanyu1@huawei.com> # message auto-generated for no-merge-commit merge: !30175 merge v2.10.0_main into v2.10.0 【inductor】fix inductor ci bug Created-by: kkjocker Commit-by: kkjocker Merged-by: ascend-robot Description: <!-- Thanks for sending a pull request! --> **What type of PR is this?** > Uncomment only one /kind <> line, hit enter to put that in a new line, and remove leading whitespaces from that line: > > /kind bug > /kind task > /kind feature **What does this PR do / why do we need it**: 修复inductor ci问题 **Which issue(s) this PR fixes**: <!-- *Automatically closes linked issue when PR is merged. Usage: Fixes #<issue number>, or Fixes (paste link of issue). --> Fixes # **Special notes for your reviewers**: See merge request: Ascend/pytorch!30175 | 6 个月前 | |
fix(inductor): keep autotune from nesting a profiler session Co-authored-by: xudezheng<xudezheng1@huawei.com> # message auto-generated for no-merge-commit merge: !44117 merge symbolic_bug_fix into v2.10.0 fix(inductor): keep autotune from nesting a profiler session Created-by: crazyDannyBoy Commit-by: xudezheng Merged-by: ascend-robot Description: <!-- PR描述模板更新日期:20260203 --> # 【合入来源】 > <font color="red">**如有社区issue,请关联issue链接**</font>\ > <font color="red">**请勿携带内部流程信息(需求链接、问题单、内部issue等)**</font> - [ ] 需求 - [ ] 问题单 - [ ] issue/工单 - [ ] 重构优化 - [ ] 资料更新 # 【修改方案】 > 请描述修改内容的具体实现,涉及哪些组件之间进行交互,可以用1、2、3、...进行罗列\ > 如果是需求或者重构类的PR,需要补充详细设计文档(说明上下游组件关系、时序图、类图、DFX能力等内容) # 【资料变更】 > 请确认是否涉及资料变更。如涉及,需要在PR中体现,并简要说明修改内容。如不涉及,需填写“不涉及” # 【接口变更】 > 请确认是否涉及跨代码仓或者客户面可见的接口变更。如涉及,需要详细说明接口以及对应的变更内容,同时需要在资料中体现。如不涉及,需填写“不涉及” # 【功能验证】 > 说明测试场景,测试方法。如果本次测试方式与常规单元测试不同,请详细说明您的测试步骤\ > 新增/变更内容是否已新增/适配UT测试用例看护,并补充测试自验证截图 # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [ ] 代码注释完备,正确记录错误日志 - [ ] 代码实现进行了返回值、空指针等校验 - [ ] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [ ] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!44117 | 13 天前 | |
【inductor】fix inductor ci bug Co-authored-by: kkjocker<hexuanyu1@huawei.com> # message auto-generated for no-merge-commit merge: !30175 merge v2.10.0_main into v2.10.0 【inductor】fix inductor ci bug Created-by: kkjocker Commit-by: kkjocker Merged-by: ascend-robot Description: <!-- Thanks for sending a pull request! --> **What type of PR is this?** > Uncomment only one /kind <> line, hit enter to put that in a new line, and remove leading whitespaces from that line: > > /kind bug > /kind task > /kind feature **What does this PR do / why do we need it**: 修复inductor ci问题 **Which issue(s) this PR fixes**: <!-- *Automatically closes linked issue when PR is merged. Usage: Fixes #<issue number>, or Fixes (paste link of issue). --> Fixes # **Special notes for your reviewers**: See merge request: Ascend/pytorch!30175 | 6 个月前 | |
[inductor] inductor support master Co-authored-by: duchengkun<duchengkun1@huawei.com> # message auto-generated for no-merge-commit merge: merge inductor_master into master [inductor] inductor support master Created-by: duchengkun Commit-by: duchengkun Merged-by: ascend-robot Description: inductor支持master - 在2.的基础上做的修改 - master的修改可以通过[inductor master](https://gitcode.com/Ascend/pytorch/commit/f99438d3eb6fff832f820bdebf4930fd4aa00512?ref=inductor_master&prId=25033)这个commit查看,为了方便检视,暂时不做commit squash See merge request: Ascend/pytorch!25033 | 10 个月前 | |
api_trace_rule_changes Co-authored-by: sunhaolun<sunhaolun3@huawei.com> # message auto-generated for no-merge-commit merge: !30546 merge v2.10.0 into v2.10.0 api_trace_rule_changes Created-by: sunhaolun Commit-by: sunhaolun Merged-by: ascend-robot Description: <!-- PR描述模板更新日期:20260203 --> # 【合入来源】 > (如有)请关联需求文档/issue链接 - [x] 需求 - [ ] 问题单 - [ ] issue/工单 - [ ] 重构优化 - [ ] 资料更新 # 【修改方案】 修改trace_rule.py文件,确保NPU部分API在图模式下,入图行为与标杆一致。修改set-rng_state函数处理多余算子以及torch.npu.current_device白名单处理以确保算子生成fx图与标杆一致。 # 【资料变更】 不涉及 # 【接口变更】 不涉及 # 【功能验证】 新增测试文件test/_inductor/test_npu_current_device.py,参与ut看护 # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [x] 代码注释完备,正确记录错误日志 - [x] 代码实现进行了返回值、空指针等校验 - [x] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [x] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!30546 | 6 个月前 | |
[Fix] Fix static check errors detected by SPACES Co-authored-by: huangjingwei<huangjingwei4@huawei.com> # message auto-generated for no-merge-commit merge: !36365 merge v2.10.0_lintrunner into v2.10.0 [Fix] Fix static check errors detected by SPACES Created-by: huangjingwei Commit-by: huangjingwei Merged-by: ascend-robot Description: <!-- PR描述模板更新日期:20260203 --> # 【合入来源】 > <font color="red">**如有社区issue,请关联issue链接**</font>\ > <font color="red">**请勿携带内部流程信息(需求链接、问题单、内部issue等)**</font> - [ ] 需求 - [ ] 问题单 - [x] issue/工单 - [ ] 重构优化 - [ ] 资料更新 # 【修改方案】 检测和删除代码中的行尾空白字符 # 【资料变更】 不涉及 # 【接口变更】 不涉及 # 【功能验证】 不涉及 # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [x] 代码注释完备,正确记录错误日志 - [x] 代码实现进行了返回值、空指针等校验 - [x] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [x] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!36365 | 3 个月前 | |
[inductor][ut] unskip ut Co-authored-by: qiaoyaodan<qiaoyaodan@huawei.com> # message auto-generated for no-merge-commit merge: !44254 merge fix_aoti_bug_v2100 into v2.10.0 [inductor][ut] unskip ut Created-by: qiaoyaodan888 Commit-by: qiaoyaodan Merged-by: ascend-robot Description: <!-- PR描述模板更新日期:20260203 --> # 【合入来源】 > <font color="red">**如有社区issue,请关联issue链接**</font>\ > <font color="red">**请勿携带内部流程信息(需求链接、问题单、内部issue等)**</font> - [ ] 需求 - [ ] 问题单 - [ ] issue/工单 - [ ] 重构优化 - [ ] 资料更新 # 【修改方案】 之前有一部分ut在2.10.0上面会莫名其妙跑超时,所以当时将这些ut暂时skip,现在解除skip # 【资料变更】 > 请确认是否涉及资料变更。如涉及,需要在PR中体现,并简要说明修改内容。如不涉及,需填写“不涉及” # 【接口变更】 > 请确认是否涉及跨代码仓或者客户面可见的接口变更。如涉及,需要详细说明接口以及对应的变更内容,同时需要在资料中体现。如不涉及,需填写“不涉及” # 【功能验证】 > 说明测试场景,测试方法。如果本次测试方式与常规单元测试不同,请详细说明您的测试步骤\ > 新增/变更内容是否已新增/适配UT测试用例看护,并补充测试自验证截图 # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [ ] 代码注释完备,正确记录错误日志 - [ ] 代码实现进行了返回值、空指针等校验 - [ ] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [ ] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!44254 | 13 天前 | |
2.10 inductor代码同步 Co-authored-by: p00669756<pangjiayi@huawei.com> # message auto-generated for no-merge-commit merge: !39073 merge pta210_0622 into v2.10.0 2.10 inductor代码同步 Created-by: TonyYA Commit-by: p00669756;TonyYA Merged-by: ascend-robot Description: <!-- PR描述模板更新日期:20260203 --> # 【合入来源】 https://gitcode.com/Ascend/pytorch/issues/2487 - [x] 需求 - [ ] 问题单 - [ ] issue/工单 - [ ] 重构优化 - [ ] 资料更新 # 【修改方案】 同步2.9 inductor修改至2.10,同时关闭社区默认打开的mix_order_reduction # 【资料变更】 > 请确认是否涉及资料变更。如涉及,需要在PR中体现,并简要说明修改内容。如不涉及,需填写“不涉及” # 【接口变更】 > 请确认是否涉及跨代码仓或者客户面可见的接口变更。如涉及,需要详细说明接口以及对应的变更内容,同时需要在资料中体现。如不涉及,需填写“不涉及” # 【功能验证】 模型验证结果: https://onebox.huawei.com/v/6d6647cf5de9b3f8a5118370ddb7a875?type=1&sheet=2.10%E6%A8%A1%E5%9E%8B%E6%B5%8B%E8%AF%95 # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [x] 代码注释完备,正确记录错误日志 - [x] 代码实现进行了返回值、空指针等校验 - [x] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [x] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!39073 | 1 个月前 | |
[inductor][ut] unskip ut Co-authored-by: qiaoyaodan<qiaoyaodan@huawei.com> # message auto-generated for no-merge-commit merge: !44254 merge fix_aoti_bug_v2100 into v2.10.0 [inductor][ut] unskip ut Created-by: qiaoyaodan888 Commit-by: qiaoyaodan Merged-by: ascend-robot Description: <!-- PR描述模板更新日期:20260203 --> # 【合入来源】 > <font color="red">**如有社区issue,请关联issue链接**</font>\ > <font color="red">**请勿携带内部流程信息(需求链接、问题单、内部issue等)**</font> - [ ] 需求 - [ ] 问题单 - [ ] issue/工单 - [ ] 重构优化 - [ ] 资料更新 # 【修改方案】 之前有一部分ut在2.10.0上面会莫名其妙跑超时,所以当时将这些ut暂时skip,现在解除skip # 【资料变更】 > 请确认是否涉及资料变更。如涉及,需要在PR中体现,并简要说明修改内容。如不涉及,需填写“不涉及” # 【接口变更】 > 请确认是否涉及跨代码仓或者客户面可见的接口变更。如涉及,需要详细说明接口以及对应的变更内容,同时需要在资料中体现。如不涉及,需填写“不涉及” # 【功能验证】 > 说明测试场景,测试方法。如果本次测试方式与常规单元测试不同,请详细说明您的测试步骤\ > 新增/变更内容是否已新增/适配UT测试用例看护,并补充测试自验证截图 # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [ ] 代码注释完备,正确记录错误日志 - [ ] 代码实现进行了返回值、空指针等校验 - [ ] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [ ] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!44254 | 13 天前 | |
[inductor] inductor support master Co-authored-by: duchengkun<duchengkun1@huawei.com> # message auto-generated for no-merge-commit merge: merge inductor_master into master [inductor] inductor support master Created-by: duchengkun Commit-by: duchengkun Merged-by: ascend-robot Description: inductor支持master - 在2.的基础上做的修改 - master的修改可以通过[inductor master](https://gitcode.com/Ascend/pytorch/commit/f99438d3eb6fff832f820bdebf4930fd4aa00512?ref=inductor_master&prId=25033)这个commit查看,为了方便检视,暂时不做commit squash See merge request: Ascend/pytorch!25033 | 10 个月前 | |
fix: pass map_location to _legacy_load in torch_npu.utils.load for torch.compile cache Co-authored-by: wuyouqi1<wuyouqi1@h-partners.com> # message auto-generated for no-merge-commit merge: !43272 merge v2.10.0-restore-load into v2.10.0 fix: pass map_location to _legacy_load in torch_npu.utils.load for torch.compile cache Created-by: wuyouqi1 Commit-by: wuyouqi1 Merged-by: ascend-robot Description: <!-- PR描述模板更新日期:20260203 --> # 【合入来源】 关联 issue: https://gitcode.com/Ascend/pytorch/issues/3005 (Fixes #3005) 恢复 torch_npu.utils.load 在 legacy(非 zip)加载分支对 map_location 的透传,修复 torch.compile 缓存加载在 NPU 上的功能问题。此前该改动被 fix: Revert "modifty torch_npu.utils.load for torch.compile cache use" 回退,本次恢复原始修改。 - [ ] 需求 - [ ] 问题单 - [x] issue/工单 - [ ] 重构优化 - [ ] 资料更新 # 【修改方案】 1. torch_npu/utils/serialization.py 的 load 函数中,当走 legacy 加载分支且未命中 (torch.device, str) 类型分支时,将 _legacy_load(opened_file, "cpu", ...) 改为 _legacy_load(opened_file, map_location, ...),使加载结果按 map_location 正确映射到目标设备,保证 torch.compile 缓存场景下的加载行为正确。 2. test/npu/test_serialization.py 恢复 test_legacy_load_maplocation 用例,覆盖 legacy load 的 map_location 映射。 本修改等价于恢复 "modifty torch_npu.utils.load for torch.compile cache use" 的原始改动,仅涉及上述两个文件。 # 【资料变更】 不涉及 # 【接口变更】 不涉及 # 【功能验证】 - 场景:torch_npu.utils.load 在 legacy 分支下的 map_location 映射;torch.compile 缓存加载。 - 方法:运行单测 test/npu/test_serialization.py::TestSerialization::test_legacy_load_maplocation。 - 新增/变更内容已通过 test_legacy_load_maplocation UT 用例看护。 # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [x] 代码注释完备,正确记录错误日志 - [x] 代码实现进行了返回值、空指针等校验 - [x] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [ ] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!43272 | 23 天前 | |
fix_device_dynamo_trace Co-authored-by: sunhaolun<sunhaolun3@huawei.com> # message auto-generated for no-merge-commit merge: !31560 merge v2.10.0 into v2.10.0 fix_device_dynamo_trace Created-by: sunhaolun Commit-by: sunhaolun Merged-by: ascend-robot Description: <!-- PR描述模板更新日期:20260203 --> # 【合入来源】 > <font color="red">**如有社区issue,请关联issue链接**</font>\ > <font color="red">**请勿携带内部流程信息(需求链接、问题单、内部issue等)**</font> - [ ] 需求 - [ ] 问题单 - [x] issue/工单 - [ ] 重构优化 - [ ] 资料更新 # 【修改方案】 现场问题 torch.device在原生中为skipVariable 而pta把他归为TorchInGraphFunctionVariable,在dynamo阶段会出现trcae失败的问题。 # 【资料变更】 不涉及 # 【接口变更】 不涉及 # 【功能验证】 社区issue测试,以及现场问题反馈的用例 # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [x] 代码注释完备,正确记录错误日志 - [x] 代码实现进行了返回值、空指针等校验 - [x] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [x] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!31560 | 5 个月前 | |
move_npu_patch_meta_to_module_level Co-authored-by: 1479518308<cuiduo1@huawei.com> # message auto-generated for no-merge-commit merge: !39681 merge v2.10.0 into v2.10.0 move_npu_patch_meta_to_module_level Created-by: cuiduo Commit-by: 1479518308 Merged-by: ascend-robot Description: <!-- PR描述模板更新日期:20260203 --> # 【合入来源】 > <font color="red">**如有社区issue,请关联issue链接**</font>\ > <font color="red">**请勿携带内部流程信息(需求链接、问题单、内部issue等)**</font> - [ ] 需求 - [ ] 问题单 - [x] issue/工单 - [ ] 重构优化 - [ ] 资料更新 # 【修改方案】 > meta_register做lazy_init,将meta注册逻辑修改为公共逻辑 # 【资料变更】 > 不涉及 # 【接口变更】 > 不涉及 # 【功能验证】 > 说明测试场景,测试方法。如果本次测试方式与常规单元测试不同,请详细说明您的测试步骤\ > 新增/变更内容是否已新增/适配UT测试用例看护,并补充测试自验证截图 # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [x] 代码注释完备,正确记录错误日志 - [x] 代码实现进行了返回值、空指针等校验 - [x] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [x] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!39681 | 1 个月前 | |
cpu_compile Co-authored-by: sunhaolun<sunhaolun3@huawei.com> # message auto-generated for no-merge-commit merge: !28484 merge master into master cpu_compile Created-by: sunhaolun Commit-by: sunhaolun Merged-by: ascend-robot Description: <!-- Thanks for sending a pull request! --> **What type of PR is this?** > Uncomment only one /kind <> line, hit enter to put that in a new line, and remove leading whitespaces from that line: > > /kind bug > /kind task > /kind feature **What does this PR do / why do we need it**: **Which issue(s) this PR fixes**: <!-- *Automatically closes linked issue when PR is merged. Usage: Fixes #<issue number>, or Fixes (paste link of issue). --> Fixes # 解决了在cpu上运行torch.compile时会遇到device_op_overrides_dict中不存在"cpu"key的问题 **Special notes for your reviewers**: See merge request: Ascend/pytorch!28484 | 7 个月前 | |
perf: defer dynamo and inductor imports on v2.10.0 (#2788) Co-authored-by: stevenaw0<huangguijun@huawei.com> # message auto-generated for no-merge-commit merge: !44372 merge import_opt_pr2_v2.10.0 into v2.10.0 perf: defer dynamo and inductor imports on v2.10.0 (#2788) Created-by: stevenaw0 Commit-by: stevenaw0 Merged-by: ascend-robot Description: # 【合入来源】 > 同步 v2.9.0_import 分支的 import 优化 PR (#2788),commit 范围 8fe9dbf643..e00227b824(19个commit) - [x] 重构优化 # 【修改方案】 > 将 torch._dynamo 和 torch._inductor 的导入延迟到首次 torch.compile 调用,减少 torch_npu 导入时间。 1. 从 registry_manager._register_components() 中移除 _register_dynamo(),改为延迟注册 2. 在 _dynamo.py 中实现 lazy setup 机制:_lazy_dynamo_setup / _lazy_inductor_setup / _setup_inductor_for_compile 3. 在 setup.py 中注册 torch_dynamo_backends entry points(npu / npugraph_ex / npugraphs) 4. 在 dynamo/__init__.py 中新增 entry point callable 和 _NpugraphsBackendEntryPoint 5. 将 npugraph_ex、npugraphs、deterministic 等模块改为 lazy import 6. 新增 _graph_tree_state.py 轻量状态模块,分离 mark_step_begin 状态 7. 清理 erfc decomposition 注册前重复 ## v2.10.0 适配(Adapted) - EventVariable 在 PyTorch 2.10 中从 ctx_manager 移至 streams 模块 - 移除 patch_variable_builder:PyTorch 2.10 原生 VariableBuilder._wrap 已处理 torch.Event(含 npu 子类) - 保留 v2.10.0 独有的 patch_npu_stream_context 和 apply_dataclass_with_cached_hash_patch - 保留 v2.10.0 独有的 aten.addmm 和 aten.repeat_interleave decomposition # 【资料变更】 不涉及 # 【接口变更】 不涉及 # 【功能验证】 - test/dynamo/test_compile_trigger.py: 21 passed, 1 skipped (onnxscript 未安装) - test/test_torch_npu_init.py: 15 passed - test/_inductor/test_current_device.py: 1 passed - 验证环境: conda torch-npu-2.10.0-py311 - test_mlir_enable.py 失败为 MLIR 后端已有问题(_module_lowering API mismatch),非本次改动引入 # 【CheckList】 - [x] 代码注释完备,正确记录错误日志 - [x] 代码实现进行了返回值、空指针等校验 - [x] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [ ] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!44372 | 12 天前 | |
动态shape场景下表达式中存在Max及除数是符号变量的单项式//和%运算适配 Co-authored-by: zhoujinning<zhoujinning2@huawei.com> # message auto-generated for no-merge-commit merge: !42762 merge v210_0 into v2.10.0 动态shape场景下表达式中存在Max及除数是符号变量的单项式//和%运算适配 Created-by: zhoujinning Commit-by: zhoujinning Merged-by: ascend-robot Description: [#3358](https://gitcode.com/Ascend/pytorch/issues/3358) <!-- PR描述模板更新日期:20260203 --> # 【合入来源】 > <font color="red">**如有社区issue,请关联issue链接**</font>\ > <font color="red">**请勿携带内部流程信息(需求链接、问题单、内部issue等)**</font> - [ ] 需求 - [ ] 问题单 - [ ] issue/工单 - [ ] 重构优化 - [ ] 资料更新 # 【修改方案】 > 请描述修改内容的具体实现,涉及哪些组件之间进行交互,可以用1、2、3、...进行罗列\ > 如果是需求或者重构类的PR,需要补充详细设计文档(说明上下游组件关系、时序图、类图、DFX能力等内容) # 【资料变更】 > 请确认是否涉及资料变更。如涉及,需要在PR中体现,并简要说明修改内容。如不涉及,需填写“不涉及” # 【接口变更】 > 请确认是否涉及跨代码仓或者客户面可见的接口变更。如涉及,需要详细说明接口以及对应的变更内容,同时需要在资料中体现。如不涉及,需填写“不涉及” # 【功能验证】 > 说明测试场景,测试方法。如果本次测试方式与常规单元测试不同,请详细说明您的测试步骤\ > 新增/变更内容是否已新增/适配UT测试用例看护,并补充测试自验证截图 # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [ ] 代码注释完备,正确记录错误日志 - [ ] 代码实现进行了返回值、空指针等校验 - [ ] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [ ] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!42762 | 29 天前 | |
[inductor] inductor support master Co-authored-by: duchengkun<duchengkun1@huawei.com> # message auto-generated for no-merge-commit merge: merge inductor_master into master [inductor] inductor support master Created-by: duchengkun Commit-by: duchengkun Merged-by: ascend-robot Description: inductor支持master - 在2.的基础上做的修改 - master的修改可以通过[inductor master](https://gitcode.com/Ascend/pytorch/commit/f99438d3eb6fff832f820bdebf4930fd4aa00512?ref=inductor_master&prId=25033)这个commit查看,为了方便检视,暂时不做commit squash See merge request: Ascend/pytorch!25033 | 10 个月前 | |
[inductor][ut] unskip ut Co-authored-by: qiaoyaodan<qiaoyaodan@huawei.com> # message auto-generated for no-merge-commit merge: !44254 merge fix_aoti_bug_v2100 into v2.10.0 [inductor][ut] unskip ut Created-by: qiaoyaodan888 Commit-by: qiaoyaodan Merged-by: ascend-robot Description: <!-- PR描述模板更新日期:20260203 --> # 【合入来源】 > <font color="red">**如有社区issue,请关联issue链接**</font>\ > <font color="red">**请勿携带内部流程信息(需求链接、问题单、内部issue等)**</font> - [ ] 需求 - [ ] 问题单 - [ ] issue/工单 - [ ] 重构优化 - [ ] 资料更新 # 【修改方案】 之前有一部分ut在2.10.0上面会莫名其妙跑超时,所以当时将这些ut暂时skip,现在解除skip # 【资料变更】 > 请确认是否涉及资料变更。如涉及,需要在PR中体现,并简要说明修改内容。如不涉及,需填写“不涉及” # 【接口变更】 > 请确认是否涉及跨代码仓或者客户面可见的接口变更。如涉及,需要详细说明接口以及对应的变更内容,同时需要在资料中体现。如不涉及,需填写“不涉及” # 【功能验证】 > 说明测试场景,测试方法。如果本次测试方式与常规单元测试不同,请详细说明您的测试步骤\ > 新增/变更内容是否已新增/适配UT测试用例看护,并补充测试自验证截图 # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [ ] 代码注释完备,正确记录错误日志 - [ ] 代码实现进行了返回值、空指针等校验 - [ ] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [ ] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!44254 | 13 天前 | |
rewrite_dropout_meta_and_decompose Co-authored-by: sunhaolun<sunhaolun3@huawei.com> # message auto-generated for no-merge-commit merge: !33670 merge v2.10.0 into v2.10.0 rewrite_dropout_meta_and_decompose Created-by: sunhaolun Commit-by: sunhaolun Merged-by: ascend-robot Description: <!-- PR描述模板更新日期:20260203 --> # 【合入来源】 > <font color="red">**如有社区issue,请关联issue链接**</font>\ > <font color="red">**请勿携带内部流程信息(需求链接、问题单、内部issue等)**</font> - [ ] 需求 - [ ] 问题单 - [ ] issue/工单 - [x] 重构优化 - [ ] 资料更新 # 【修改方案】 把mlir和triton侧对dropout以及dropout_backward的meta和decompose注册整合到了新的文件torch_npu/utils/_npu_meta_registration.py中,避免框架中的多余注册,并添加了UT对dropout进行看护。 # 【资料变更】 不涉及 # 【接口变更】 不涉及 # 【功能验证】 补充UT,并且触发了框架的UT,运行通过。 # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [x] 代码注释完备,正确记录错误日志 - [x] 代码实现进行了返回值、空指针等校验 - [x] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [x] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!33670 | 4 个月前 | |
2.10 inductor代码同步 Co-authored-by: p00669756<pangjiayi@huawei.com> # message auto-generated for no-merge-commit merge: !39073 merge pta210_0622 into v2.10.0 2.10 inductor代码同步 Created-by: TonyYA Commit-by: p00669756;TonyYA Merged-by: ascend-robot Description: <!-- PR描述模板更新日期:20260203 --> # 【合入来源】 https://gitcode.com/Ascend/pytorch/issues/2487 - [x] 需求 - [ ] 问题单 - [ ] issue/工单 - [ ] 重构优化 - [ ] 资料更新 # 【修改方案】 同步2.9 inductor修改至2.10,同时关闭社区默认打开的mix_order_reduction # 【资料变更】 > 请确认是否涉及资料变更。如涉及,需要在PR中体现,并简要说明修改内容。如不涉及,需填写“不涉及” # 【接口变更】 > 请确认是否涉及跨代码仓或者客户面可见的接口变更。如涉及,需要详细说明接口以及对应的变更内容,同时需要在资料中体现。如不涉及,需填写“不涉及” # 【功能验证】 模型验证结果: https://onebox.huawei.com/v/6d6647cf5de9b3f8a5118370ddb7a875?type=1&sheet=2.10%E6%A8%A1%E5%9E%8B%E6%B5%8B%E8%AF%95 # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [x] 代码注释完备,正确记录错误日志 - [x] 代码实现进行了返回值、空指针等校验 - [x] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [x] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!39073 | 1 个月前 | |
[sync] PR-37502: 【feature】remove elu and elubackward in decomp Co-authored-by: hb_hubin<hubin79@huawei.com> # message auto-generated for no-merge-commit merge: !37721 merge sync-pr37502-fix-dvm-2.7.1-to-v2.10.0 into v2.10.0 [sync] PR-37502: 【feature】remove elu and elubackward in decomp Created-by: ascend-ds-bot Commit-by: hb_hubin Merged-by: ascend-robot Description: ### 1. Origin pull request: https://gitcode.com/Ascend/pytorch/merge_requests/37502 ### 2. Original pull request related issue(s): https://gitcode.com/Ascend/pytorch/issues/1978 ### 3. Original pull request related commit(s): | Sha | Datetime | Message | |---|---|---| |[d2a36ff2](https://gitcode.com/Ascend/pytorch/commit/d2a36ff23dae0aac784bea548a8845edd9e07984)|2026-06-05 11:23:58 +0800 CST|remove elu and elubackward in decomp<br>| See merge request: Ascend/pytorch!37721 | 2 个月前 | |
fix(dvm): guard stride patch behind is_fx_dynamic in fallback kernel. Co-authored-by: Margaret_wangrui<wangrui178@huawei.com> # message auto-generated for no-merge-commit merge: !37883 merge v2.10.0_empty_strided into v2.10.0 fix(dvm): guard stride patch behind is_fx_dynamic in fallback kernel. Created-by: Margaret_wangrui Commit-by: Margaret_wangrui Merged-by: ascend-robot Description: <!-- PR描述模板更新日期:20260203 --> # 【合入来源】 - [ ] 需求 - [x] 问题单 - [ ] issue/工单 - [ ] 重构优化 - [ ] 资料更新 https://gitcode.com/Ascend/pytorch/issues/2319 **说明**:修复 DVM 图融合在动态 shape 场景下 codegen 失败的问题。动态子图中 Inductor buffer stride 为符号表达式,仍调用 patch_gm_placeholder_strides_from_codegen_args 会在 torch.empty_strided 处触发 TypeError(stride 含 Mul 等非 int 元素)。 # 【修改方案】 1. **问题根因**:_dvm_generate_fallback_kernel 在生成 dvm::fused_graph_* fallback kernel 时,无条件调用 patch_gm_placeholder_strides_from_codegen_args,将 Inductor buffer 的真实 stride 写回 fused subgraph placeholder 的 meta["val"]。静态 shape 下该逻辑用于选择 k.view_load 路径;动态 shape 下 stride 为 SymInt/符号表达式,无法构造合法 fake tensor,导致 codegen 异常。 2. **修改内容**:在 torch_npu/_inductor/dvm/graph_fusion.py 的 _dvm_generate_fallback_kernel 中,引入 is_fx_dynamic(来自 graph_build.py),**仅当 fused subgraph 非动态 shape 时**才执行 stride patch: python if not is_fx_dynamic(meta.gm): patch_gm_placeholder_strides_from_codegen_args(meta.gm, args_list) 3. **行为说明**: - **静态 shape**:行为不变,继续 patch stride,支持 padding row stride 等非 contiguous 场景的 view_load 优化。 - **动态 shape**:跳过 patch,由 DvmCodegenInterpreter 走 dyn_shape=True 与 codegen_maybe_view_load 的 symbolic 分支,使用 k.load 并在必要时由 .contiguous() 保证输入合法。 4. **涉及组件**:Inductor PythonWrapperCodegen.generate_fallback_kernel(DVM patch 点)→ graph_fusion._dvm_generate_fallback_kernel → util.patch_gm_placeholder_strides_from_codegen_args / graph_build.DvmCodegenInterpreter。 # 【资料变更】 不涉及 # 【接口变更】 不涉及 本次修改仅影响 DVM 图融合内部 codegen 逻辑,不涉及对外 Python/C++ API 及跨仓接口变更。 # 【功能验证】 **测试场景** | 场景 | 预期 | |------|------| | 静态 shape + 非 contiguous stride(padding row stride 等) | 仍 patch stride,生成 view_load,精度/行为与改前一致 | | 动态 shape(含 SymInt/SymFloat 的 fused subgraph) | codegen 不再因 empty_strided 报错,可正常生成 DVM kernel | | 动态 shape 非 contiguous 输入 | 走 k.load + .contiguous(),功能正确 | **验证方法** 1. 复现动态 shape DVM 融合模型(此前在 _dvm_generate_fallback_kernel / util.py 报 empty_strided stride 类型错误),确认 torch.compile(..., backend="inductor") 可完成 codegen 并正确执行。 2. 回归静态 shape 用例(如非 contiguous view_load 相关场景),确认融合结果与 golden 一致。 3. 可选:检查生成 wrapper 代码,动态场景下 placeholder 不再调用 stride patch,静态场景仍保留 patch 逻辑。 # 【CheckList】 - [x] 代码注释完备,正确记录错误日志(逻辑清晰,无新增错误路径需额外日志) - [x] 代码实现进行了返回值、空指针等校验(通过 is_fx_dynamic 前置判断,避免非法 stride patch) - [x] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等(建议标题:fix(dvm): guard stride patch behind is_fx_dynamic in fallback kernel) - [x] PR持续集成流水线(CI)执行通过,代码检查无异常(合入前确认) See merge request: Ascend/pytorch!37883 | 2 个月前 | |
DVM: integrate inductor backend and dynamo plugin loading Co-authored-by: huangchengnuo<huangchengnuo1@huawei.com> # message auto-generated for no-merge-commit merge: !33652 merge support_dvm_r2.10 into v2.10.0 DVM: integrate inductor backend and dynamo plugin loading Created-by: SorryNaCN Commit-by: huangchengnuo Merged-by: ascend-robot Description: <!-- Thanks for sending a pull request! --> ## What type of PR is this? /kind feature ## What does this PR do / why do we need it https://gitcode.com/Ascend/pytorch/issues/1978 本 PR 将 v2.7.1 分支中的 DVM 相关能力迁移到 v2.10.0,为 inductor 增加 DVM 融合支持,并补齐绑定、构建与测试。 主要改动: - 引入 DVM 第三方依赖并接入构建 - 新增/迁移 DVM inductor 融合流水线代码 - 新增 DVM C++ pybind 接口并在 _C 初始化阶段注册 - 补充 DVM 相关测试与 public bindings 清单 - 调整 inductor 后端选择逻辑,支持 npu_backend=dvm --- ## DVM 融合模式说明(按当前代码更新) 当前 DVM 支持两种融合路径: 1. mlir_fusion:复用 Inductor-MLIR 主流程,只替换融合范围与 codegen 引擎为 DVM 2. graph_fusion:独立图分区融合路径,通过 CapabilityBasedPartitioner 做子图融合并落到 DVM ### 1) mlir_fusion 设计: - 复用 Inductor-MLIR 编译流程 - 在融合子图阶段按 DVM 支持规则筛选 - 使用 DVM codegen 生成并执行融合 kernel 特点: - 与现有 inductor/mlir 链路协同,接入成本低 - 融合行为与主编译流程一致性更好 ### 2) graph_fusion 设计: - 通过 DvmGraphFusionPatch 挂接 post-grad pass - 使用 CapabilityBasedPartitioner 划分可融合子图 - 生成 dvm::fused_graph_* 自定义算子并在代码生成阶段替换为 DVM kernel 调用 特点: - 独立融合路径,可扩展性强 - pattern 控制更灵活 > dvm_graph_fused_* 命名来自 graph fusion 路径(dvm_graph_fusion(...) pass 生成融合子图名)。 --- ## 使用方式(更新后的正确接口) ### A. 启用 mlir_fusion 路径 推荐三种方式(二选一即可): 1. config 方式 python import torch import torch_npu import torch_npu._inductor torch._inductor.config.npu_backend = "dvm" compiled = torch.compile(model, backend="inductor", dynamic=True) out = compiled(*inputs) 2. options 方式 python compiled = torch.compile( model, backend="inductor", dynamic=True, options={"npu_backend": "dvm"} ) 3. 环境变量方式(需在 torch.compile 前设置) python import os os.environ["TORCHINDUCTOR_NPU_BACKEND"] = "dvm" ### B. 启用 graph_fusion 路径 python import torch import torch_npu from torch_npu._inductor.dvm.graph_fusion import DvmGraphFusionPatch with DvmGraphFusionPatch(): compiled = torch.compile(model, backend="inductor", dynamic=False) out = compiled(*inputs) --- ## 两种模式对比 | 模式 | 依赖 Inductor-MLIR 主流程 | Pattern 控制 | 典型命名 | 备注 | | - | - | - | - | - | | mlir_fusion | 是 | 中 | dvm_fused_* | 推荐默认接入路径 | | graph_fusion | 否(独立图分区) | 高 | dvm_graph_fused_* | 更适合定制/实验性融合 | **注意:矩阵相关算子(mm/bmm/addmm)仅在 graph_fusion 融合模式支持。** --- ## Which issue(s) this PR fixes Fixes # ## Special notes for your reviewers - 本 PR 为跨版本迁移,核心逻辑与 v2.7.1 DVM 实现保持一致,冲突已按 v2.8.0 基线语义对齐。 - 建议重点 review: - _C 初始化与 DVM pybind 注册 - torch_npu._inductor 后端分支与 npu_backend=dvm 使能逻辑 - mlir_fusion / graph_fusion 两条路径的行为一致性 See merge request: Ascend/pytorch!33652 | 3 个月前 | |
feat: support DVM MM template fusion Co-authored-by: huangchengnuo<huangchengnuo1@huawei.com> # message auto-generated for no-merge-commit merge: !42503 merge dvm-mm-template-fusion-v210-20260723 into v2.10.0 feat: support DVM MM template fusion Created-by: SorryNaCN Commit-by: huangchengnuo Merged-by: ascend-robot Description: # 【合入来源】 - [ ] 需求 - [ ] 问题单 - [x] issue/工单 - [x] 重构优化 - [ ] 资料更新 关联图模式 Issue:https://gitcode.com/Ascend/pytorch/issues/1978 移植来源:https://gitcode.com/Ascend/pytorch/merge_requests/40027 # 【修改方案】 1. 在 torch_npu._inductor.dvm.config 中增加 enable_matmul_fusion。该开关默认关闭,仅在设置 INDUCTOR_DVM_ENABLE_MATMUL_FUSION=1 时注册 DVM matmul template lowering,未启用时保持原有 DVM/Inductor 路径不变。 2. 为 aten.mm、aten.bmm、aten.addmm 与 aten.baddbmm 注册 DVM template lowering,并新增 DvmTemplateBuffer 保存 matmul template FX 图及逻辑 placeholder 到实际 IR 输入的绑定关系。生成 wrapper 调用前恢复真实参数;不满足 DVM shape/type 规则的场景继续走原有 fallback。 3. 保留 addmm 的原始算子形态以进入 template lowering,补齐 baddbmm 的转置标注、图构建参数透传和 DVM codegen;保持 addmm/baddbmm 的 alpha、beta 语义。K=1 的 mm、bmm 下沉为逐元素 mul,K=1 的 addmm 下沉为 mul 与 add 组合。 4. 在 NpuDvmScheduling 的 template codegen 中复用 NpuMetaScheduling 的 traced-graph 构图与回退能力。DVM matmul template 仅支持合法 pointwise epilogue 的纵向融合;prologue、horizontal fusion、reduction、template-to-template、group/numel 不一致及不支持的 broadcast 场景均不融合。 5. 移除 _is_view_only_graph 对纯 view、reshape、_unsafe_view epilogue 的额外拒绝逻辑,统一由既有 pointwise、shape、依赖和广播合法性检查决定是否进入 DVM template 融合路径。 6. 补充 mm、bmm、addmm、baddbmm 的 template fusion 回归覆盖,并覆盖 K=1、multi-user 输出、view/view+pointwise epilogue、view 输入及同一 buffer 多 view 场景。 # 【资料变更】 不涉及。 # 【接口变更】 不涉及客户可见接口变更。 # 【功能验证】 - 对全部变更 Python 文件执行 python3 -m py_compile,通过。 - 执行 git diff --check,通过。 - 完整 NPU 定向用例由 CI 执行。 ## 性能收益 该优化将 matmul 与下游 pointwise/view 融合为单个 DVM mix kernel,减少中间张量读写和 kernel launch。以下为 v2.9.0 同功能实测(端到端统计已排除首次编译与 warm-up): | 网络 / 指标(每 step) | Template OFF | Template ON | 时延收益 | |---|---:|---:|---:| | GLM-4-9B Chat LoRA BF16(batch 1、seq 512,稳态端到端) | 279.752 ms | 255.837 ms | **8.55%** | | Qwen2-VL-2B-Instruct LoRA BF16(batch 1、max length 512,step 11-51) | 773.792 ms | 747.664 ms | **3.38%** | | BERT_pytorch BF16(稳态端到端) | 23.3781 ms | 21.8458 ms | **6.55%** | | GLM-4-9B LoRA BF16(batch 1、seq 128,稳态端到端) | 219.3782 ms | 204.9709 ms | **6.57%** | | Llama3-8B LoRA BF16(batch 1、seq 128,稳态端到端) | 409.4111 ms | 393.3233 ms | **3.93%** | GLM-4-9B Chat 对应吞吐约提升 **9.34%**。GPT-OSS-20B 的 device kernel duration 为 -0.62%,当前不作为性能收益结论。 详细测试配置与完整数据见:https://gitcode.com/Ascend/pytorch/merge_requests/40027 # 【CheckList】 - [x] 代码注释完备,正确记录错误日志 - [x] 代码实现进行了返回值、空指针等校验 - [x] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [ ] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!42503 | 30 天前 | |
fix(inductor): keep autotune from nesting a profiler session Co-authored-by: xudezheng<xudezheng1@huawei.com> # message auto-generated for no-merge-commit merge: !44117 merge symbolic_bug_fix into v2.10.0 fix(inductor): keep autotune from nesting a profiler session Created-by: crazyDannyBoy Commit-by: xudezheng Merged-by: ascend-robot Description: <!-- PR描述模板更新日期:20260203 --> # 【合入来源】 > <font color="red">**如有社区issue,请关联issue链接**</font>\ > <font color="red">**请勿携带内部流程信息(需求链接、问题单、内部issue等)**</font> - [ ] 需求 - [ ] 问题单 - [ ] issue/工单 - [ ] 重构优化 - [ ] 资料更新 # 【修改方案】 > 请描述修改内容的具体实现,涉及哪些组件之间进行交互,可以用1、2、3、...进行罗列\ > 如果是需求或者重构类的PR,需要补充详细设计文档(说明上下游组件关系、时序图、类图、DFX能力等内容) # 【资料变更】 > 请确认是否涉及资料变更。如涉及,需要在PR中体现,并简要说明修改内容。如不涉及,需填写“不涉及” # 【接口变更】 > 请确认是否涉及跨代码仓或者客户面可见的接口变更。如涉及,需要详细说明接口以及对应的变更内容,同时需要在资料中体现。如不涉及,需填写“不涉及” # 【功能验证】 > 说明测试场景,测试方法。如果本次测试方式与常规单元测试不同,请详细说明您的测试步骤\ > 新增/变更内容是否已新增/适配UT测试用例看护,并补充测试自验证截图 # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [ ] 代码注释完备,正确记录错误日志 - [ ] 代码实现进行了返回值、空指针等校验 - [ ] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [ ] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!44117 | 13 天前 | |
feat(inductor): support dynamic shapes in ascend custom graph passes Co-authored-by: xudezheng<xudezheng1@huawei.com> # message auto-generated for no-merge-commit merge: !42443 merge dynamic-graph-dev into v2.10.0 feat(inductor): support dynamic shapes in ascend custom graph passes Created-by: crazyDannyBoy Commit-by: xudezheng Merged-by: ascend-robot Description: <!-- PR描述模板更新日期:20260203 --> # 【合入来源】 > <font color="red">**如有社区issue,请关联issue链接**</font>\ > <font color="red">**请勿携带内部流程信息(需求链接、问题单、内部issue等)**</font> - [ ] 需求 - [ ] 问题单 - [ ] issue/工单 - [ ] 重构优化 - [ ] 资料更新 # 【修改方案】 > 请描述修改内容的具体实现,涉及哪些组件之间进行交互,可以用1、2、3、...进行罗列\ > 如果是需求或者重构类的PR,需要补充详细设计文档(说明上下游组件关系、时序图、类图、DFX能力等内容) # 【资料变更】 > 请确认是否涉及资料变更。如涉及,需要在PR中体现,并简要说明修改内容。如不涉及,需填写“不涉及” # 【接口变更】 > 请确认是否涉及跨代码仓或者客户面可见的接口变更。如涉及,需要详细说明接口以及对应的变更内容,同时需要在资料中体现。如不涉及,需填写“不涉及” # 【功能验证】 > 说明测试场景,测试方法。如果本次测试方式与常规单元测试不同,请详细说明您的测试步骤\ > 新增/变更内容是否已新增/适配UT测试用例看护,并补充测试自验证截图 # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [ ] 代码注释完备,正确记录错误日志 - [ ] 代码实现进行了返回值、空指针等校验 - [ ] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [ ] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!42443 | 1 个月前 | |
[Fix] Fix static check errors detected by SPACES Co-authored-by: huangjingwei<huangjingwei4@huawei.com> # message auto-generated for no-merge-commit merge: !36365 merge v2.10.0_lintrunner into v2.10.0 [Fix] Fix static check errors detected by SPACES Created-by: huangjingwei Commit-by: huangjingwei Merged-by: ascend-robot Description: <!-- PR描述模板更新日期:20260203 --> # 【合入来源】 > <font color="red">**如有社区issue,请关联issue链接**</font>\ > <font color="red">**请勿携带内部流程信息(需求链接、问题单、内部issue等)**</font> - [ ] 需求 - [ ] 问题单 - [x] issue/工单 - [ ] 重构优化 - [ ] 资料更新 # 【修改方案】 检测和删除代码中的行尾空白字符 # 【资料变更】 不涉及 # 【接口变更】 不涉及 # 【功能验证】 不涉及 # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [x] 代码注释完备,正确记录错误日志 - [x] 代码实现进行了返回值、空指针等校验 - [x] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [x] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!36365 | 3 个月前 | |
[inductor] inductor support master Co-authored-by: duchengkun<duchengkun1@huawei.com> # message auto-generated for no-merge-commit merge: merge inductor_master into master [inductor] inductor support master Created-by: duchengkun Commit-by: duchengkun Merged-by: ascend-robot Description: inductor支持master - 在2.的基础上做的修改 - master的修改可以通过[inductor master](https://gitcode.com/Ascend/pytorch/commit/f99438d3eb6fff832f820bdebf4930fd4aa00512?ref=inductor_master&prId=25033)这个commit查看,为了方便检视,暂时不做commit squash See merge request: Ascend/pytorch!25033 | 10 个月前 | |
fix: lintrunner --all-files --take NEWLINE -a Co-authored-by: huangjingwei<huangjingwei4@huawei.com> # message auto-generated for no-merge-commit merge: !35873 merge v2.10.0_lintrunner into v2.10.0 fix: lintrunner --all-files --take NEWLINE -a Created-by: huangjingwei Commit-by: huangjingwei Merged-by: ascend-robot Description: <!-- PR描述模板更新日期:20260203 --> # 【合入来源】 > <font color="red">**如有社区issue,请关联issue链接**</font>\ > <font color="red">**请勿携带内部流程信息(需求链接、问题单、内部issue等)**</font> - [ ] 需求 - [ ] 问题单 - [x] issue/工单 - [ ] 重构优化 - [ ] 资料更新 # 【修改方案】 1. 执行: lintrunner --all-files --take NEWLINE -a 修复换行符,不影响代码逻辑。 2. 屏蔽两个分布式用例,已提issue,给对应接口人跟踪。 # 【资料变更】 不涉及 # 【接口变更】 不涉及 # 【功能验证】 不涉及 # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [x] 代码注释完备,正确记录错误日志 - [x] 代码实现进行了返回值、空指针等校验 - [x] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [x] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!35873 | 3 个月前 | |
2.10 inductor代码同步 Co-authored-by: p00669756<pangjiayi@huawei.com> # message auto-generated for no-merge-commit merge: !39073 merge pta210_0622 into v2.10.0 2.10 inductor代码同步 Created-by: TonyYA Commit-by: p00669756;TonyYA Merged-by: ascend-robot Description: <!-- PR描述模板更新日期:20260203 --> # 【合入来源】 https://gitcode.com/Ascend/pytorch/issues/2487 - [x] 需求 - [ ] 问题单 - [ ] issue/工单 - [ ] 重构优化 - [ ] 资料更新 # 【修改方案】 同步2.9 inductor修改至2.10,同时关闭社区默认打开的mix_order_reduction # 【资料变更】 > 请确认是否涉及资料变更。如涉及,需要在PR中体现,并简要说明修改内容。如不涉及,需填写“不涉及” # 【接口变更】 > 请确认是否涉及跨代码仓或者客户面可见的接口变更。如涉及,需要详细说明接口以及对应的变更内容,同时需要在资料中体现。如不涉及,需填写“不涉及” # 【功能验证】 模型验证结果: https://onebox.huawei.com/v/6d6647cf5de9b3f8a5118370ddb7a875?type=1&sheet=2.10%E6%A8%A1%E5%9E%8B%E6%B5%8B%E8%AF%95 # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [x] 代码注释完备,正确记录错误日志 - [x] 代码实现进行了返回值、空指针等校验 - [x] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [x] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!39073 | 1 个月前 | |
【inductor】bugfix for noinear codegen, sync from pr39111 Co-authored-by: Stonexx<sheny1xuan@163.com> # message auto-generated for no-merge-commit merge: !39768 merge sync_39111_v2.10 into v2.10.0 【inductor】bugfix for noinear codegen, sync from pr39111 Created-by: stonexxx Commit-by: Stonexx Merged-by: ascend-robot Description: <!-- PR描述模板更新日期:20260203 --> # 【合入来源】 > <font color="red">**如有社区issue,请关联issue链接**</font>\ > <font color="red">**请勿携带内部流程信息(需求链接、问题单、内部issue等)**</font> - [x] 需求 - [ ] 问题单 - [x] issue/工单 - [ ] 重构优化 - [ ] 资料更新 # 【修改方案】 https://gitcode.com/Ascend/pytorch/issues/2571 # 【资料变更】 > 请确认是否涉及资料变更。如涉及,需要在PR中体现,并简要说明修改内容。如不涉及,需填写“不涉及” # 【接口变更】 > 请确认是否涉及跨代码仓或者客户面可见的接口变更。如涉及,需要详细说明接口以及对应的变更内容,同时需要在资料中体现。如不涉及,需填写“不涉及” # 【功能验证】 > 说明测试场景,测试方法。如果本次测试方式与常规单元测试不同,请详细说明您的测试步骤\ > 新增/变更内容是否已新增/适配UT测试用例看护,并补充测试自验证截图 # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [ ] 代码注释完备,正确记录错误日志 - [ ] 代码实现进行了返回值、空指针等校验 - [ ] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [ ] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!39768 | 1 个月前 | |
[inductor][ut] unskip ut Co-authored-by: qiaoyaodan<qiaoyaodan@huawei.com> # message auto-generated for no-merge-commit merge: !44254 merge fix_aoti_bug_v2100 into v2.10.0 [inductor][ut] unskip ut Created-by: qiaoyaodan888 Commit-by: qiaoyaodan Merged-by: ascend-robot Description: <!-- PR描述模板更新日期:20260203 --> # 【合入来源】 > <font color="red">**如有社区issue,请关联issue链接**</font>\ > <font color="red">**请勿携带内部流程信息(需求链接、问题单、内部issue等)**</font> - [ ] 需求 - [ ] 问题单 - [ ] issue/工单 - [ ] 重构优化 - [ ] 资料更新 # 【修改方案】 之前有一部分ut在2.10.0上面会莫名其妙跑超时,所以当时将这些ut暂时skip,现在解除skip # 【资料变更】 > 请确认是否涉及资料变更。如涉及,需要在PR中体现,并简要说明修改内容。如不涉及,需填写“不涉及” # 【接口变更】 > 请确认是否涉及跨代码仓或者客户面可见的接口变更。如涉及,需要详细说明接口以及对应的变更内容,同时需要在资料中体现。如不涉及,需填写“不涉及” # 【功能验证】 > 说明测试场景,测试方法。如果本次测试方式与常规单元测试不同,请详细说明您的测试步骤\ > 新增/变更内容是否已新增/适配UT测试用例看护,并补充测试自验证截图 # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [ ] 代码注释完备,正确记录错误日志 - [ ] 代码实现进行了返回值、空指针等校验 - [ ] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [ ] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!44254 | 13 天前 | |
[Inductor] Inductor support multi process compile and cat solution Co-authored-by: zhucehw<zhuce@huawei.com> # message auto-generated for no-merge-commit merge: !39865 merge v2.10.0-dev into v2.10.0 [Inductor] Inductor support multi process compile and cat solution Created-by: zhucehw Commit-by: zhuceHW;zhucehw Merged-by: ascend-robot Description: <!-- PR描述模板更新日期:20260203 --> # 【合入来源】 https://gitcode.com/Ascend/pytorch/issues/2406?ref=&did=4098529#tid-4098529 - [ ] 需求 - [ ] 问题单 - [x] issue/工单 - [ ] 重构优化 - [ ] 资料更新 # 【修改方案】 1. Inductor support multi process compile 2. reduce time of testcase 3. delete error shim api # 【资料变更】 不涉及 # 【接口变更】 不涉及 # 【功能验证】 CI PASS # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [x] 代码注释完备,正确记录错误日志 - [x] 代码实现进行了返回值、空指针等校验 - [x] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [x] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!39865 | 1 个月前 | |
feat(inductor): partition FA v3 TND+dropout via inductor pattern matcher Co-authored-by: luochao60<luochao60@huawei.com> # message auto-generated for no-merge-commit merge: !35038 merge Pta_add_fav3_pass_20260428_v2.10.0 into v2.10.0 feat(inductor): partition FA v3 TND+dropout via inductor pattern matcher Created-by: luochao60 Commit-by: luochao60 Merged-by: ascend-robot Description: <!-- PR描述模板更新日期:20260203 --> # 【合入来源】 > (如有)请关联需求文档/issue链接 > 关联 issue: #2010 (https://gitcode.com/Ascend/pytorch/issues/2010) - [ ] 需求 - [ ] 问题单 - [ ] issue/工单 - [x] 重构优化 - [ ] 资料更新 # 【修改方案】 > 请描述修改内容的具体实现,涉及哪些组件之间进行交互,可以用1、2、3、...进行罗列 > 如果是需求或者重构类的PR,需要补充详细设计文档(说明上下游组件关系、时序图、类图、DFX能力等内容) 将 FA v3( npu_fusion_attention_v3 / npu_fusion_attention_grad_v3)在 TND 布局 + dropout (keep_prob < 1) 场景下"不可被 ACLgraph 捕获"的处理路径,由 monkey-patch inductor 内部 _fx_node_is_input_dependent_cudagraph_unsafe 的方案,重构为基于 inductor PatternMatcherPass + POST_GRAD_PATTERNS 的合入方式。 1. 新增 torch_npu/_inductor/fx_passes/_proxy_ops.py: - 通过 torch.library.Library("npu", "FRAGMENT") 克隆原算子 schema,注册 npu_fusion_attention_v3_unsafe / npu_fusion_attention_grad_v3_unsafe 两个代理算子,并在 schema 上挂 torch._C.Tag.cudagraph_unsafe。 - 代理算子的 CompositeExplicitAutograd 实现与 register_fake 实现都直接转发到原算子(FA v3 的输入混合 NPU q/k/v 与 CPU actual_seq_qlen/kvlen,复用原算子的 device-propagation 规则)。 - 暴露 PROXY_TARGETS: dict[OpOverload, OpOverload] 供 pass 使用。 2. 新增 torch_npu/_inductor/fx_passes/fav3_partition_pass.py: - 用 PatternMatcherPass(pass_name="fav3_partition") 注册 forward / backward 两条 CallFunctionVarArgs(target) 规则。 - extra_check 中通过 torch.fx.operator_schemas.normalize_function 拿到归一化 kwargs,仅在 input_layout == "TND" 且 keep_prob < 1 时命中;同时在 inductor_config.triton.cudagraphs 关闭时直接 short-circuit,避免无意义的 dispatcher 跳转。 - handler 仅做 node.target = proxy,不引入新的 fx 节点;scheduler 之后会按 cudagraph_unsafe tag 把这些节点切出 captured graph 走 eager。 - register_fav3_partition_pass() 在 __init__.py 中调用一次:将 PMP 挂到 POST_GRAD_PATTERNS["fav3_partition"],并 setdefault 写入 post_grad_fusion_options。 3. 调整 torch_npu/_inductor/__init__.py: - 移除对已废弃的 patch_fx_node_is_input_dependent_cudagraph_unsafe 的导入与调用。 - 新增 register_fav3_partition_pass() 调用,与 register_fa_pass() 等其他 inductor 扩展挂载点放在一起。 4. 清理 torch_npu/_inductor/utils.py: - 删除 _fx_node_is_input_dependent_cudagraph_unsafe 与 patch_fx_node_is_input_dependent_cudagraph_unsafe(旧 monkey-patch 实现),逻辑已由新 pass 覆盖。 # 【资料变更】 > 请确认是否涉及资料变更。如涉及,需要在PR中体现,并简要说明修改内容。如不涉及,需填写"不涉及" 不涉及 # 【接口变更】 > 请确认是否涉及跨代码仓或者客户面可见的接口变更。如涉及,需要详细说明接口以及对应的变更内容,同时需要在资料中体现。如不涉及,需填写"不涉及" 不涉及。新增的 npu::npu_fusion_attention_v3_unsafe / npu::npu_fusion_attention_grad_v3_unsafe 仅作为 inductor 图改写的内部代理算子,行为完全转发至原 FA v3 算子,不对外暴露给用户脚本调用;patch_fx_node_is_input_dependent_cudagraph_unsafe 是 inductor 内部的 monkey-patch 入口,非客户面接口。 # 【功能验证】 > 说明测试场景,测试方法。如果本次测试方式与常规单元测试不同,请详细说明您的测试步骤 > 新增/变更内容是否已新增/适配UT测试用例看护,并补充测试自验证截图 新增 UT:test/_inductor/test_fav3_partition_pass.py(225 行)覆盖以下场景: - TND + dropout 场景下 FA v3 fwd/bwd 节点的 target 被正确改写为代理算子。 - BSND/BSH 等其他 layout、keep_prob == 1.0 等不命中场景保持原 target 不变。 - 代理算子转发到原算子的数值一致性验证。 - inductor_config.triton.cudagraphs 关闭时 pass 不生效的 short-circuit 行为。 # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [x] 代码注释完备,正确记录错误日志 - [x] 代码实现进行了返回值、空指针等校验 - [x] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [x] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!35038 | 2 个月前 | |
【inductor】Temporarily close some inductor ci tests, accelarate ci access control Co-authored-by: kkjocker<hexuanyu1@huawei.com> # message auto-generated for no-merge-commit merge: !30305 merge v2.10.0 into v2.10.0 【inductor】Temporarily close some inductor ci tests, accelarate ci access control Created-by: kkjocker Commit-by: kkjocker Merged-by: ascend-robot Description: <!-- Thanks for sending a pull request! --> **What type of PR is this?** > Uncomment only one /kind <> line, hit enter to put that in a new line, and remove leading whitespaces from that line: > > /kind bug > /kind task > /kind feature **What does this PR do / why do we need it**: **Which issue(s) this PR fixes**: <!-- *Automatically closes linked issue when PR is merged. Usage: Fixes #<issue number>, or Fixes (paste link of issue). --> Fixes # **Special notes for your reviewers**: See merge request: Ascend/pytorch!30305 | 6 个月前 | |
[inductor] add pass ut Co-authored-by: 吕江东<lvjiangdong@huawei.com> # message auto-generated for no-merge-commit merge: !43217 merge v2.10.0 into v2.10.0 [inductor] add pass ut Created-by: lvjiangdong Commit-by: 吕江东 Merged-by: ascend-robot Description: [#3446](https://gitcode.com/Ascend/pytorch/issues/3446) <!-- PR描述模板更新日期:20260203 --> # 【合入来源】 > <font color="red">**如有社区issue,请关联issue链接**</font>\ > <font color="red">**请勿携带内部流程信息(需求链接、问题单、内部issue等)**</font> - [ ] 需求 - [ ] 问题单 - [ ] issue/工单 - [ ] 重构优化 - [ ] 资料更新 # 【修改方案】 > 请描述修改内容的具体实现,涉及哪些组件之间进行交互,可以用1、2、3、...进行罗列\ > 如果是需求或者重构类的PR,需要补充详细设计文档(说明上下游组件关系、时序图、类图、DFX能力等内容) # 【资料变更】 > 请确认是否涉及资料变更。如涉及,需要在PR中体现,并简要说明修改内容。如不涉及,需填写“不涉及” # 【接口变更】 > 请确认是否涉及跨代码仓或者客户面可见的接口变更。如涉及,需要详细说明接口以及对应的变更内容,同时需要在资料中体现。如不涉及,需填写“不涉及” # 【功能验证】 > 说明测试场景,测试方法。如果本次测试方式与常规单元测试不同,请详细说明您的测试步骤\ > 新增/变更内容是否已新增/适配UT测试用例看护,并补充测试自验证截图 # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [ ] 代码注释完备,正确记录错误日志 - [ ] 代码实现进行了返回值、空指针等校验 - [ ] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [ ] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!43217 | 26 天前 | |
[inductor] add pass ut Co-authored-by: 吕江东<lvjiangdong@huawei.com> # message auto-generated for no-merge-commit merge: !43217 merge v2.10.0 into v2.10.0 [inductor] add pass ut Created-by: lvjiangdong Commit-by: 吕江东 Merged-by: ascend-robot Description: [#3446](https://gitcode.com/Ascend/pytorch/issues/3446) <!-- PR描述模板更新日期:20260203 --> # 【合入来源】 > <font color="red">**如有社区issue,请关联issue链接**</font>\ > <font color="red">**请勿携带内部流程信息(需求链接、问题单、内部issue等)**</font> - [ ] 需求 - [ ] 问题单 - [ ] issue/工单 - [ ] 重构优化 - [ ] 资料更新 # 【修改方案】 > 请描述修改内容的具体实现,涉及哪些组件之间进行交互,可以用1、2、3、...进行罗列\ > 如果是需求或者重构类的PR,需要补充详细设计文档(说明上下游组件关系、时序图、类图、DFX能力等内容) # 【资料变更】 > 请确认是否涉及资料变更。如涉及,需要在PR中体现,并简要说明修改内容。如不涉及,需填写“不涉及” # 【接口变更】 > 请确认是否涉及跨代码仓或者客户面可见的接口变更。如涉及,需要详细说明接口以及对应的变更内容,同时需要在资料中体现。如不涉及,需填写“不涉及” # 【功能验证】 > 说明测试场景,测试方法。如果本次测试方式与常规单元测试不同,请详细说明您的测试步骤\ > 新增/变更内容是否已新增/适配UT测试用例看护,并补充测试自验证截图 # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [ ] 代码注释完备,正确记录错误日志 - [ ] 代码实现进行了返回值、空指针等校验 - [ ] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [ ] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!43217 | 26 天前 | |
[inductor] add pass ut Co-authored-by: 吕江东<lvjiangdong@huawei.com> # message auto-generated for no-merge-commit merge: !43217 merge v2.10.0 into v2.10.0 [inductor] add pass ut Created-by: lvjiangdong Commit-by: 吕江东 Merged-by: ascend-robot Description: [#3446](https://gitcode.com/Ascend/pytorch/issues/3446) <!-- PR描述模板更新日期:20260203 --> # 【合入来源】 > <font color="red">**如有社区issue,请关联issue链接**</font>\ > <font color="red">**请勿携带内部流程信息(需求链接、问题单、内部issue等)**</font> - [ ] 需求 - [ ] 问题单 - [ ] issue/工单 - [ ] 重构优化 - [ ] 资料更新 # 【修改方案】 > 请描述修改内容的具体实现,涉及哪些组件之间进行交互,可以用1、2、3、...进行罗列\ > 如果是需求或者重构类的PR,需要补充详细设计文档(说明上下游组件关系、时序图、类图、DFX能力等内容) # 【资料变更】 > 请确认是否涉及资料变更。如涉及,需要在PR中体现,并简要说明修改内容。如不涉及,需填写“不涉及” # 【接口变更】 > 请确认是否涉及跨代码仓或者客户面可见的接口变更。如涉及,需要详细说明接口以及对应的变更内容,同时需要在资料中体现。如不涉及,需填写“不涉及” # 【功能验证】 > 说明测试场景,测试方法。如果本次测试方式与常规单元测试不同,请详细说明您的测试步骤\ > 新增/变更内容是否已新增/适配UT测试用例看护,并补充测试自验证截图 # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [ ] 代码注释完备,正确记录错误日志 - [ ] 代码实现进行了返回值、空指针等校验 - [ ] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [ ] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!43217 | 26 天前 | |
[inductor] add pass ut Co-authored-by: 吕江东<lvjiangdong@huawei.com> # message auto-generated for no-merge-commit merge: !43217 merge v2.10.0 into v2.10.0 [inductor] add pass ut Created-by: lvjiangdong Commit-by: 吕江东 Merged-by: ascend-robot Description: [#3446](https://gitcode.com/Ascend/pytorch/issues/3446) <!-- PR描述模板更新日期:20260203 --> # 【合入来源】 > <font color="red">**如有社区issue,请关联issue链接**</font>\ > <font color="red">**请勿携带内部流程信息(需求链接、问题单、内部issue等)**</font> - [ ] 需求 - [ ] 问题单 - [ ] issue/工单 - [ ] 重构优化 - [ ] 资料更新 # 【修改方案】 > 请描述修改内容的具体实现,涉及哪些组件之间进行交互,可以用1、2、3、...进行罗列\ > 如果是需求或者重构类的PR,需要补充详细设计文档(说明上下游组件关系、时序图、类图、DFX能力等内容) # 【资料变更】 > 请确认是否涉及资料变更。如涉及,需要在PR中体现,并简要说明修改内容。如不涉及,需填写“不涉及” # 【接口变更】 > 请确认是否涉及跨代码仓或者客户面可见的接口变更。如涉及,需要详细说明接口以及对应的变更内容,同时需要在资料中体现。如不涉及,需填写“不涉及” # 【功能验证】 > 说明测试场景,测试方法。如果本次测试方式与常规单元测试不同,请详细说明您的测试步骤\ > 新增/变更内容是否已新增/适配UT测试用例看护,并补充测试自验证截图 # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [ ] 代码注释完备,正确记录错误日志 - [ ] 代码实现进行了返回值、空指针等校验 - [ ] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [ ] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!43217 | 26 天前 | |
[sync] PR-36952: [inductor] add test Co-authored-by: 吕江东<lvjiangdong@huawei.com> # message auto-generated for no-merge-commit merge: !43209 merge sync-pr36952-v2.9.0-to-v2.10.0 into v2.10.0 [sync] PR-36952: [inductor] add test Created-by: ascend-ds-bot Commit-by: 吕江东 Merged-by: ascend-robot Description: ### 1. Origin pull request: https://gitcode.com/Ascend/pytorch/merge_requests/36952 ### 2. Original pull request related issue(s): https://gitcode.com/Ascend/pytorch/issues/2133 ### 3. Original pull request related commit(s): | Sha | Datetime | Message | |---|---|---| |[1d19ad64](https://gitcode.com/Ascend/pytorch/commit/1d19ad6409c1092e6770a9d1647490bf17bed6fa)|2026-05-27 20:13:57 +0800 CST|[inductor] add test<br>| See merge request: Ascend/pytorch!43209 | 26 天前 | |
[sync] PR-36952: [inductor] add test Co-authored-by: 吕江东<lvjiangdong@huawei.com> # message auto-generated for no-merge-commit merge: !43209 merge sync-pr36952-v2.9.0-to-v2.10.0 into v2.10.0 [sync] PR-36952: [inductor] add test Created-by: ascend-ds-bot Commit-by: 吕江东 Merged-by: ascend-robot Description: ### 1. Origin pull request: https://gitcode.com/Ascend/pytorch/merge_requests/36952 ### 2. Original pull request related issue(s): https://gitcode.com/Ascend/pytorch/issues/2133 ### 3. Original pull request related commit(s): | Sha | Datetime | Message | |---|---|---| |[1d19ad64](https://gitcode.com/Ascend/pytorch/commit/1d19ad6409c1092e6770a9d1647490bf17bed6fa)|2026-05-27 20:13:57 +0800 CST|[inductor] add test<br>| See merge request: Ascend/pytorch!43209 | 26 天前 | |
[sync] PR-36952: [inductor] add test Co-authored-by: 吕江东<lvjiangdong@huawei.com> # message auto-generated for no-merge-commit merge: !43209 merge sync-pr36952-v2.9.0-to-v2.10.0 into v2.10.0 [sync] PR-36952: [inductor] add test Created-by: ascend-ds-bot Commit-by: 吕江东 Merged-by: ascend-robot Description: ### 1. Origin pull request: https://gitcode.com/Ascend/pytorch/merge_requests/36952 ### 2. Original pull request related issue(s): https://gitcode.com/Ascend/pytorch/issues/2133 ### 3. Original pull request related commit(s): | Sha | Datetime | Message | |---|---|---| |[1d19ad64](https://gitcode.com/Ascend/pytorch/commit/1d19ad6409c1092e6770a9d1647490bf17bed6fa)|2026-05-27 20:13:57 +0800 CST|[inductor] add test<br>| See merge request: Ascend/pytorch!43209 | 26 天前 | |
[sync] PR-36952: [inductor] add test Co-authored-by: 吕江东<lvjiangdong@huawei.com> # message auto-generated for no-merge-commit merge: !43209 merge sync-pr36952-v2.9.0-to-v2.10.0 into v2.10.0 [sync] PR-36952: [inductor] add test Created-by: ascend-ds-bot Commit-by: 吕江东 Merged-by: ascend-robot Description: ### 1. Origin pull request: https://gitcode.com/Ascend/pytorch/merge_requests/36952 ### 2. Original pull request related issue(s): https://gitcode.com/Ascend/pytorch/issues/2133 ### 3. Original pull request related commit(s): | Sha | Datetime | Message | |---|---|---| |[1d19ad64](https://gitcode.com/Ascend/pytorch/commit/1d19ad6409c1092e6770a9d1647490bf17bed6fa)|2026-05-27 20:13:57 +0800 CST|[inductor] add test<br>| See merge request: Ascend/pytorch!43209 | 26 天前 | |
[sync] PR-38749: Fix mfusion FX-to-torch-mlir conversion for torch.ops.higher_order.run_and_save_rng_state Co-authored-by: shuqian0<shuqian11@huawei.com> # message auto-generated for no-merge-commit merge: !40153 merge sync-pr38749-fx_import_2.9-to-v2.10.0 into v2.10.0 [sync] PR-38749: Fix mfusion FX-to-torch-mlir conversion for torch.ops.higher_order.run_and_save_rng_state Created-by: ascend-ds-bot Commit-by: shuqian0 Merged-by: ascend-robot Description: ### 1. Origin pull request: https://gitcode.com/Ascend/pytorch/merge_requests/38749 ### 2. Original pull request related issue(s): https://gitcode.com/Ascend/pytorch/issues/1978 ### 3. Original pull request related commit(s): | Sha | Datetime | Message | |---|---|---| |[81993d3a](https://gitcode.com/Ascend/pytorch/commit/81993d3aaf8e845c361d890a6677090fa3496ca1)|2026-06-22 10:30:38 +0800 CST|Fix mfusion FX-to-torch-mlir conversion for torch.ops.higher_order.run_and_save_rng_state<br><br>Co-authored-by: Cursor <cursoragent@cursor.com><br>| See merge request: Ascend/pytorch!40153 | 1 个月前 | |
【inductor】Temporarily close some inductor ci tests, accelarate ci access control Co-authored-by: kkjocker<hexuanyu1@huawei.com> # message auto-generated for no-merge-commit merge: !30305 merge v2.10.0 into v2.10.0 【inductor】Temporarily close some inductor ci tests, accelarate ci access control Created-by: kkjocker Commit-by: kkjocker Merged-by: ascend-robot Description: <!-- Thanks for sending a pull request! --> **What type of PR is this?** > Uncomment only one /kind <> line, hit enter to put that in a new line, and remove leading whitespaces from that line: > > /kind bug > /kind task > /kind feature **What does this PR do / why do we need it**: **Which issue(s) this PR fixes**: <!-- *Automatically closes linked issue when PR is merged. Usage: Fixes #<issue number>, or Fixes (paste link of issue). --> Fixes # **Special notes for your reviewers**: See merge request: Ascend/pytorch!30305 | 6 个月前 | |
[inductor] inductor support master Co-authored-by: duchengkun<duchengkun1@huawei.com> # message auto-generated for no-merge-commit merge: merge inductor_master into master [inductor] inductor support master Created-by: duchengkun Commit-by: duchengkun Merged-by: ascend-robot Description: inductor支持master - 在2.的基础上做的修改 - master的修改可以通过[inductor master](https://gitcode.com/Ascend/pytorch/commit/f99438d3eb6fff832f820bdebf4930fd4aa00512?ref=inductor_master&prId=25033)这个commit查看,为了方便检视,暂时不做commit squash See merge request: Ascend/pytorch!25033 | 10 个月前 | |
feat(inductor): adapt group autotune for cpp wrapper Co-authored-by: Xuan Peng<pengxuan9@huawei.com> # message auto-generated for no-merge-commit merge: !44686 merge feat/group-autotune-cppwrapper-v2.10.0 into v2.10.0 feat(inductor): adapt group autotune for cpp wrapper Created-by: HinPeng Commit-by: Xuan Peng Merged-by: ascend-robot Description: Issue: https://gitcode.com/Ascend/pytorch/issues/4098 ### Summary Enable symbolic-shape grouped autotune to work with the NPU C++ wrapper. - Record per-variant kernel loading metadata and group-to-best-variant mappings. - Generate runtime group dispatch, runtime block resolution, and per-variant kernel loading/launching in the C++ wrapper. - Package only the cubin files required by selected variants. - Add unit and NPU functional tests for generated wrapper code and dynamic-shape accuracy. <!-- PR描述模板更新日期:20260203 --> # 【合入来源】 > <font color="red">**如有社区issue,请关联issue链接**</font>\ > <font color="red">**请勿携带内部流程信息(需求链接、问题单、内部issue等)**</font> - [ ] 需求 - [ ] 问题单 - [ ] issue/工单 - [ ] 重构优化 - [ ] 资料更新 # 【修改方案】 > 请描述修改内容的具体实现,涉及哪些组件之间进行交互,可以用1、2、3、...进行罗列\ > 如果是需求或者重构类的PR,需要补充详细设计文档(说明上下游组件关系、时序图、类图、DFX能力等内容) # 【资料变更】 > 请确认是否涉及资料变更。如涉及,需要在PR中体现,并简要说明修改内容。如不涉及,需填写“不涉及” # 【接口变更】 > 请确认是否涉及跨代码仓或者客户面可见的接口变更。如涉及,需要详细说明接口以及对应的变更内容,同时需要在资料中体现。如不涉及,需填写“不涉及” # 【功能验证】 > 说明测试场景,测试方法。如果本次测试方式与常规单元测试不同,请详细说明您的测试步骤\ > 新增/变更内容是否已新增/适配UT测试用例看护,并补充测试自验证截图 # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [ ] 代码注释完备,正确记录错误日志 - [ ] 代码实现进行了返回值、空指针等校验 - [ ] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [ ] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!44686 | 6 天前 | |
inductor/fx_passes: dynamic graph optimization e2e Co-authored-by: xudezheng<xudezheng1@huawei.com> # message auto-generated for no-merge-commit merge: !44486 merge v2.10.0_graph_opt_clean into v2.10.0 inductor/fx_passes: dynamic graph optimization e2e Created-by: crazyDannyBoy Commit-by: xudezheng Merged-by: ascend-robot Description: <!-- PR描述模板更新日期:20260203 --> # 【合入来源】 > <font color="red">**如有社区issue,请关联issue链接**</font>\ > <font color="red">**请勿携带内部流程信息(需求链接、问题单、内部issue等)**</font> - [ ] 需求 - [ ] 问题单 - [ ] issue/工单 - [ ] 重构优化 - [ ] 资料更新 # 【修改方案】 > 请描述修改内容的具体实现,涉及哪些组件之间进行交互,可以用1、2、3、...进行罗列\ > 如果是需求或者重构类的PR,需要补充详细设计文档(说明上下游组件关系、时序图、类图、DFX能力等内容) # 【资料变更】 > 请确认是否涉及资料变更。如涉及,需要在PR中体现,并简要说明修改内容。如不涉及,需填写“不涉及” # 【接口变更】 > 请确认是否涉及跨代码仓或者客户面可见的接口变更。如涉及,需要详细说明接口以及对应的变更内容,同时需要在资料中体现。如不涉及,需填写“不涉及” # 【功能验证】 > 说明测试场景,测试方法。如果本次测试方式与常规单元测试不同,请详细说明您的测试步骤\ > 新增/变更内容是否已新增/适配UT测试用例看护,并补充测试自验证截图 # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [ ] 代码注释完备,正确记录错误日志 - [ ] 代码实现进行了返回值、空指针等校验 - [ ] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [ ] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!44486 | 10 天前 | |
fix: lintrunner --all-files --take NEWLINE -a Co-authored-by: huangjingwei<huangjingwei4@huawei.com> # message auto-generated for no-merge-commit merge: !35873 merge v2.10.0_lintrunner into v2.10.0 fix: lintrunner --all-files --take NEWLINE -a Created-by: huangjingwei Commit-by: huangjingwei Merged-by: ascend-robot Description: <!-- PR描述模板更新日期:20260203 --> # 【合入来源】 > <font color="red">**如有社区issue,请关联issue链接**</font>\ > <font color="red">**请勿携带内部流程信息(需求链接、问题单、内部issue等)**</font> - [ ] 需求 - [ ] 问题单 - [x] issue/工单 - [ ] 重构优化 - [ ] 资料更新 # 【修改方案】 1. 执行: lintrunner --all-files --take NEWLINE -a 修复换行符,不影响代码逻辑。 2. 屏蔽两个分布式用例,已提issue,给对应接口人跟踪。 # 【资料变更】 不涉及 # 【接口变更】 不涉及 # 【功能验证】 不涉及 # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [x] 代码注释完备,正确记录错误日志 - [x] 代码实现进行了返回值、空指针等校验 - [x] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [x] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!35873 | 3 个月前 | |
[inductor] inductor support master Co-authored-by: duchengkun<duchengkun1@huawei.com> # message auto-generated for no-merge-commit merge: merge inductor_master into master [inductor] inductor support master Created-by: duchengkun Commit-by: duchengkun Merged-by: ascend-robot Description: inductor支持master - 在2.的基础上做的修改 - master的修改可以通过[inductor master](https://gitcode.com/Ascend/pytorch/commit/f99438d3eb6fff832f820bdebf4930fd4aa00512?ref=inductor_master&prId=25033)这个commit查看,为了方便检视,暂时不做commit squash See merge request: Ascend/pytorch!25033 | 10 个月前 | |
Fix MLIR full lowering fallback mode Co-authored-by: yvjc<yujincheng7@huawei.com> # message auto-generated for no-merge-commit merge: !39322 merge fusionTest-v2.10.0 into v2.10.0 Fix MLIR full lowering fallback mode Created-by: yvjc Commit-by: yvjc Merged-by: ascend-robot Description: https://gitcode.com/Ascend/pytorch/issues/2507 <!-- PR描述模板更新日期:20260203 --> # 【合入来源】 > <font color="red">**如有社区issue,请关联issue链接**</font>\ > <font color="red">**请勿携带内部流程信息(需求链接、问题单、内部issue等)**</font> - [ ] 需求 - [ ] 问题单 - [x] issue/工单 - [ ] 重构优化 - [ ] 资料更新 # 【修改方案】 > 请描述修改内容的具体实现,涉及哪些组件之间进行交互,可以用1、2、3、...进行罗列\ > 如果是需求或者重构类的PR,需要补充详细设计文档(说明上下游组件关系、时序图、类图、DFX能力等内容) - MLIR 配置增加 allfallback 识别: 在 ascend_npu_ir/ascend_npu_ir/config.py 中新增条件判断,当 enable_full_lowering_fallback 的值为 "allfallback" 时,自动将 fallback_to_aten_mode 设置为 "all",使后续 lowering 逻辑能进入全量回退分支。 - MLIR lowering 注册跳过 allfallback 的算子解析: 在 ascend_npu_ir/ascend_npu_ir/npu/npu_lowering.py 的 _register_npu_inductor_fallbacks() 中,将原先 if env_fallback_list: 的条件增强为 if env_fallback_list and config.fallback_to_aten_mode != 'all':,避免在 all-fallback 模式下将 "allfallback" 当作普通算子名进行无效解析。 - 新增 MLIR 全量回退测试用例: 新增 test/_inductor/test_inductor_all_fallback_mlir.py,包含 test_all_fallback_detection_mlir 测试方法,验证设置 NPU_INDUCTOR_FALLBACK_LIST=allfallback 后 MLIR 后端生成的代码中不包含 mlir_fused 等优化融合标记,确保全量回退模式正确生效。 # 【资料变更】 > 请确认是否涉及资料变更。如涉及,需要在PR中体现,并简要说明修改内容。如不涉及,需填写“不涉及” 不涉及 # 【接口变更】 > 请确认是否涉及跨代码仓或者客户面可见的接口变更。如涉及,需要详细说明接口以及对应的变更内容,同时需要在资料中体现。如不涉及,需填写“不涉及” 不涉及 # 【功能验证】 > 说明测试场景,测试方法。如果本次测试方式与常规单元测试不同,请详细说明您的测试步骤\ > 新增/变更内容是否已新增/适配UT测试用例看护,并补充测试自验证截图 测试用例通过 # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [x] 代码注释完备,正确记录错误日志 - [x] 代码实现进行了返回值、空指针等校验 - [x] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [x] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!39322 | 1 个月前 | |
perf(inductor): refine pointwise default grouping Co-authored-by: luqichao<luqichao1@huawei.com> # message auto-generated for no-merge-commit merge: !44926 merge perf/group_poi into v2.10.0 perf(inductor): refine pointwise default grouping Created-by: luqichao Commit-by: luqichao Merged-by: ascend-robot Description: 1. 优化默认 pointwise/elementwise 动态分组策略 进入 grouped autotune 的条件保持不变。默认分组特征从所有轴的 outer product 调整为: A = 动态拆分轴 × 该轴之前的静态拆分轴乘积 B = 排除 split 轴和动态轴后的 tiling 轴乘积 运行时直接根据 A 选择分组,分组边界根据数据规模和核间并行度计算: lower = max( 4 KiB / dtype_bytes / B, next_power_of_2(2 * vector_core), ) upper = max( 前置静态拆分轴乘积 * 128, next_power_of_2(8 * vector_core), ceil(4096 * vector_core / B), ) 各阈值的作用如下: - 4 KiB / dtype_bytes / B:保证 A × B × dtype_bytes 至少覆盖约 4 KiB 数据量,用于区分小数据场景。 - 2 * vector_core:保证 lower 至少能够为每个 vector core 提供两个 A 维度上的处理单元,并使用 2 的幂对齐边界。 - 前置静态拆分轴乘积 * 128:保证大组边界对应的动态轴取值至少为 128, 避免前置静态轴较大时 open group 的 representative 过小。 - 8 * vector_core:保证大组在 A 维度上具有足够的核间并行规模。 - 4096 * vector_core / B:保证 A × B 达到平均每个 vector core 约 4096 个元素的工作量。 upper 取这些条件的最大值,使大组同时满足动态轴规模、核间并行度和单核工作量 要求。 当相邻边界跨度超过 8 倍时增加中间档位,避免同一个 representative 覆盖过大 的动态范围。bucket 上界无法被前置静态轴乘积整除时,动态轴 representative 向上取整。 broadcast、transpose 等已有专用分组策略保持不变。 2. 减少不必要的静态轴 split 对于只有一个动态 split 轴的 pointwise kernel,若动态轴及其之前的 split 轴 已经能够提供不少于 num_vector_core 的并行度,则将动态轴之后的静态 split 轴降级为普通 kernel 轴,不再生成对应的 runtime BLOCK 和 grid 维度。 并行度不足或无法获得可靠 size hint 时,继续保留这些静态 split 轴。 3. 适配分组配置与运行时 tiling 每个 group 使用 representative shape 执行 autotune,确定 BLOCK_SUB、 静态 split 轴的 BLOCK 及其他编译配置。 运行时根据实际 shape 选择 group,并在对应 BLOCK_SUB 的约束下重新计算 动态轴的 runtime BLOCK。当实际 shape 小于 representative 时,允许使用更多 program,减少因沿用 representative grid 导致的核间并行度不足。 See merge request: Ascend/pytorch!44926 | 2 天前 | |
bugfix: remove the decomposition of expm1 from torchbench and add it to mlir. Co-authored-by: yvjc<yujincheng7@huawei.com> # message auto-generated for no-merge-commit merge: !36485 merge decomp10 into v2.10.0 bugfix: remove the decomposition of expm1 from torchbench and add it to mlir. Created-by: yvjc Commit-by: yvjc Merged-by: ascend-robot Description: <!-- PR描述模板更新日期:20260203 --> # 【合入来源】 > <font color="red">**如有社区issue,请关联issue链接**</font>\ > <font color="red">**请勿携带内部流程信息(需求链接、问题单、内部issue等)**</font> https://gitcode.com/Ascend/pytorch/issues/1962 - [ ] 需求 - [x] 问题单 - [ ] issue/工单 - [ ] 重构优化 - [ ] 资料更新 bug: torchbench 在aot_eager模式下运行tts_angular网络, 出现 RuntimeError: duplicate registrations for aten.expm1.default, 重复注册decomposition实现的行为, 分析发现, 在torchbench的npu_support.py对该网络的patch中import了_inductor, 由于是aot_eager后端, 走了triton初始化流程. triton初始化流程中具有对expm1的decomposition实现, 从而导致重复注册. 原本存在的test_inductor_fallback_list.py这个ut存在将triton和mlir后端在同一进程中运行的问题,在inductor初始化的时候首先初始化了triton后端的相关配置,然后在mlir测试例子时又初始化mlir后端的相关配置,导致在triton后端中已经对expm1进行注册,在mlir初始化时会注册失败。该问题属于ut问题,因此将test_inductor_fallback_list.py拆为test_inductor_fallback_list_triton.py和test_inductor_fallback_list_mlir.py两个ut。 # 【修改方案】 > 请描述修改内容的具体实现,涉及哪些组件之间进行交互,可以用1、2、3、...进行罗列\ > 如果是需求或者重构类的PR,需要补充详细设计文档(说明上下游组件关系、时序图、类图、DFX能力等内容) inductor添加mlir后端expm1的decomposition实现,与其他版本对齐. 去除torchbench npu_support.py tts_angular网络patch中添加的expm1 decomposition实现. # 【资料变更】 > 请确认是否涉及资料变更。如涉及,需要在PR中体现,并简要说明修改内容。如不涉及,需填写“不涉及” 不涉及 # 【接口变更】 > 请确认是否涉及跨代码仓或者客户面可见的接口变更。如涉及,需要详细说明接口以及对应的变更内容,同时需要在资料中体现。如不涉及,需填写“不涉及” 不涉及 # 【功能验证】 > 说明测试场景,测试方法。如果本次测试方式与常规单元测试不同,请详细说明您的测试步骤\ > 新增/变更内容是否已新增/适配UT测试用例看护,并补充测试自验证截图 运行torchbench网络tts_angular, aot_eager, mlir, dvm能够成功运行, 不报错 # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [x] 代码注释完备,正确记录错误日志 - [x] 代码实现进行了返回值、空指针等校验 - [x] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [x] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!36485 | 2 个月前 | |
bugfix: remove the decomposition of expm1 from torchbench and add it to mlir. Co-authored-by: yvjc<yujincheng7@huawei.com> # message auto-generated for no-merge-commit merge: !36485 merge decomp10 into v2.10.0 bugfix: remove the decomposition of expm1 from torchbench and add it to mlir. Created-by: yvjc Commit-by: yvjc Merged-by: ascend-robot Description: <!-- PR描述模板更新日期:20260203 --> # 【合入来源】 > <font color="red">**如有社区issue,请关联issue链接**</font>\ > <font color="red">**请勿携带内部流程信息(需求链接、问题单、内部issue等)**</font> https://gitcode.com/Ascend/pytorch/issues/1962 - [ ] 需求 - [x] 问题单 - [ ] issue/工单 - [ ] 重构优化 - [ ] 资料更新 bug: torchbench 在aot_eager模式下运行tts_angular网络, 出现 RuntimeError: duplicate registrations for aten.expm1.default, 重复注册decomposition实现的行为, 分析发现, 在torchbench的npu_support.py对该网络的patch中import了_inductor, 由于是aot_eager后端, 走了triton初始化流程. triton初始化流程中具有对expm1的decomposition实现, 从而导致重复注册. 原本存在的test_inductor_fallback_list.py这个ut存在将triton和mlir后端在同一进程中运行的问题,在inductor初始化的时候首先初始化了triton后端的相关配置,然后在mlir测试例子时又初始化mlir后端的相关配置,导致在triton后端中已经对expm1进行注册,在mlir初始化时会注册失败。该问题属于ut问题,因此将test_inductor_fallback_list.py拆为test_inductor_fallback_list_triton.py和test_inductor_fallback_list_mlir.py两个ut。 # 【修改方案】 > 请描述修改内容的具体实现,涉及哪些组件之间进行交互,可以用1、2、3、...进行罗列\ > 如果是需求或者重构类的PR,需要补充详细设计文档(说明上下游组件关系、时序图、类图、DFX能力等内容) inductor添加mlir后端expm1的decomposition实现,与其他版本对齐. 去除torchbench npu_support.py tts_angular网络patch中添加的expm1 decomposition实现. # 【资料变更】 > 请确认是否涉及资料变更。如涉及,需要在PR中体现,并简要说明修改内容。如不涉及,需填写“不涉及” 不涉及 # 【接口变更】 > 请确认是否涉及跨代码仓或者客户面可见的接口变更。如涉及,需要详细说明接口以及对应的变更内容,同时需要在资料中体现。如不涉及,需填写“不涉及” 不涉及 # 【功能验证】 > 说明测试场景,测试方法。如果本次测试方式与常规单元测试不同,请详细说明您的测试步骤\ > 新增/变更内容是否已新增/适配UT测试用例看护,并补充测试自验证截图 运行torchbench网络tts_angular, aot_eager, mlir, dvm能够成功运行, 不报错 # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [x] 代码注释完备,正确记录错误日志 - [x] 代码实现进行了返回值、空指针等校验 - [x] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [x] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!36485 | 2 个月前 | |
fix: fix log message bug Co-authored-by: luochao60<luochao60@huawei.com> # message auto-generated for no-merge-commit merge: !37360 merge Pynative_fix_log_bug_20260601_v2.10.0 into v2.10.0 fix: fix log message bug Created-by: luochao60 Commit-by: luochao60 Merged-by: ascend-robot Description: <!-- PR描述模板更新日期:20260203 --> # 【合入来源】 > (如有)请关联需求文档/issue链接 > 关联 issue: #2212 (https://gitcode.com/Ascend/pytorch/issues/2212) - [ ] 需求 - [x] 问题单 - [ ] issue/工单 - [ ] 重构优化 - [ ] 资料更新 # 【修改方案】 > 请描述修改内容的具体实现,涉及哪些组件之间进行交互,可以用1、2、3、...进行罗列 > 如果是需求或者重构类的PR,需要补充详细设计文档(说明上下游组件关系、时序图、类图、DFX能力等内容) 1. 修改 test/_inductor/test_inductor_graph_partition.py 中 TestGraphPartitionNPU.test_graph_partition_log_message 的日志校验文本。 2. 将 NPU graph tree record 日志匹配从旧格式 [NPUGRAPH-TREE][Node][Record] function=0, graph=0 更新为当前实际输出 NPUGRAPH-TREE Node Record function=0, graph=0。 3. 该改动只调整测试期望文本,保持图分区和 NPU graph 录制逻辑不变。 # 【资料变更】 > 请确认是否涉及资料变更。如涉及,需要在PR中体现,并简要说明修改内容。如不涉及,需填写"不涉及" 不涉及 # 【接口变更】 > 请确认是否涉及跨代码仓或者客户面可见的接口变更。如涉及,需要详细说明接口以及对应的变更内容,同时需要在资料中体现。如不涉及,需填写"不涉及" 不涉及 # 【功能验证】 > 说明测试场景,测试方法。如果本次测试方式与常规单元测试不同,请详细说明您的测试步骤 > 新增/变更内容是否已新增/适配UT测试用例看护,并补充测试自验证截图 修改现有 UT test/_inductor/test_inductor_graph_partition.py::TestGraphPartitionNPU::test_graph_partition_log_message 的日志匹配文本,用于适配当前 NPU graph tree record 日志格式。待 CI 在 v2.9.0、v2.10.0、v2.11.0、v2.12.0、master 分支完成验证。 # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [x] 代码注释完备,正确记录错误日志 - [x] 代码实现进行了返回值、空指针等校验 - [x] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [x] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!37360 | 2 个月前 | |
[inductor] inductor support master Co-authored-by: duchengkun<duchengkun1@huawei.com> # message auto-generated for no-merge-commit merge: merge inductor_master into master [inductor] inductor support master Created-by: duchengkun Commit-by: duchengkun Merged-by: ascend-robot Description: inductor支持master - 在2.的基础上做的修改 - master的修改可以通过[inductor master](https://gitcode.com/Ascend/pytorch/commit/f99438d3eb6fff832f820bdebf4930fd4aa00512?ref=inductor_master&prId=25033)这个commit查看,为了方便检视,暂时不做commit squash See merge request: Ascend/pytorch!25033 | 10 个月前 | |
[inductor] inductor support master Co-authored-by: duchengkun<duchengkun1@huawei.com> # message auto-generated for no-merge-commit merge: merge inductor_master into master [inductor] inductor support master Created-by: duchengkun Commit-by: duchengkun Merged-by: ascend-robot Description: inductor支持master - 在2.的基础上做的修改 - master的修改可以通过[inductor master](https://gitcode.com/Ascend/pytorch/commit/f99438d3eb6fff832f820bdebf4930fd4aa00512?ref=inductor_master&prId=25033)这个commit查看,为了方便检视,暂时不做commit squash See merge request: Ascend/pytorch!25033 | 10 个月前 | |
【inductor】fix inductor ci bug Co-authored-by: kkjocker<hexuanyu1@huawei.com> # message auto-generated for no-merge-commit merge: !30175 merge v2.10.0_main into v2.10.0 【inductor】fix inductor ci bug Created-by: kkjocker Commit-by: kkjocker Merged-by: ascend-robot Description: <!-- Thanks for sending a pull request! --> **What type of PR is this?** > Uncomment only one /kind <> line, hit enter to put that in a new line, and remove leading whitespaces from that line: > > /kind bug > /kind task > /kind feature **What does this PR do / why do we need it**: 修复inductor ci问题 **Which issue(s) this PR fixes**: <!-- *Automatically closes linked issue when PR is merged. Usage: Fixes #<issue number>, or Fixes (paste link of issue). --> Fixes # **Special notes for your reviewers**: See merge request: Ascend/pytorch!30175 | 6 个月前 | |
[inductor] inductor support master Co-authored-by: duchengkun<duchengkun1@huawei.com> # message auto-generated for no-merge-commit merge: merge inductor_master into master [inductor] inductor support master Created-by: duchengkun Commit-by: duchengkun Merged-by: ascend-robot Description: inductor支持master - 在2.的基础上做的修改 - master的修改可以通过[inductor master](https://gitcode.com/Ascend/pytorch/commit/f99438d3eb6fff832f820bdebf4930fd4aa00512?ref=inductor_master&prId=25033)这个commit查看,为了方便检视,暂时不做commit squash See merge request: Ascend/pytorch!25033 | 10 个月前 | |
2.10 inductor代码同步 Co-authored-by: p00669756<pangjiayi@huawei.com> # message auto-generated for no-merge-commit merge: !39073 merge pta210_0622 into v2.10.0 2.10 inductor代码同步 Created-by: TonyYA Commit-by: p00669756;TonyYA Merged-by: ascend-robot Description: <!-- PR描述模板更新日期:20260203 --> # 【合入来源】 https://gitcode.com/Ascend/pytorch/issues/2487 - [x] 需求 - [ ] 问题单 - [ ] issue/工单 - [ ] 重构优化 - [ ] 资料更新 # 【修改方案】 同步2.9 inductor修改至2.10,同时关闭社区默认打开的mix_order_reduction # 【资料变更】 > 请确认是否涉及资料变更。如涉及,需要在PR中体现,并简要说明修改内容。如不涉及,需填写“不涉及” # 【接口变更】 > 请确认是否涉及跨代码仓或者客户面可见的接口变更。如涉及,需要详细说明接口以及对应的变更内容,同时需要在资料中体现。如不涉及,需填写“不涉及” # 【功能验证】 模型验证结果: https://onebox.huawei.com/v/6d6647cf5de9b3f8a5118370ddb7a875?type=1&sheet=2.10%E6%A8%A1%E5%9E%8B%E6%B5%8B%E8%AF%95 # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [x] 代码注释完备,正确记录错误日志 - [x] 代码实现进行了返回值、空指针等校验 - [x] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [x] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!39073 | 1 个月前 | |
test: add MLIR non-fallback kernel regression test Co-authored-by: yvjc<yujincheng7@huawei.com> # message auto-generated for no-merge-commit merge: !38542 merge fusionTest-v2.10.0 into v2.10.0 test: add MLIR non-fallback kernel regression test Created-by: yvjc Commit-by: yvjc Merged-by: ascend-robot Description: https://gitcode.com/Ascend/pytorch/issues/2392 <!-- PR描述模板更新日期:20260203 --> # 【合入来源】 > <font color="red">**如有社区issue,请关联issue链接**</font>\ > <font color="red">**请勿携带内部流程信息(需求链接、问题单、内部issue等)**</font> - [ ] 需求 - [ ] 问题单 - [x] issue/工单 - [ ] 重构优化 - [ ] 资料更新 # 【修改方案】 > 请描述修改内容的具体实现,涉及哪些组件之间进行交互,可以用1、2、3、...进行罗列\ > 如果是需求或者重构类的PR,需要补充详细设计文档(说明上下游组件关系、时序图、类图、DFX能力等内容) 新增 MLIR 后端 kernel 编译回归 UT: 1. 构造基础 pointwise 融合计算,并通过 torch.compile 使用 MLIR 后端编译执行。 2. Hook NpuMlirCompiler.run,记录实际执行 kernel 的 is_fallback_kernel 状态。 3. 断言执行过程中不存在 fallback kernel,防止 MLIR kernel 编译失败后静默回退。 4. 将编译后的 NPU 结果与 CPU eager 结果进行精度对比。 # 【资料变更】 > 请确认是否涉及资料变更。如涉及,需要在PR中体现,并简要说明修改内容。如不涉及,需填写“不涉及” 不涉及 # 【接口变更】 > 请确认是否涉及跨代码仓或者客户面可见的接口变更。如涉及,需要详细说明接口以及对应的变更内容,同时需要在资料中体现。如不涉及,需填写“不涉及” 不涉及 # 【功能验证】 > 说明测试场景,测试方法。如果本次测试方式与常规单元测试不同,请详细说明您的测试步骤\ > 新增/变更内容是否已新增/适配UT测试用例看护,并补充测试自验证截图 ut验证通过 # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [x] 代码注释完备,正确记录错误日志 - [x] 代码实现进行了返回值、空指针等校验 - [x] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [x] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!38542 | 2 个月前 | |
test: add MLIR non-fallback kernel regression test Co-authored-by: yvjc<yujincheng7@huawei.com> # message auto-generated for no-merge-commit merge: !38542 merge fusionTest-v2.10.0 into v2.10.0 test: add MLIR non-fallback kernel regression test Created-by: yvjc Commit-by: yvjc Merged-by: ascend-robot Description: https://gitcode.com/Ascend/pytorch/issues/2392 <!-- PR描述模板更新日期:20260203 --> # 【合入来源】 > <font color="red">**如有社区issue,请关联issue链接**</font>\ > <font color="red">**请勿携带内部流程信息(需求链接、问题单、内部issue等)**</font> - [ ] 需求 - [ ] 问题单 - [x] issue/工单 - [ ] 重构优化 - [ ] 资料更新 # 【修改方案】 > 请描述修改内容的具体实现,涉及哪些组件之间进行交互,可以用1、2、3、...进行罗列\ > 如果是需求或者重构类的PR,需要补充详细设计文档(说明上下游组件关系、时序图、类图、DFX能力等内容) 新增 MLIR 后端 kernel 编译回归 UT: 1. 构造基础 pointwise 融合计算,并通过 torch.compile 使用 MLIR 后端编译执行。 2. Hook NpuMlirCompiler.run,记录实际执行 kernel 的 is_fallback_kernel 状态。 3. 断言执行过程中不存在 fallback kernel,防止 MLIR kernel 编译失败后静默回退。 4. 将编译后的 NPU 结果与 CPU eager 结果进行精度对比。 # 【资料变更】 > 请确认是否涉及资料变更。如涉及,需要在PR中体现,并简要说明修改内容。如不涉及,需填写“不涉及” 不涉及 # 【接口变更】 > 请确认是否涉及跨代码仓或者客户面可见的接口变更。如涉及,需要详细说明接口以及对应的变更内容,同时需要在资料中体现。如不涉及,需填写“不涉及” 不涉及 # 【功能验证】 > 说明测试场景,测试方法。如果本次测试方式与常规单元测试不同,请详细说明您的测试步骤\ > 新增/变更内容是否已新增/适配UT测试用例看护,并补充测试自验证截图 ut验证通过 # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [x] 代码注释完备,正确记录错误日志 - [x] 代码实现进行了返回值、空指针等校验 - [x] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [x] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!38542 | 2 个月前 | |
2.10 inductor代码同步 Co-authored-by: p00669756<pangjiayi@huawei.com> # message auto-generated for no-merge-commit merge: !39073 merge pta210_0622 into v2.10.0 2.10 inductor代码同步 Created-by: TonyYA Commit-by: p00669756;TonyYA Merged-by: ascend-robot Description: <!-- PR描述模板更新日期:20260203 --> # 【合入来源】 https://gitcode.com/Ascend/pytorch/issues/2487 - [x] 需求 - [ ] 问题单 - [ ] issue/工单 - [ ] 重构优化 - [ ] 资料更新 # 【修改方案】 同步2.9 inductor修改至2.10,同时关闭社区默认打开的mix_order_reduction # 【资料变更】 > 请确认是否涉及资料变更。如涉及,需要在PR中体现,并简要说明修改内容。如不涉及,需填写“不涉及” # 【接口变更】 > 请确认是否涉及跨代码仓或者客户面可见的接口变更。如涉及,需要详细说明接口以及对应的变更内容,同时需要在资料中体现。如不涉及,需填写“不涉及” # 【功能验证】 模型验证结果: https://onebox.huawei.com/v/6d6647cf5de9b3f8a5118370ddb7a875?type=1&sheet=2.10%E6%A8%A1%E5%9E%8B%E6%B5%8B%E8%AF%95 # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [x] 代码注释完备,正确记录错误日志 - [x] 代码实现进行了返回值、空指针等校验 - [x] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [x] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!39073 | 1 个月前 | |
多项式问题修复 Co-authored-by: zhoujinning<zhoujinning2@huawei.com> # message auto-generated for no-merge-commit merge: !44410 merge v210_0 into v2.10.0 多项式问题修复 Created-by: zhoujinning Commit-by: zhoujinning Merged-by: ascend-robot Description: [#3945](https://gitcode.com/Ascend/pytorch/issues/3945) <!-- PR描述模板更新日期:20260203 --> # 【合入来源】 > <font color="red">**如有社区issue,请关联issue链接**</font>\ > <font color="red">**请勿携带内部流程信息(需求链接、问题单、内部issue等)**</font> - [ ] 需求 - [ ] 问题单 - [ ] issue/工单 - [ ] 重构优化 - [ ] 资料更新 # 【修改方案】 > 请描述修改内容的具体实现,涉及哪些组件之间进行交互,可以用1、2、3、...进行罗列\ > 如果是需求或者重构类的PR,需要补充详细设计文档(说明上下游组件关系、时序图、类图、DFX能力等内容) # 【资料变更】 > 请确认是否涉及资料变更。如涉及,需要在PR中体现,并简要说明修改内容。如不涉及,需填写“不涉及” # 【接口变更】 > 请确认是否涉及跨代码仓或者客户面可见的接口变更。如涉及,需要详细说明接口以及对应的变更内容,同时需要在资料中体现。如不涉及,需填写“不涉及” # 【功能验证】 > 说明测试场景,测试方法。如果本次测试方式与常规单元测试不同,请详细说明您的测试步骤\ > 新增/变更内容是否已新增/适配UT测试用例看护,并补充测试自验证截图 # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [ ] 代码注释完备,正确记录错误日志 - [ ] 代码实现进行了返回值、空指针等校验 - [ ] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [ ] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!44410 | 10 天前 | |
fix(inductor): preserve scheduler store semantics in linear triton transpose-copy Co-authored-by: HinPeng<pengxuan9@huawei.com> Co-authored-by: Xuan Peng<hin.meego@gmail.com> # message auto-generated for no-merge-commit merge: !39857 merge br/fix-linear-codegen-acc-210 into v2.10.0 fix(inductor): preserve scheduler store semantics in linear triton transpose-copy Created-by: HinPeng Commit-by: Xuan Peng;HinPeng Merged-by: ascend-robot Description: Backport from v2.7.1 https://gitcode.com/Ascend/pytorch/issues/2500 <!-- PR描述模板更新日期:20260203 --> # 【合入来源】 > <font color="red">**如有社区issue,请关联issue链接**</font>\ > <font color="red">**请勿携带内部流程信息(需求链接、问题单、内部issue等)**</font> - [ ] 需求 - [ ] 问题单 - [ ] issue/工单 - [ ] 重构优化 - [ ] 资料更新 # 【修改方案】 > 请描述修改内容的具体实现,涉及哪些组件之间进行交互,可以用1、2、3、...进行罗列\ > 如果是需求或者重构类的PR,需要补充详细设计文档(说明上下游组件关系、时序图、类图、DFX能力等内容) # 【资料变更】 > 请确认是否涉及资料变更。如涉及,需要在PR中体现,并简要说明修改内容。如不涉及,需填写“不涉及” # 【接口变更】 > 请确认是否涉及跨代码仓或者客户面可见的接口变更。如涉及,需要详细说明接口以及对应的变更内容,同时需要在资料中体现。如不涉及,需填写“不涉及” # 【功能验证】 > 说明测试场景,测试方法。如果本次测试方式与常规单元测试不同,请详细说明您的测试步骤\ > 新增/变更内容是否已新增/适配UT测试用例看护,并补充测试自验证截图 # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [ ] 代码注释完备,正确记录错误日志 - [ ] 代码实现进行了返回值、空指针等校验 - [ ] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [ ] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!39857 | 1 个月前 | |
[inductor] inductor support master Co-authored-by: duchengkun<duchengkun1@huawei.com> # message auto-generated for no-merge-commit merge: merge inductor_master into master [inductor] inductor support master Created-by: duchengkun Commit-by: duchengkun Merged-by: ascend-robot Description: inductor支持master - 在2.的基础上做的修改 - master的修改可以通过[inductor master](https://gitcode.com/Ascend/pytorch/commit/f99438d3eb6fff832f820bdebf4930fd4aa00512?ref=inductor_master&prId=25033)这个commit查看,为了方便检视,暂时不做commit squash See merge request: Ascend/pytorch!25033 | 10 个月前 | |
fix(mfusion): preserve output container kind in contract restore Co-authored-by: shaoshengqi<shaoshengqi@huawei.com> # message auto-generated for no-merge-commit merge: !38664 merge fix-mfusion-ViewCopy-v2.10.0 into v2.10.0 fix(mfusion): preserve output container kind in contract restore Created-by: propathee Commit-by: shaoshengqi 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/1962 # 【修改方案】 > 请描述修改内容的具体实现,涉及哪些组件之间进行交互,可以用1、2、3、...进行罗列\ > 如果是需求或者重构类的PR,需要补充详细设计文档(说明上下游组件关系、时序图、类图、DFX能力等内容) 1. torch_npu/_inductor/mfusion/graph_fusion.py:修复 _restore_output_contract 在恢复 output contract 时始终将输出容器类型强制转换为 tuple 的问题。新增 _output_container_kind() 函数检测原始输出容器类型(tuple/list/single),_snapshot_output_contract 记录该信息,_restore_output_contract 按原始类型恢复。 2. test/_inductor/test_mfusion_graph_fusion.py:新增 test_restore_output_contract_preserves_single_output 和 test_restore_output_contract_preserves_list_output 两个单测用例,覆盖单输出和列表输出的容器类型保持场景。同时清理了 ImportError fallback 中无用的 # type: ignore[misc, assignment] 注释。 # 【资料变更】 > 请确认是否涉及资料变更。如涉及,需要在PR中体现,并简要说明修改内容。如不涉及,需填写"不涉及" 不涉及 # 【接口变更】 > 请确认是否涉及跨代码仓或者客户面可见的接口变更。如涉及,需要详细说明接口以及对应的变更内容,同时需要在资料中体现。如不涉及,需填写"不涉及" 不涉及 # 【功能验证】 > 说明测试场景,测试方法。如果本次测试方式与常规单元测试不同,请详细说明您的测试步骤\ > 新增/变更内容是否已新增/适配UT测试用例看护,并补充测试自验证截图 运行 test/_inductor/test_mfusion_graph_fusion.py 中的 TestMfusionOutputContract 全部用例: bash cd test python test_mfusion_graph_fusion.py -v -k TestMfusionOutputContract 新增 2 个 UT 覆盖单输出和 list 输出的容器类型保持,已有用例覆盖 tuple 输出 + None 槽位 + stride 元数据保持。 # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [x] 代码注释完备,正确记录错误日志 - [x] 代码实现进行了返回值、空指针等校验 - [x] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [ ] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!38664 | 2 个月前 | |
perf: defer dynamo and inductor imports on v2.10.0 (#2788) Co-authored-by: stevenaw0<huangguijun@huawei.com> # message auto-generated for no-merge-commit merge: !44372 merge import_opt_pr2_v2.10.0 into v2.10.0 perf: defer dynamo and inductor imports on v2.10.0 (#2788) Created-by: stevenaw0 Commit-by: stevenaw0 Merged-by: ascend-robot Description: # 【合入来源】 > 同步 v2.9.0_import 分支的 import 优化 PR (#2788),commit 范围 8fe9dbf643..e00227b824(19个commit) - [x] 重构优化 # 【修改方案】 > 将 torch._dynamo 和 torch._inductor 的导入延迟到首次 torch.compile 调用,减少 torch_npu 导入时间。 1. 从 registry_manager._register_components() 中移除 _register_dynamo(),改为延迟注册 2. 在 _dynamo.py 中实现 lazy setup 机制:_lazy_dynamo_setup / _lazy_inductor_setup / _setup_inductor_for_compile 3. 在 setup.py 中注册 torch_dynamo_backends entry points(npu / npugraph_ex / npugraphs) 4. 在 dynamo/__init__.py 中新增 entry point callable 和 _NpugraphsBackendEntryPoint 5. 将 npugraph_ex、npugraphs、deterministic 等模块改为 lazy import 6. 新增 _graph_tree_state.py 轻量状态模块,分离 mark_step_begin 状态 7. 清理 erfc decomposition 注册前重复 ## v2.10.0 适配(Adapted) - EventVariable 在 PyTorch 2.10 中从 ctx_manager 移至 streams 模块 - 移除 patch_variable_builder:PyTorch 2.10 原生 VariableBuilder._wrap 已处理 torch.Event(含 npu 子类) - 保留 v2.10.0 独有的 patch_npu_stream_context 和 apply_dataclass_with_cached_hash_patch - 保留 v2.10.0 独有的 aten.addmm 和 aten.repeat_interleave decomposition # 【资料变更】 不涉及 # 【接口变更】 不涉及 # 【功能验证】 - test/dynamo/test_compile_trigger.py: 21 passed, 1 skipped (onnxscript 未安装) - test/test_torch_npu_init.py: 15 passed - test/_inductor/test_current_device.py: 1 passed - 验证环境: conda torch-npu-2.10.0-py311 - test_mlir_enable.py 失败为 MLIR 后端已有问题(_module_lowering API mismatch),非本次改动引入 # 【CheckList】 - [x] 代码注释完备,正确记录错误日志 - [x] 代码实现进行了返回值、空指针等校验 - [x] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [ ] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!44372 | 12 天前 | |
【rfc】mlir_triton_lowering_file_refactoring Co-authored-by: 1479518308<cuiduo1@huawei.com> # message auto-generated for no-merge-commit merge: !37279 merge v2.10.0 into v2.10.0 【rfc】mlir_triton_lowering_file_refactoring Created-by: cuiduo Commit-by: 1479518308 Merged-by: ascend-robot Description: <!-- PR描述模板更新日期:20260203 --> # 【合入来源】 > <font color="red">**如有社区issue,请关联issue链接**</font>\ > <font color="red">**请勿携带内部流程信息(需求链接、问题单、内部issue等)**</font> - [x] 需求 - [ ] 问题单 - [ ] issue/工单 - [ ] 重构优化 - [ ] 资料更新 # 【修改方案】 > 对lowering部分进行重构,torch_npu/_inductor 在 Lowering 层 的多后端(Triton / MLIR / DVM)共享重构方案及转测要求。核心改动是:将 Triton 与 MLIR/DVM 两套 lowering 中重复的逻辑抽取到 lowering_common.py,通过 lowering_patch.py 实现 同进程 backend 切换时的 lowering 快照/恢复,并配合 _load_backend() 按需加载各后端 lowering 实现,消除原先 inductor_patch/__init__.py import 时整表 monkey-patch 的副作用。详见关联文档 # 【资料变更】 > 不涉及 # 【接口变更】 >不涉及 # 【功能验证】 > 已通过 # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [x] 代码注释完备,正确记录错误日志 - [x] 代码实现进行了返回值、空指针等校验 - [x] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [x] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!37279 | 2 个月前 | |
fix(inductor): keep multi_slice_concat out of epilogue fusion Co-authored-by: xudezheng<xudezheng1@huawei.com> # message auto-generated for no-merge-commit merge: !44887 merge v2.10.0_multi_slice into v2.10.0 fix(inductor): keep multi_slice_concat out of epilogue fusion Created-by: crazyDannyBoy Commit-by: xudezheng Merged-by: ascend-robot Description: 回退pr:https://gitcode.com/Ascend/pytorch/pull/44718 <!-- PR描述模板更新日期:20260203 --> # 【合入来源】 > <font color="red">**如有社区issue,请关联issue链接**</font>\ > <font color="red">**请勿携带内部流程信息(需求链接、问题单、内部issue等)**</font> - [ ] 需求 - [ ] 问题单 - [ ] issue/工单 - [ ] 重构优化 - [ ] 资料更新 # 【修改方案】 > 请描述修改内容的具体实现,涉及哪些组件之间进行交互,可以用1、2、3、...进行罗列\ > 如果是需求或者重构类的PR,需要补充详细设计文档(说明上下游组件关系、时序图、类图、DFX能力等内容) # 【资料变更】 > 请确认是否涉及资料变更。如涉及,需要在PR中体现,并简要说明修改内容。如不涉及,需填写“不涉及” # 【接口变更】 > 请确认是否涉及跨代码仓或者客户面可见的接口变更。如涉及,需要详细说明接口以及对应的变更内容,同时需要在资料中体现。如不涉及,需填写“不涉及” # 【功能验证】 > 说明测试场景,测试方法。如果本次测试方式与常规单元测试不同,请详细说明您的测试步骤\ > 新增/变更内容是否已新增/适配UT测试用例看护,并补充测试自验证截图 # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [ ] 代码注释完备,正确记录错误日志 - [ ] 代码实现进行了返回值、空指针等校验 - [ ] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [ ] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!44887 | 4 天前 | |
[inductor]sync graph optimization and multi stream ut Co-authored-by: zhoujinning<zhoujinning2@huawei.com> # message auto-generated for no-merge-commit merge: !44482 merge v210 into v2.10.0 [inductor]sync graph optimization and multi stream ut Created-by: zhoujinning Commit-by: zhoujinning Merged-by: ascend-robot Description: [#3978](https://gitcode.com/Ascend/pytorch/issues/3978) <!-- PR描述模板更新日期:20260203 --> # 【合入来源】 > <font color="red">**如有社区issue,请关联issue链接**</font>\ > <font color="red">**请勿携带内部流程信息(需求链接、问题单、内部issue等)**</font> - [ ] 需求 - [ ] 问题单 - [ ] issue/工单 - [ ] 重构优化 - [ ] 资料更新 # 【修改方案】 > 请描述修改内容的具体实现,涉及哪些组件之间进行交互,可以用1、2、3、...进行罗列\ > 如果是需求或者重构类的PR,需要补充详细设计文档(说明上下游组件关系、时序图、类图、DFX能力等内容) # 【资料变更】 > 请确认是否涉及资料变更。如涉及,需要在PR中体现,并简要说明修改内容。如不涉及,需填写“不涉及” # 【接口变更】 > 请确认是否涉及跨代码仓或者客户面可见的接口变更。如涉及,需要详细说明接口以及对应的变更内容,同时需要在资料中体现。如不涉及,需填写“不涉及” # 【功能验证】 > 说明测试场景,测试方法。如果本次测试方式与常规单元测试不同,请详细说明您的测试步骤\ > 新增/变更内容是否已新增/适配UT测试用例看护,并补充测试自验证截图 # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [ ] 代码注释完备,正确记录错误日志 - [ ] 代码实现进行了返回值、空指针等校验 - [ ] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [ ] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!44482 | 7 天前 | |
support_list_for_register_meta_npu Co-authored-by: 1479518308<cuiduo1@huawei.com> # message auto-generated for no-merge-commit merge: !39248 merge v2.10.0 into v2.10.0 support_list_for_register_meta_npu Created-by: cuiduo Commit-by: 1479518308 Merged-by: ascend-robot Description: <!-- PR描述模板更新日期:20260203 --> # 【合入来源】 > <font color="red">**如有社区issue,请关联issue链接**</font>\ > <font color="red">**请勿携带内部流程信息(需求链接、问题单、内部issue等)**</font> - [ ] 需求 - [x] 问题单 - [ ] issue/工单 - [ ] 重构优化 - [ ] 资料更新 # 【修改方案】 > 删除patch,功能已实现 > 为sort函数注册新的meta,解决stride不一致的问题 # 【资料变更】 > 不涉及 # 【接口变更】 > 不涉及 # 【功能验证】 > 已补充UT # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [x] 代码注释完备,正确记录错误日志 - [x] 代码实现进行了返回值、空指针等校验 - [x] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [x] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!39248 | 1 个月前 | |
feat add shim_npu Co-authored-by: zzhongmin<zhongmin23@huawei.com> # message auto-generated for no-merge-commit merge: !35589 merge v2.10.0_shim into v2.10.0 feat add shim_npu Created-by: zzhongmin Commit-by: zzhongmin Merged-by: ascend-robot Description: <!-- PR描述模板更新日期:20260203 --> # 【合入来源】 - [x] 需求 - [ ] 问题单 - [ ] issue/工单 - [ ] 重构优化 - [ ] 资料更新 # 【修改方案】 将 NPU AOTI Shim 层对齐到上游 CUDA 实现(shim_cuda.cpp),补齐缺失的设备管理、流管理、内存分配等关键 shim 函数。 1. 新增 7 组 NPU Shim 函数(shim_npu.cpp + shim.h) - 设备 Guard 三件套:create_npu_guard / delete_npu_guard / npu_guard_set_index,实现 AOTI 模型执行时的设备自动切换与恢复 - 流 Guard 两件套:create_npu_stream_guard / delete_npu_stream_guard,实现流状态的自动切换与恢复 - 获取当前流:get_current_npu_stream,查询指定设备的当前 NPU 流 - 缓存分配器两件套:npu_caching_allocator_raw_alloc / raw_delete,复用 PyTorch 显存池,替代低效的 aclrtMalloc/aclrtFree 2. 改进已有函数的错误处理(shim_npu.cpp) - 所有输出参数增加空指针检查,预置 nullptr 防止异常时残留野值 - create_tensor_from_blob_npu_v2 修正错误码传播:throw → TORCH_CHECK,检查内部调用返回值 3. 新增流查找底层支撑(NPUStream.cpp) - 新增 getNPUStreamFromManagedAclrtStream,在 torch_npu 管理的流池中查找 aclrtStream 对应的 NPUStream 对象,等价于 CUDA 的 getStreamFromExternal 4. AOTI 运行时改进(model.h + utils_npu.h) - RAII_npuMalloc 新增 AOT_INDUCTOR_USE_CACHING_ALLOCATOR 分支,支持通过 shim 调用缓存分配器 - 新增 normalize_run_stream:当 stream 为 nullptr 时自动获取当前 NPU 流,应用于 run() / run_single_threaded() / run_const_fold() - 新增 utils_npu.h:提供 AOTINpuGuard / AOTINpuStreamGuard RAII 封装类,供 model.so 内部使用 5. 修复流传递 Bug(model_container_runner_npu.cpp) - run_impl:尊重调用者传入的 stream_handle,仅在为 nullptr 时回退到当前流 - run_with_npu_stream:修复忽略传入流参数的 Bug 6. 修正 Python 代码生成(npu_device.py + cpp_wrapper.py) - cpp_aoti_device_guard:raise NotImplementedError → "AOTINpuGuard" - cpp_aoti_stream_guard:"AOTICudaStreamGuard" → "AOTINpuStreamGuard" - aoti_get_stream:"aoti_torch_get_current_cuda_stream" → "aoti_torch_get_current_npu_stream" - cpp_wrapper.py:生成代码中 include utils_npu.h # 【资料变更】 > 请确认是否涉及资料变更。如涉及,需要在PR中体现,并简要说明修改内容。如不涉及,需填写“不涉及” # 【接口变更】 > 请确认是否涉及跨代码仓或者客户面可见的接口变更。如涉及,需要详细说明接口以及对应的变更内容,同时需要在资料中体现。如不涉及,需填写“不涉及” # 【功能验证】 > 说明测试场景,测试方法。如果本次测试方式与常规单元测试不同,请详细说明您的测试步骤\ > 新增/变更内容是否已新增/适配UT测试用例看护,并补充测试自验证截图 # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [x] 代码注释完备,正确记录错误日志 - [x] 代码实现进行了返回值、空指针等校验 - [x] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [x] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!35589 | 3 个月前 | |
2.10 inductor代码同步 Co-authored-by: p00669756<pangjiayi@huawei.com> # message auto-generated for no-merge-commit merge: !39073 merge pta210_0622 into v2.10.0 2.10 inductor代码同步 Created-by: TonyYA Commit-by: p00669756;TonyYA Merged-by: ascend-robot Description: <!-- PR描述模板更新日期:20260203 --> # 【合入来源】 https://gitcode.com/Ascend/pytorch/issues/2487 - [x] 需求 - [ ] 问题单 - [ ] issue/工单 - [ ] 重构优化 - [ ] 资料更新 # 【修改方案】 同步2.9 inductor修改至2.10,同时关闭社区默认打开的mix_order_reduction # 【资料变更】 > 请确认是否涉及资料变更。如涉及,需要在PR中体现,并简要说明修改内容。如不涉及,需填写“不涉及” # 【接口变更】 > 请确认是否涉及跨代码仓或者客户面可见的接口变更。如涉及,需要详细说明接口以及对应的变更内容,同时需要在资料中体现。如不涉及,需填写“不涉及” # 【功能验证】 模型验证结果: https://onebox.huawei.com/v/6d6647cf5de9b3f8a5118370ddb7a875?type=1&sheet=2.10%E6%A8%A1%E5%9E%8B%E6%B5%8B%E8%AF%95 # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [x] 代码注释完备,正确记录错误日志 - [x] 代码实现进行了返回值、空指针等校验 - [x] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [x] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!39073 | 1 个月前 | |
inductor: use simt_template as kernel default compile_mode Co-authored-by: Stonexx<sheny1xuan@163.com> # message auto-generated for no-merge-commit merge: !40035 merge sync_37939_v2.10_2 into v2.10.0 inductor: use simt_template as kernel default compile_mode Created-by: stonexxx Commit-by: Stonexx Merged-by: ascend-robot Description: <!-- PR描述模板更新日期:20260203 --> # 【合入来源】 > <font color="red">**如有社区issue,请关联issue链接**</font>\ > <font color="red">**请勿携带内部流程信息(需求链接、问题单、内部issue等)**</font> https://gitcode.com/Ascend/pytorch/issues/2571 - [ ] 需求 - [ ] 问题单 - [ ] issue/工单 - [ ] 重构优化 - [ ] 资料更新 # 【修改方案】 > 请描述修改内容的具体实现,涉及哪些组件之间进行交互,可以用1、2、3、...进行罗列\ > 如果是需求或者重构类的PR,需要补充详细设计文档(说明上下游组件关系、时序图、类图、DFX能力等内容) # 【资料变更】 > 请确认是否涉及资料变更。如涉及,需要在PR中体现,并简要说明修改内容。如不涉及,需填写“不涉及” # 【接口变更】 > 请确认是否涉及跨代码仓或者客户面可见的接口变更。如涉及,需要详细说明接口以及对应的变更内容,同时需要在资料中体现。如不涉及,需填写“不涉及” # 【功能验证】 > 说明测试场景,测试方法。如果本次测试方式与常规单元测试不同,请详细说明您的测试步骤\ > 新增/变更内容是否已新增/适配UT测试用例看护,并补充测试自验证截图 # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [ ] 代码注释完备,正确记录错误日志 - [ ] 代码实现进行了返回值、空指针等校验 - [ ] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [ ] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!40035 | 1 个月前 | |
2.10 inductor代码同步 Co-authored-by: p00669756<pangjiayi@huawei.com> # message auto-generated for no-merge-commit merge: !39073 merge pta210_0622 into v2.10.0 2.10 inductor代码同步 Created-by: TonyYA Commit-by: p00669756;TonyYA Merged-by: ascend-robot Description: <!-- PR描述模板更新日期:20260203 --> # 【合入来源】 https://gitcode.com/Ascend/pytorch/issues/2487 - [x] 需求 - [ ] 问题单 - [ ] issue/工单 - [ ] 重构优化 - [ ] 资料更新 # 【修改方案】 同步2.9 inductor修改至2.10,同时关闭社区默认打开的mix_order_reduction # 【资料变更】 > 请确认是否涉及资料变更。如涉及,需要在PR中体现,并简要说明修改内容。如不涉及,需填写“不涉及” # 【接口变更】 > 请确认是否涉及跨代码仓或者客户面可见的接口变更。如涉及,需要详细说明接口以及对应的变更内容,同时需要在资料中体现。如不涉及,需填写“不涉及” # 【功能验证】 模型验证结果: https://onebox.huawei.com/v/6d6647cf5de9b3f8a5118370ddb7a875?type=1&sheet=2.10%E6%A8%A1%E5%9E%8B%E6%B5%8B%E8%AF%95 # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [x] 代码注释完备,正确记录错误日志 - [x] 代码实现进行了返回值、空指针等校验 - [x] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [x] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!39073 | 1 个月前 | |
[Fix] Fix static check errors detected by SPACES Co-authored-by: huangjingwei<huangjingwei4@huawei.com> # message auto-generated for no-merge-commit merge: !36365 merge v2.10.0_lintrunner into v2.10.0 [Fix] Fix static check errors detected by SPACES Created-by: huangjingwei Commit-by: huangjingwei Merged-by: ascend-robot Description: <!-- PR描述模板更新日期:20260203 --> # 【合入来源】 > <font color="red">**如有社区issue,请关联issue链接**</font>\ > <font color="red">**请勿携带内部流程信息(需求链接、问题单、内部issue等)**</font> - [ ] 需求 - [ ] 问题单 - [x] issue/工单 - [ ] 重构优化 - [ ] 资料更新 # 【修改方案】 检测和删除代码中的行尾空白字符 # 【资料变更】 不涉及 # 【接口变更】 不涉及 # 【功能验证】 不涉及 # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [x] 代码注释完备,正确记录错误日志 - [x] 代码实现进行了返回值、空指针等校验 - [x] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [x] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!36365 | 3 个月前 | |
fix: harden path validation in reselect_static_kernel_with_path Co-authored-by: rich<zhouruiqi5@huawei.com> # message auto-generated for no-merge-commit merge: !40495 merge v2.10.0 into v2.10.0 fix: harden path validation in reselect_static_kernel_with_path Created-by: rich9527 Commit-by: rich Merged-by: ascend-robot Description: <!-- PR描述模板更新日期:20260203 --> # 【合入来源】 > <font color="red">**如有社区issue,请关联issue链接**</font>\ > <font color="red">**请勿携带内部流程信息(需求链接、问题单、内部issue等)**</font> https://gitcode.com/Ascend/pytorch/issues/2634 https://gitcode.com/Ascend/pytorch/pull/40386 - [ ] 需求 - [ ] 问题单 - [ ] issue/工单 - [x] 重构优化 - [ ] 资料更新 # 【修改方案】 > 请描述修改内容的具体实现,涉及哪些组件之间进行交互,可以用1、2、3、...进行罗列\ > 如果是需求或者重构类的PR,需要补充详细设计文档(说明上下游组件关系、时序图、类图、DFX能力等内容) 1.路径规范化与解析增强: 在 Module.cpp 中,使用 realpath() 将用户输入的路径解析为绝对路径 abs_path,再基于 abs_path 进行 stat 存在性检查和 S_ISDIR 目录类型判断,并将解析后的路径传入后续的 lambda 和 API 调用,防止原始路径中的符号链接或相对路径绕过校验。 2.新增边界条件单元测试: 在 test_npu_static_kernel.py 中新增 4 个测试用例,分别覆盖路径非字符串、路径含空字节、路径不存在、路径为文件而非目录的场景,验证各类非法输入均抛出 RuntimeError。 3.函数指针判空逻辑调整: 在 OpInterface.cpp 的 ReselectStaticKernelWithPath 中,将 TORCH_CHECK 判空检查移入 if 分支内部,仅在函数指针未初始化时才执行校验,避免重复检查。 4.接口注释修正: 在 OpInterface.h 中移除了 ReselectStaticKernelWithPath 文档注释中“it need to be called once at process”的过时描述。 5.测试文件存量lint检查修正:去除未使用的import,修改一个重复定义bug。 # 【资料变更】 > 请确认是否涉及资料变更。如涉及,需要在PR中体现,并简要说明修改内容。如不涉及,需填写“不涉及” 不涉及 # 【接口变更】 > 请确认是否涉及跨代码仓或者客户面可见的接口变更。如涉及,需要详细说明接口以及对应的变更内容,同时需要在资料中体现。如不涉及,需填写“不涉及” 不涉及 # 【功能验证】 > 说明测试场景,测试方法。如果本次测试方式与常规单元测试不同,请详细说明您的测试步骤\ > 新增/变更内容是否已新增/适配UT测试用例看护,并补充测试自验证截图 新增UT补充 cmd (zrq_310_29) root@xxx:xxx# python /xxx/torch_npu/test/_inductor/test_npu_static_kernel.py /xxx/lib/python3.10/site-packages/torch_npu/_inductor/__init__.py:97: UserWarning: triton-ascend is not installed, install it first. warnings.warn("triton-ascend is not installed, install it first.") .......... ---------------------------------------------------------------------- Ran 10 tests in 0.593s OK # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [x] 代码注释完备,正确记录错误日志 - [x] 代码实现进行了返回值、空指针等校验 - [x] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [x] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!40495 | 1 个月前 | |
skip npu sync func to master Co-authored-by: lihui<lihui488@huawei.com> # message auto-generated for no-merge-commit merge: !27578 merge master into master skip npu sync func to master Created-by: lihui488 Commit-by: lihui Merged-by: ascend-robot Description: <!-- Thanks for sending a pull request! --> **What type of PR is this?** > Uncomment only one /kind <> line, hit enter to put that in a new line, and remove leading whitespaces from that line: > > /kind bug > /kind task > /kind feature **What does this PR do / why do we need it**: **Which issue(s) this PR fixes**: <!-- *Automatically closes linked issue when PR is merged. Usage: Fixes #<issue number>, or Fixes (paste link of issue). --> Fixes # **Special notes for your reviewers**: See merge request: Ascend/pytorch!27578 | 8 个月前 | |
[Fix] Fix static check errors detected by SPACES Co-authored-by: huangjingwei<huangjingwei4@huawei.com> # message auto-generated for no-merge-commit merge: !36365 merge v2.10.0_lintrunner into v2.10.0 [Fix] Fix static check errors detected by SPACES Created-by: huangjingwei Commit-by: huangjingwei Merged-by: ascend-robot Description: <!-- PR描述模板更新日期:20260203 --> # 【合入来源】 > <font color="red">**如有社区issue,请关联issue链接**</font>\ > <font color="red">**请勿携带内部流程信息(需求链接、问题单、内部issue等)**</font> - [ ] 需求 - [ ] 问题单 - [x] issue/工单 - [ ] 重构优化 - [ ] 资料更新 # 【修改方案】 检测和删除代码中的行尾空白字符 # 【资料变更】 不涉及 # 【接口变更】 不涉及 # 【功能验证】 不涉及 # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [x] 代码注释完备,正确记录错误日志 - [x] 代码实现进行了返回值、空指针等校验 - [x] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [x] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!36365 | 3 个月前 | |
fix(inductor): preserve scheduler store semantics in linear triton transpose-copy Co-authored-by: HinPeng<pengxuan9@huawei.com> Co-authored-by: Xuan Peng<hin.meego@gmail.com> # message auto-generated for no-merge-commit merge: !39857 merge br/fix-linear-codegen-acc-210 into v2.10.0 fix(inductor): preserve scheduler store semantics in linear triton transpose-copy Created-by: HinPeng Commit-by: Xuan Peng;HinPeng Merged-by: ascend-robot Description: Backport from v2.7.1 https://gitcode.com/Ascend/pytorch/issues/2500 <!-- PR描述模板更新日期:20260203 --> # 【合入来源】 > <font color="red">**如有社区issue,请关联issue链接**</font>\ > <font color="red">**请勿携带内部流程信息(需求链接、问题单、内部issue等)**</font> - [ ] 需求 - [ ] 问题单 - [ ] issue/工单 - [ ] 重构优化 - [ ] 资料更新 # 【修改方案】 > 请描述修改内容的具体实现,涉及哪些组件之间进行交互,可以用1、2、3、...进行罗列\ > 如果是需求或者重构类的PR,需要补充详细设计文档(说明上下游组件关系、时序图、类图、DFX能力等内容) # 【资料变更】 > 请确认是否涉及资料变更。如涉及,需要在PR中体现,并简要说明修改内容。如不涉及,需填写“不涉及” # 【接口变更】 > 请确认是否涉及跨代码仓或者客户面可见的接口变更。如涉及,需要详细说明接口以及对应的变更内容,同时需要在资料中体现。如不涉及,需填写“不涉及” # 【功能验证】 > 说明测试场景,测试方法。如果本次测试方式与常规单元测试不同,请详细说明您的测试步骤\ > 新增/变更内容是否已新增/适配UT测试用例看护,并补充测试自验证截图 # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [ ] 代码注释完备,正确记录错误日志 - [ ] 代码实现进行了返回值、空指针等校验 - [ ] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [ ] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!39857 | 1 个月前 | |
【inductor】fix inductor ci bug Co-authored-by: kkjocker<hexuanyu1@huawei.com> # message auto-generated for no-merge-commit merge: !30175 merge v2.10.0_main into v2.10.0 【inductor】fix inductor ci bug Created-by: kkjocker Commit-by: kkjocker Merged-by: ascend-robot Description: <!-- Thanks for sending a pull request! --> **What type of PR is this?** > Uncomment only one /kind <> line, hit enter to put that in a new line, and remove leading whitespaces from that line: > > /kind bug > /kind task > /kind feature **What does this PR do / why do we need it**: 修复inductor ci问题 **Which issue(s) this PR fixes**: <!-- *Automatically closes linked issue when PR is merged. Usage: Fixes #<issue number>, or Fixes (paste link of issue). --> Fixes # **Special notes for your reviewers**: See merge request: Ascend/pytorch!30175 | 6 个月前 | |
[inductor]sync PR:38117 Co-authored-by: rain-666<chenxiaoyu12@huawei.com> # message auto-generated for no-merge-commit merge: !39786 merge v2.10.0_simd_codegen_bug into v2.10.0 [inductor]sync PR:38117 Created-by: rain-666 Commit-by: rain-666 Merged-by: ascend-robot Description: <!-- PR描述模板更新日期:20260203 --> # 【合入来源】 > <font color="red">**如有社区issue,请关联issue链接**</font>\ > <font color="red">**请勿携带内部流程信息(需求链接、问题单、内部issue等)**</font> - [ ] 需求 - [ ] 问题单 - [ ] issue/工单 - [ ] 重构优化 - [ ] 资料更新 # 【修改方案】 > 请描述修改内容的具体实现,涉及哪些组件之间进行交互,可以用1、2、3、...进行罗列\ > 如果是需求或者重构类的PR,需要补充详细设计文档(说明上下游组件关系、时序图、类图、DFX能力等内容) # 【资料变更】 > 请确认是否涉及资料变更。如涉及,需要在PR中体现,并简要说明修改内容。如不涉及,需填写“不涉及” # 【接口变更】 > 请确认是否涉及跨代码仓或者客户面可见的接口变更。如涉及,需要详细说明接口以及对应的变更内容,同时需要在资料中体现。如不涉及,需填写“不涉及” # 【功能验证】 > 说明测试场景,测试方法。如果本次测试方式与常规单元测试不同,请详细说明您的测试步骤\ > 新增/变更内容是否已新增/适配UT测试用例看护,并补充测试自验证截图 # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [ ] 代码注释完备,正确记录错误日志 - [ ] 代码实现进行了返回值、空指针等校验 - [ ] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [ ] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!39786 | 1 个月前 | |
[inductor][ut] unskip ut Co-authored-by: qiaoyaodan<qiaoyaodan@huawei.com> # message auto-generated for no-merge-commit merge: !44254 merge fix_aoti_bug_v2100 into v2.10.0 [inductor][ut] unskip ut Created-by: qiaoyaodan888 Commit-by: qiaoyaodan Merged-by: ascend-robot Description: <!-- PR描述模板更新日期:20260203 --> # 【合入来源】 > <font color="red">**如有社区issue,请关联issue链接**</font>\ > <font color="red">**请勿携带内部流程信息(需求链接、问题单、内部issue等)**</font> - [ ] 需求 - [ ] 问题单 - [ ] issue/工单 - [ ] 重构优化 - [ ] 资料更新 # 【修改方案】 之前有一部分ut在2.10.0上面会莫名其妙跑超时,所以当时将这些ut暂时skip,现在解除skip # 【资料变更】 > 请确认是否涉及资料变更。如涉及,需要在PR中体现,并简要说明修改内容。如不涉及,需填写“不涉及” # 【接口变更】 > 请确认是否涉及跨代码仓或者客户面可见的接口变更。如涉及,需要详细说明接口以及对应的变更内容,同时需要在资料中体现。如不涉及,需填写“不涉及” # 【功能验证】 > 说明测试场景,测试方法。如果本次测试方式与常规单元测试不同,请详细说明您的测试步骤\ > 新增/变更内容是否已新增/适配UT测试用例看护,并补充测试自验证截图 # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [ ] 代码注释完备,正确记录错误日志 - [ ] 代码实现进行了返回值、空指针等校验 - [ ] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [ ] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!44254 | 13 天前 | |
【inductor】fix inductor ci bug Co-authored-by: kkjocker<hexuanyu1@huawei.com> # message auto-generated for no-merge-commit merge: !30175 merge v2.10.0_main into v2.10.0 【inductor】fix inductor ci bug Created-by: kkjocker Commit-by: kkjocker Merged-by: ascend-robot Description: <!-- Thanks for sending a pull request! --> **What type of PR is this?** > Uncomment only one /kind <> line, hit enter to put that in a new line, and remove leading whitespaces from that line: > > /kind bug > /kind task > /kind feature **What does this PR do / why do we need it**: 修复inductor ci问题 **Which issue(s) this PR fixes**: <!-- *Automatically closes linked issue when PR is merged. Usage: Fixes #<issue number>, or Fixes (paste link of issue). --> Fixes # **Special notes for your reviewers**: See merge request: Ascend/pytorch!30175 | 6 个月前 | |
[inductor] inductor support master Co-authored-by: duchengkun<duchengkun1@huawei.com> # message auto-generated for no-merge-commit merge: merge inductor_master into master [inductor] inductor support master Created-by: duchengkun Commit-by: duchengkun Merged-by: ascend-robot Description: inductor支持master - 在2.的基础上做的修改 - master的修改可以通过[inductor master](https://gitcode.com/Ascend/pytorch/commit/f99438d3eb6fff832f820bdebf4930fd4aa00512?ref=inductor_master&prId=25033)这个commit查看,为了方便检视,暂时不做commit squash See merge request: Ascend/pytorch!25033 | 10 个月前 | |
【inductor】Temporarily close some inductor ci tests, accelarate ci access control Co-authored-by: kkjocker<hexuanyu1@huawei.com> # message auto-generated for no-merge-commit merge: !30305 merge v2.10.0 into v2.10.0 【inductor】Temporarily close some inductor ci tests, accelarate ci access control Created-by: kkjocker Commit-by: kkjocker Merged-by: ascend-robot Description: <!-- Thanks for sending a pull request! --> **What type of PR is this?** > Uncomment only one /kind <> line, hit enter to put that in a new line, and remove leading whitespaces from that line: > > /kind bug > /kind task > /kind feature **What does this PR do / why do we need it**: **Which issue(s) this PR fixes**: <!-- *Automatically closes linked issue when PR is merged. Usage: Fixes #<issue number>, or Fixes (paste link of issue). --> Fixes # **Special notes for your reviewers**: See merge request: Ascend/pytorch!30305 | 6 个月前 | |
[fix]tiling_key_error Co-authored-by: cuiduo<cuiduo1@huawei.com> # message auto-generated for no-merge-commit merge: !32340 merge v2.10.0 into v2.10.0 [fix]tiling_key_error Created-by: cuiduo Commit-by: cuiduo Merged-by: ascend-robot Description: <!-- PR描述模板更新日期:20260203 --> # 【合入来源】 > <font color="red">**如有社区issue,请关联issue链接**</font>\ > <font color="red">**请勿携带内部流程信息(需求链接、问题单、内部issue等)**</font> - [ ] 需求 - [ ] 问题单 - [x] issue/工单 - [ ] 重构优化 - [ ] 资料更新 # 【修改方案】 >1. 在codegen的tiling阶段,会调用get_axis_dtype来获取node的type,当axis为sympy.Expr类时会报错 > >File "/home/cuiduo/miniconda3/envs/py311/lib/python3.11/site-packages/torch_npu/_inductor/codegen/triton.py", line 790, in get_axis_dtype >dim = self.range_tree_nodes_removed[key] >torch ._ dynamo. exc. BackendCompilerFailed: backend='inductor' raised: >KeyError: x2 + 512*y1 + 2048*z0 > >因此需要增加校验,提取sympy.Expr中的Symbol以进行dtype的判断 # 【资料变更】 > 不涉及 # 【接口变更】 >不涉及 # 【功能验证】 > 自验完成 # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [x] 代码注释完备,正确记录错误日志 - [x] 代码实现进行了返回值、空指针等校验 - [x] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [x] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!32340 | 4 个月前 | |
[Fix] Fix static check errors detected by SPACES Co-authored-by: huangjingwei<huangjingwei4@huawei.com> # message auto-generated for no-merge-commit merge: !36365 merge v2.10.0_lintrunner into v2.10.0 [Fix] Fix static check errors detected by SPACES Created-by: huangjingwei Commit-by: huangjingwei Merged-by: ascend-robot Description: <!-- PR描述模板更新日期:20260203 --> # 【合入来源】 > <font color="red">**如有社区issue,请关联issue链接**</font>\ > <font color="red">**请勿携带内部流程信息(需求链接、问题单、内部issue等)**</font> - [ ] 需求 - [ ] 问题单 - [x] issue/工单 - [ ] 重构优化 - [ ] 资料更新 # 【修改方案】 检测和删除代码中的行尾空白字符 # 【资料变更】 不涉及 # 【接口变更】 不涉及 # 【功能验证】 不涉及 # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [x] 代码注释完备,正确记录错误日志 - [x] 代码实现进行了返回值、空指针等校验 - [x] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [x] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!36365 | 3 个月前 | |
add_random_op Co-authored-by: sunhaolun<sunhaolun3@huawei.com> # message auto-generated for no-merge-commit merge: !30655 merge v2.10.0 into v2.10.0 add_random_op Created-by: sunhaolun Commit-by: sunhaolun Merged-by: ascend-robot Description: <!-- PR描述模板更新日期:20260203 --> # 【合入来源】 > (如有)请关联需求文档/issue链接 - [x] 需求 - [ ] 问题单 - [ ] issue/工单 - [ ] 重构优化 - [ ] 资料更新 # 【修改方案】 通过对原生rng实现代码打patch的方法注册npu设备的实现。主要主要针对\torch\_prims\rng_prims.py 中的philox_rand_offset,philox_rand_offset_meta,register_philox_rand,register_run_and_save_rng_state_op,register_run_with_rng_state_op这些代码。其中_philox_rand 此函数原生调用中不传入设备类型,修改为传入设备npu。 # 【资料变更】 不涉及 # 【接口变更】 不涉及 # 【功能验证】 编写UT进行测试,可以保证在固定随机种子的情况下eager,inductor可以得到相同的结果(如有需要可提供截图) # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [x] 代码注释完备,正确记录错误日志 - [x] 代码实现进行了返回值、空指针等校验 - [x] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [x] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!30655 | 6 个月前 | |
add_random_op Co-authored-by: sunhaolun<sunhaolun3@huawei.com> # message auto-generated for no-merge-commit merge: !30655 merge v2.10.0 into v2.10.0 add_random_op Created-by: sunhaolun Commit-by: sunhaolun Merged-by: ascend-robot Description: <!-- PR描述模板更新日期:20260203 --> # 【合入来源】 > (如有)请关联需求文档/issue链接 - [x] 需求 - [ ] 问题单 - [ ] issue/工单 - [ ] 重构优化 - [ ] 资料更新 # 【修改方案】 通过对原生rng实现代码打patch的方法注册npu设备的实现。主要主要针对\torch\_prims\rng_prims.py 中的philox_rand_offset,philox_rand_offset_meta,register_philox_rand,register_run_and_save_rng_state_op,register_run_with_rng_state_op这些代码。其中_philox_rand 此函数原生调用中不传入设备类型,修改为传入设备npu。 # 【资料变更】 不涉及 # 【接口变更】 不涉及 # 【功能验证】 编写UT进行测试,可以保证在固定随机种子的情况下eager,inductor可以得到相同的结果(如有需要可提供截图) # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [x] 代码注释完备,正确记录错误日志 - [x] 代码实现进行了返回值、空指针等校验 - [x] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [x] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!30655 | 6 个月前 | |
【inductor】Temporarily close some inductor ci tests, accelarate ci access control Co-authored-by: kkjocker<hexuanyu1@huawei.com> # message auto-generated for no-merge-commit merge: !30305 merge v2.10.0 into v2.10.0 【inductor】Temporarily close some inductor ci tests, accelarate ci access control Created-by: kkjocker Commit-by: kkjocker Merged-by: ascend-robot Description: <!-- Thanks for sending a pull request! --> **What type of PR is this?** > Uncomment only one /kind <> line, hit enter to put that in a new line, and remove leading whitespaces from that line: > > /kind bug > /kind task > /kind feature **What does this PR do / why do we need it**: **Which issue(s) this PR fixes**: <!-- *Automatically closes linked issue when PR is merged. Usage: Fixes #<issue number>, or Fixes (paste link of issue). --> Fixes # **Special notes for your reviewers**: See merge request: Ascend/pytorch!30305 | 6 个月前 | |
fix_config_copy Co-authored-by: sunhaolun<sunhaolun3@huawei.com> # message auto-generated for no-merge-commit merge: !36442 merge v2.10.0 into v2.10.0 fix_config_copy Created-by: sunhaolun Commit-by: sunhaolun Merged-by: ascend-robot Description: <!-- PR描述模板更新日期:20260203 --> https://gitcode.com/Ascend/pytorch/issues/1962 # 【合入来源】 > <font color="red">**如有社区issue,请关联issue链接**</font>\ > <font color="red">**请勿携带内部流程信息(需求链接、问题单、内部issue等)**</font> - [ ] 需求 - [ ] 问题单 - [x] issue/工单 - [ ] 重构优化 - [ ] 资料更新 # 【修改方案】 torch_npu/utils/_dynamo.py 的 patch_inductor_wrapper() 将 new_get_config_copy 通过 类级别 (ConfigModule.get_config_copy = ...) patch 到了所有 ConfigModule 实例上。当 torch._functorch.config.get_config_copy() 在第一次编译过程中被调用时(jit_compile_runtime_wrappers.py:194),4 个 NPU 特有的 config key 被永久注入到 functorch config 的 _config 字典中。第二次编译时 save_config() 序列化的内容多了这 4 个 key → 不同的 hash → AOT autograd cache miss。 修复:在 new_get_config_copy 中添加一行检查 if self is not torch._inductor.config: return ori_dict,确保 NPU config key 只注入到 inductor config,不影响 functorch config 等其他 ConfigModule 实例。 # 【资料变更】 不涉及 # 【接口变更】 不涉及 # 【功能验证】 全量UT验证 # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [x] 代码注释完备,正确记录错误日志 - [x] 代码实现进行了返回值、空指针等校验 - [x] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [x] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!36442 | 2 个月前 | |
fix_nfa_grad_meta Co-authored-by: sunhaolun<sunhaolun3@huawei.com> # message auto-generated for no-merge-commit merge: !38633 merge v2.10.0 into v2.10.0 fix_nfa_grad_meta Created-by: sunhaolun Commit-by: sunhaolun Merged-by: ascend-robot Description: <!-- PR描述模板更新日期:20260203 --> https://gitcode.com/Ascend/pytorch/issues/2433 # 【合入来源】 > <font color="red">**如有社区issue,请关联issue链接**</font>\ > <font color="red">**请勿携带内部流程信息(需求链接、问题单、内部issue等)**</font> - [ ] 需求 - [ ] 问题单 - [ ] issue/工单 - [x] 重构优化 - [ ] 资料更新 # 【修改方案】 删除了对 torch._dynamo.utils.run_node 的 monkey patch:去掉 _patch_run_node() 以及 torch._dynamo.utils.run_node = _patch_run_node。 原先在 Dynamo run_node 阶段特殊处理 npu.npu_fusion_attention,把 actual_seq_qlen / actual_seq_kvlen 转成 list;现在这个逻辑下沉到了 npu_stream.py 的算子封装里。 npu_fusion_attention_grad 同步支持 softmax_layout、sink,返回值从 4 个扩展为 5 个,新增 dsink 梯度。 将 prefix、actual_seq_qlen、actual_seq_kvlen 的 tensor-to-list 转换放到 wrapper 内部处理,替代原来在 run_node patch 里的处理。 新增 InductorNpuAttentionFunction 的 autograd 封装,forward 保存 sink,backward 返回 grad_sink,并通过 apply_inductor_npu_attention_patch() 替换 torch.ops.npu.npu_fusion_attention。 # 【资料变更】 不涉及 # 【接口变更】 不涉及 # 【功能验证】 Ci UT全量自检 # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [x] 代码注释完备,正确记录错误日志 - [x] 代码实现进行了返回值、空指针等校验 - [x] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [x] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!38633 | 2 个月前 | |
[2.10] refactor: move shape handling into dynamo utils Co-authored-by: stevenaw0<huangguijun@huawei.com> # message auto-generated for no-merge-commit merge: !45029 merge fix4204_2.10_v2 into v2.10.0 [2.10] refactor: move shape handling into dynamo utils Created-by: stevenaw0 Commit-by: stevenaw0 Merged-by: ascend-robot Description: # 【合入来源】 - [ ] 需求 - [ ] 问题单 - [x] issue/工单 - [x] 重构优化 - [ ] 资料更新 关联 Issue: [#4094](https://gitcode.com/Ascend/pytorch/issues/4094) 关联 Issue:#4204 关联 Issue:#4241(Shape Handling 迁移到 Dynamo utils) # 【修改方案】 1. 将 NPUShapeHandling、unified_copy、Shape Handling 的 Dynamo patch 实现从 torch_npu/utils/_shape_handling.py 迁移至 torch_npu/utils/_dynamo.py。 2. 删除独立实现文件,更新 torch_npu/_inductor/shape_handling.py 为兼容 shim,保留 NPUShapeHandling、unified_copy、patch_dynamo_context 和 patch_shape_handling 的既有入口及幂等状态语义。 3. 保持 Shape Handling 配置、延迟初始化、输入变换/输出恢复以及 Dynamo/Inductor 延迟加载时序不变,不在 _dynamo.py 顶层导入 torch_npu._inductor。 # 【资料变更】 不涉及 # 【接口变更】 不涉及。保留 torch_npu._inductor.shape_handling 兼容入口。 # 【功能验证】 - 原失败用例验证通过 - shape_handling.py函数对比一致 # 【CheckList】 - [x] 代码注释完备,正确记录错误日志 - [x] 代码实现进行了返回值、空指针等校验 - [x] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [x] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!45029 | 3 天前 | |
[inductor] inductor support master Co-authored-by: duchengkun<duchengkun1@huawei.com> # message auto-generated for no-merge-commit merge: merge inductor_master into master [inductor] inductor support master Created-by: duchengkun Commit-by: duchengkun Merged-by: ascend-robot Description: inductor支持master - 在2.的基础上做的修改 - master的修改可以通过[inductor master](https://gitcode.com/Ascend/pytorch/commit/f99438d3eb6fff832f820bdebf4930fd4aa00512?ref=inductor_master&prId=25033)这个commit查看,为了方便检视,暂时不做commit squash See merge request: Ascend/pytorch!25033 | 10 个月前 | |
[inductor] inductor support master Co-authored-by: duchengkun<duchengkun1@huawei.com> # message auto-generated for no-merge-commit merge: merge inductor_master into master [inductor] inductor support master Created-by: duchengkun Commit-by: duchengkun Merged-by: ascend-robot Description: inductor支持master - 在2.的基础上做的修改 - master的修改可以通过[inductor master](https://gitcode.com/Ascend/pytorch/commit/f99438d3eb6fff832f820bdebf4930fd4aa00512?ref=inductor_master&prId=25033)这个commit查看,为了方便检视,暂时不做commit squash See merge request: Ascend/pytorch!25033 | 10 个月前 | |
[inductor][ut] unskip ut Co-authored-by: qiaoyaodan<qiaoyaodan@huawei.com> # message auto-generated for no-merge-commit merge: !44254 merge fix_aoti_bug_v2100 into v2.10.0 [inductor][ut] unskip ut Created-by: qiaoyaodan888 Commit-by: qiaoyaodan Merged-by: ascend-robot Description: <!-- PR描述模板更新日期:20260203 --> # 【合入来源】 > <font color="red">**如有社区issue,请关联issue链接**</font>\ > <font color="red">**请勿携带内部流程信息(需求链接、问题单、内部issue等)**</font> - [ ] 需求 - [ ] 问题单 - [ ] issue/工单 - [ ] 重构优化 - [ ] 资料更新 # 【修改方案】 之前有一部分ut在2.10.0上面会莫名其妙跑超时,所以当时将这些ut暂时skip,现在解除skip # 【资料变更】 > 请确认是否涉及资料变更。如涉及,需要在PR中体现,并简要说明修改内容。如不涉及,需填写“不涉及” # 【接口变更】 > 请确认是否涉及跨代码仓或者客户面可见的接口变更。如涉及,需要详细说明接口以及对应的变更内容,同时需要在资料中体现。如不涉及,需填写“不涉及” # 【功能验证】 > 说明测试场景,测试方法。如果本次测试方式与常规单元测试不同,请详细说明您的测试步骤\ > 新增/变更内容是否已新增/适配UT测试用例看护,并补充测试自验证截图 # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [ ] 代码注释完备,正确记录错误日志 - [ ] 代码实现进行了返回值、空指针等校验 - [ ] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [ ] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!44254 | 13 天前 | |
meta_check Co-authored-by: cuiduo<cuiduo1@huawei.com> # message auto-generated for no-merge-commit merge: !30461 merge v2.10.0 into v2.10.0 meta_check Created-by: cuiduo Commit-by: cuiduo Merged-by: ascend-robot Description: <!-- PR描述模板更新日期:20260203 --> # 【合入来源】 > (如有)请关联需求文档/issue链接 - [x] 需求 - [ ] 问题单 - [ ] issue/工单 - [ ] 重构优化 - [ ] 资料更新 # 【修改方案】 >1. 修复resize_as_和squeeze_算子的unknow format type问题,新增fake tensor校验以绕过过适配流程。 >2.BaseSchedulerNode新增校验,避免非标准节点错误。 # 【资料变更】 > 不涉及 # 【接口变更】 > 不涉及 # 【功能验证】 > 新增测试文件test/_inductor/test_resize_as和test_squeeze_.py,参与ut看护 # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [x] 代码注释完备,正确记录错误日志 - [x] 代码实现进行了返回值、空指针等校验 - [x] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [x] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!30461 | 6 个月前 | |
inductor/fx_passes: dynamic graph optimization e2e Co-authored-by: xudezheng<xudezheng1@huawei.com> # message auto-generated for no-merge-commit merge: !44486 merge v2.10.0_graph_opt_clean into v2.10.0 inductor/fx_passes: dynamic graph optimization e2e Created-by: crazyDannyBoy Commit-by: xudezheng Merged-by: ascend-robot Description: <!-- PR描述模板更新日期:20260203 --> # 【合入来源】 > <font color="red">**如有社区issue,请关联issue链接**</font>\ > <font color="red">**请勿携带内部流程信息(需求链接、问题单、内部issue等)**</font> - [ ] 需求 - [ ] 问题单 - [ ] issue/工单 - [ ] 重构优化 - [ ] 资料更新 # 【修改方案】 > 请描述修改内容的具体实现,涉及哪些组件之间进行交互,可以用1、2、3、...进行罗列\ > 如果是需求或者重构类的PR,需要补充详细设计文档(说明上下游组件关系、时序图、类图、DFX能力等内容) # 【资料变更】 > 请确认是否涉及资料变更。如涉及,需要在PR中体现,并简要说明修改内容。如不涉及,需填写“不涉及” # 【接口变更】 > 请确认是否涉及跨代码仓或者客户面可见的接口变更。如涉及,需要详细说明接口以及对应的变更内容,同时需要在资料中体现。如不涉及,需填写“不涉及” # 【功能验证】 > 说明测试场景,测试方法。如果本次测试方式与常规单元测试不同,请详细说明您的测试步骤\ > 新增/变更内容是否已新增/适配UT测试用例看护,并补充测试自验证截图 # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [ ] 代码注释完备,正确记录错误日志 - [ ] 代码实现进行了返回值、空指针等校验 - [ ] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [ ] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!44486 | 10 天前 | |
【inductor】Temporarily close some inductor ci tests, accelarate ci access control Co-authored-by: kkjocker<hexuanyu1@huawei.com> # message auto-generated for no-merge-commit merge: !30305 merge v2.10.0 into v2.10.0 【inductor】Temporarily close some inductor ci tests, accelarate ci access control Created-by: kkjocker Commit-by: kkjocker Merged-by: ascend-robot Description: <!-- Thanks for sending a pull request! --> **What type of PR is this?** > Uncomment only one /kind <> line, hit enter to put that in a new line, and remove leading whitespaces from that line: > > /kind bug > /kind task > /kind feature **What does this PR do / why do we need it**: **Which issue(s) this PR fixes**: <!-- *Automatically closes linked issue when PR is merged. Usage: Fixes #<issue number>, or Fixes (paste link of issue). --> Fixes # **Special notes for your reviewers**: See merge request: Ascend/pytorch!30305 | 6 个月前 | |
[Inductor] Symbolic dynamic-shape grouping for reductions Co-authored-by: xudezheng<xudezheng1@huawei.com> # message auto-generated for no-merge-commit merge: !42292 merge dynamic-shape-v2.10.0 into v2.10.0 [Inductor] Symbolic dynamic-shape grouping for reductions Created-by: crazyDannyBoy Commit-by: xudezheng Merged-by: ascend-robot Description: <!-- PR描述模板更新日期:20260203 --> # 【合入来源】 > <font color="red">**如有社区issue,请关联issue链接**</font>\ > <font color="red">**请勿携带内部流程信息(需求链接、问题单、内部issue等)**</font> - [ ] 需求 - [ ] 问题单 - [ ] issue/工单 - [ ] 重构优化 - [ ] 资料更新 # 【修改方案】 > 请描述修改内容的具体实现,涉及哪些组件之间进行交互,可以用1、2、3、...进行罗列\ > 如果是需求或者重构类的PR,需要补充详细设计文档(说明上下游组件关系、时序图、类图、DFX能力等内容) # 【资料变更】 > 请确认是否涉及资料变更。如涉及,需要在PR中体现,并简要说明修改内容。如不涉及,需填写“不涉及” # 【接口变更】 > 请确认是否涉及跨代码仓或者客户面可见的接口变更。如涉及,需要详细说明接口以及对应的变更内容,同时需要在资料中体现。如不涉及,需填写“不涉及” # 【功能验证】 > 说明测试场景,测试方法。如果本次测试方式与常规单元测试不同,请详细说明您的测试步骤\ > 新增/变更内容是否已新增/适配UT测试用例看护,并补充测试自验证截图 # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [ ] 代码注释完备,正确记录错误日志 - [ ] 代码实现进行了返回值、空指针等校验 - [ ] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [ ] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!42292 | 30 天前 | |
[inductor] inductor support master Co-authored-by: duchengkun<duchengkun1@huawei.com> # message auto-generated for no-merge-commit merge: merge inductor_master into master [inductor] inductor support master Created-by: duchengkun Commit-by: duchengkun Merged-by: ascend-robot Description: inductor支持master - 在2.的基础上做的修改 - master的修改可以通过[inductor master](https://gitcode.com/Ascend/pytorch/commit/f99438d3eb6fff832f820bdebf4930fd4aa00512?ref=inductor_master&prId=25033)这个commit查看,为了方便检视,暂时不做commit squash See merge request: Ascend/pytorch!25033 | 10 个月前 | |
fix(inductor): guard grouped benchmark memory footprint Co-authored-by: Xuan Peng<pengxuan9@huawei.com> # message auto-generated for no-merge-commit merge: !43884 merge br/fix-group-autotune-oom into v2.10.0 fix(inductor): guard grouped benchmark memory footprint Created-by: HinPeng Commit-by: Xuan Peng Merged-by: ascend-robot Description: Issue: https://gitcode.com/Ascend/pytorch/issues/3699 ## Summary When symbolic grouped autotuning is enabled in Inductor, representative benchmark inputs and workspaces are created for every reachable group. For kernels with large backing storage, non-contiguous strides, or mutated buffers, this can consume excessive NPU memory and trigger OOM before the user kernel runs. ## Implementation 1. Add grouped benchmark footprint estimation based on: - Representative group dimensions; - Tensor sizes, strides, and dtype item sizes; - Workspace allocations; - The peak clone size of mutated buffers. 2. Evaluate statically known benchmark expressions and fail closed when the footprint cannot be bounded. 3. Compare the estimated footprint with a configurable fraction of total NPU memory. 4. Add INDUCTOR_ASCEND_SYMBOLIC_GROUP_MAX_BENCHMARK_MEMORY_RATIO, defaulting to 0.25. 5. Disable grouped autotuning when the estimated footprint exceeds the budget or metadata is invalid. 6. Add unit and dynamic-shape regression tests covering oversized footprints, boundary conditions, invalid layouts, runtime-dependent expressions, and wide backing storage. ## Interface Changes Adds the customer-visible environment variable: INDUCTOR_ASCEND_SYMBOLIC_GROUP_MAX_BENCHMARK_MEMORY_RATIO Valid values are (0, 1]; the default is 25% of total NPU memory. <!-- PR描述模板更新日期:20260203 --> # 【合入来源】 > <font color="red">**如有社区issue,请关联issue链接**</font>\ > <font color="red">**请勿携带内部流程信息(需求链接、问题单、内部issue等)**</font> - [ ] 需求 - [ ] 问题单 - [x] issue/工单 - [ ] 重构优化 - [ ] 资料更新 # 【修改方案】 > 请描述修改内容的具体实现,涉及哪些组件之间进行交互,可以用1、2、3、...进行罗列\ > 如果是需求或者重构类的PR,需要补充详细设计文档(说明上下游组件关系、时序图、类图、DFX能力等内容) # 【资料变更】 > 请确认是否涉及资料变更。如涉及,需要在PR中体现,并简要说明修改内容。如不涉及,需填写“不涉及” # 【接口变更】 > 请确认是否涉及跨代码仓或者客户面可见的接口变更。如涉及,需要详细说明接口以及对应的变更内容,同时需要在资料中体现。如不涉及,需填写“不涉及” # 【功能验证】 > 说明测试场景,测试方法。如果本次测试方式与常规单元测试不同,请详细说明您的测试步骤\ > 新增/变更内容是否已新增/适配UT测试用例看护,并补充测试自验证截图 # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [ ] 代码注释完备,正确记录错误日志 - [ ] 代码实现进行了返回值、空指针等校验 - [ ] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [ ] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!43884 | 17 天前 | |
register_device_interface_for_triton Co-authored-by: cuiduo<cuiduo1@huawei.com> # message auto-generated for no-merge-commit merge: !43622 merge v2.10.0 into v2.10.0 register_device_interface_for_triton Created-by: cuiduo Commit-by: cuiduo Merged-by: ascend-robot Description: <!-- PR描述模板更新日期:20260203 --> # 【合入来源】 > <font color="red">**如有社区issue,请关联issue链接**</font>\ > <font color="red">**请勿携带内部流程信息(需求链接、问题单、内部issue等)**</font> - [ ] 需求 - [x] 问题单 - [ ] issue/工单 - [ ] 重构优化 - [ ] 资料更新 # 【修改方案】 >  修改上述报错,增加npuinterface注册 # 【资料变更】 > 不涉及 # 【接口变更】 > 不涉及 # 【功能验证】 > 本地验证通过 # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [x] 代码注释完备,正确记录错误日志 - [x] 代码实现进行了返回值、空指针等校验 - [x] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [x] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!43622 | 20 天前 | |
move_has_triton_to_dynamo Co-authored-by: 1479518308<cuiduo1@huawei.com> # message auto-generated for no-merge-commit merge: !43316 merge v2.10.0 into v2.10.0 move_has_triton_to_dynamo Created-by: cuiduo Commit-by: 1479518308 Merged-by: ascend-robot Description: <!-- PR描述模板更新日期:20260203 --> # 【合入来源】 > <font color="red">**如有社区issue,请关联issue链接**</font>\ > <font color="red">**请勿携带内部流程信息(需求链接、问题单、内部issue等)**</font> - [ ] 需求 - [ ] 问题单 - [x] issue/工单 - [ ] 重构优化 - [ ] 资料更新 # 【修改方案】 > has_triton在utils阶段的patch挪到init阶段 # 【资料变更】 > 不涉及 # 【接口变更】 > 不涉及 # 【功能验证】 > 本地验证通过 # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [x] 代码注释完备,正确记录错误日志 - [x] 代码实现进行了返回值、空指针等校验 - [x] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [x] PR持续集成流水线(CI)执行通过,代码检查无异常 Related: https://gitcode.com/Ascend/pytorch/issues/1978 See merge request: Ascend/pytorch!43316 | 24 天前 | |
fix: lintrunner --all-files --take NEWLINE -a Co-authored-by: huangjingwei<huangjingwei4@huawei.com> # message auto-generated for no-merge-commit merge: !35873 merge v2.10.0_lintrunner into v2.10.0 fix: lintrunner --all-files --take NEWLINE -a Created-by: huangjingwei Commit-by: huangjingwei Merged-by: ascend-robot Description: <!-- PR描述模板更新日期:20260203 --> # 【合入来源】 > <font color="red">**如有社区issue,请关联issue链接**</font>\ > <font color="red">**请勿携带内部流程信息(需求链接、问题单、内部issue等)**</font> - [ ] 需求 - [ ] 问题单 - [x] issue/工单 - [ ] 重构优化 - [ ] 资料更新 # 【修改方案】 1. 执行: lintrunner --all-files --take NEWLINE -a 修复换行符,不影响代码逻辑。 2. 屏蔽两个分布式用例,已提issue,给对应接口人跟踪。 # 【资料变更】 不涉及 # 【接口变更】 不涉及 # 【功能验证】 不涉及 # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [x] 代码注释完备,正确记录错误日志 - [x] 代码实现进行了返回值、空指针等校验 - [x] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [x] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!35873 | 3 个月前 | |
fix: lintrunner --all-files --take NEWLINE -a Co-authored-by: huangjingwei<huangjingwei4@huawei.com> # message auto-generated for no-merge-commit merge: !35873 merge v2.10.0_lintrunner into v2.10.0 fix: lintrunner --all-files --take NEWLINE -a Created-by: huangjingwei Commit-by: huangjingwei Merged-by: ascend-robot Description: <!-- PR描述模板更新日期:20260203 --> # 【合入来源】 > <font color="red">**如有社区issue,请关联issue链接**</font>\ > <font color="red">**请勿携带内部流程信息(需求链接、问题单、内部issue等)**</font> - [ ] 需求 - [ ] 问题单 - [x] issue/工单 - [ ] 重构优化 - [ ] 资料更新 # 【修改方案】 1. 执行: lintrunner --all-files --take NEWLINE -a 修复换行符,不影响代码逻辑。 2. 屏蔽两个分布式用例,已提issue,给对应接口人跟踪。 # 【资料变更】 不涉及 # 【接口变更】 不涉及 # 【功能验证】 不涉及 # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [x] 代码注释完备,正确记录错误日志 - [x] 代码实现进行了返回值、空指针等校验 - [x] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [x] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!35873 | 3 个月前 | |
[fix]user_autotune_npu Co-authored-by: cuiduo<cuiduo1@huawei.com> # message auto-generated for no-merge-commit merge: !32038 merge v2.10.0 into v2.10.0 [fix]user_autotune_npu Created-by: cuiduo Commit-by: cuiduo Merged-by: ascend-robot Description: <!-- PR描述模板更新日期:20260203 --> # 【合入来源】 > <font color="red">**如有社区issue,请关联issue链接**</font>\ > <font color="red">**请勿携带内部流程信息(需求链接、问题单、内部issue等)**</font> - [ ] 需求 - [ ] 问题单 - [x] issue/工单 - [ ] 重构优化 - [ ] 资料更新 # 【修改方案】 > 为NPU增加自定义算子接口user_autotune_npu,以替代原本的user_autotune包装器,同时增加FixedGridNpu与PrecomputedGridNpu适配,确保自定义算子正常运行 # 【资料变更】 > 不涉及 # 【接口变更】 > 不涉及 # 【功能验证】 > 以增加UT # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [x] 代码注释完备,正确记录错误日志 - [x] 代码实现进行了返回值、空指针等校验 - [x] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [x] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!32038 | 5 个月前 | |
[inductor] inductor support master Co-authored-by: duchengkun<duchengkun1@huawei.com> # message auto-generated for no-merge-commit merge: merge inductor_master into master [inductor] inductor support master Created-by: duchengkun Commit-by: duchengkun Merged-by: ascend-robot Description: inductor支持master - 在2.的基础上做的修改 - master的修改可以通过[inductor master](https://gitcode.com/Ascend/pytorch/commit/f99438d3eb6fff832f820bdebf4930fd4aa00512?ref=inductor_master&prId=25033)这个commit查看,为了方便检视,暂时不做commit squash See merge request: Ascend/pytorch!25033 | 10 个月前 | |
[inductor]layernorm fix welford_reduce issue Co-authored-by: rain-666<chenxiaoyu12@huawei.com> # message auto-generated for no-merge-commit merge: !44774 merge v2.10.0_layernorm_0818 into v2.10.0 [inductor]layernorm fix welford_reduce issue Created-by: rain-666 Commit-by: rain-666 Merged-by: ascend-robot Description: 为 Ascend 950 上的 LayerNormV4 增加环境变量开关:在 torch_npu/_inductor/config.py 新增 enable_layernorm_v4(读取环境变量 TORCHINDUCTOR_ENABLE_LAYERNORM_V4,默认关闭),用于在开启 Welford 时把宽度 512 的大行 LayerNorm 场景回退到融合的 CANN LayerNormV4 内核;同时增强 NPUIndexTritonKernel 的 Welford SIMD 代码生成(标量外轴与向量化切分循环、累加器初始化、持久化 reduction 判定),并新增对应测试用例验证 SIMD 代码生成路径。 See merge request: Ascend/pytorch!44774 | 3 天前 | |
[Inductor] fix rms norm reduction Co-authored-by: luqichao<luqichao1@huawei.com> # message auto-generated for no-merge-commit merge: !42071 merge bugfix/rms_norm_codegen-210 into v2.10.0 [Inductor] fix rms norm reduction Created-by: luqichao Commit-by: luqichao Merged-by: ascend-robot Description: <!-- PR描述模板更新日期:20260203 --> # 【合入来源】 > <font color="red">**如有社区issue,请关联issue链接**</font>\ > <font color="red">**请勿携带内部流程信息(需求链接、问题单、内部issue等)**</font> - [ ] 需求 - [ ] 问题单 - [ ] issue/工单 - [ ] 重构优化 - [ ] 资料更新 # 【修改方案】 > 请描述修改内容的具体实现,涉及哪些组件之间进行交互,可以用1、2、3、...进行罗列\ > 如果是需求或者重构类的PR,需要补充详细设计文档(说明上下游组件关系、时序图、类图、DFX能力等内容) # 【资料变更】 > 请确认是否涉及资料变更。如涉及,需要在PR中体现,并简要说明修改内容。如不涉及,需填写“不涉及” # 【接口变更】 > 请确认是否涉及跨代码仓或者客户面可见的接口变更。如涉及,需要详细说明接口以及对应的变更内容,同时需要在资料中体现。如不涉及,需填写“不涉及” # 【功能验证】 > 说明测试场景,测试方法。如果本次测试方式与常规单元测试不同,请详细说明您的测试步骤\ > 新增/变更内容是否已新增/适配UT测试用例看护,并补充测试自验证截图 # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [ ] 代码注释完备,正确记录错误日志 - [ ] 代码实现进行了返回值、空指针等校验 - [ ] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [ ] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!42071 | 1 个月前 | |
[Fix] Fix static check errors detected by SPACES Co-authored-by: huangjingwei<huangjingwei4@huawei.com> # message auto-generated for no-merge-commit merge: !36365 merge v2.10.0_lintrunner into v2.10.0 [Fix] Fix static check errors detected by SPACES Created-by: huangjingwei Commit-by: huangjingwei Merged-by: ascend-robot Description: <!-- PR描述模板更新日期:20260203 --> # 【合入来源】 > <font color="red">**如有社区issue,请关联issue链接**</font>\ > <font color="red">**请勿携带内部流程信息(需求链接、问题单、内部issue等)**</font> - [ ] 需求 - [ ] 问题单 - [x] issue/工单 - [ ] 重构优化 - [ ] 资料更新 # 【修改方案】 检测和删除代码中的行尾空白字符 # 【资料变更】 不涉及 # 【接口变更】 不涉及 # 【功能验证】 不涉及 # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [x] 代码注释完备,正确记录错误日志 - [x] 代码实现进行了返回值、空指针等校验 - [x] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [x] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!36365 | 3 个月前 | |
[Inductor] remove inductor static mode and interface.cpp in inductor Co-authored-by: zhuceHW<zhuce@huawei.com> # message auto-generated for no-merge-commit merge: !39997 merge v2.10.0-dev into v2.10.0 [Inductor] remove inductor static mode and interface.cpp in inductor Created-by: zhucehw Commit-by: zhuceHW Merged-by: ascend-robot Description: <!-- PR描述模板更新日期:20260203 --> # 【合入来源】 https://gitcode.com/Ascend/pytorch/issues/2526?ref=&did=4121203#tid-4121203 - [ ] 需求 - [ ] 问题单 - [x] issue/工单 - [ ] 重构优化 - [ ] 资料更新 # 【修改方案】 1. no more support inductor static mode 2. remove useless patch in cpp_wrapper.py 3. remove interface.cpp in inductor, use _adapt_community_interface_cpp to change str 4. recheck impl of CPP_TO_DTYPE in cpp_wrapper, use copied dict for codegen # 【资料变更】 不涉及 # 【接口变更】 不涉及 # 【功能验证】 CI PASS # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [x] 代码注释完备,正确记录错误日志 - [x] 代码实现进行了返回值、空指针等校验 - [x] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [x] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!39997 | 1 个月前 |
| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
| 24 天前 | ||
| 6 天前 | ||
| 10 个月前 | ||
| 6 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 2 个月前 | ||
| 10 个月前 | ||
| 1 个月前 | ||
| 10 个月前 | ||
| 10 个月前 | ||
| 10 个月前 | ||
| 7 天前 | ||
| 7 个月前 | ||
| 6 个月前 | ||
| 13 天前 | ||
| 6 个月前 | ||
| 10 个月前 | ||
| 6 个月前 | ||
| 3 个月前 | ||
| 13 天前 | ||
| 1 个月前 | ||
| 13 天前 | ||
| 10 个月前 | ||
| 23 天前 | ||
| 5 个月前 | ||
| 1 个月前 | ||
| 7 个月前 | ||
| 12 天前 | ||
| 29 天前 | ||
| 10 个月前 | ||
| 13 天前 | ||
| 4 个月前 | ||
| 1 个月前 | ||
| 2 个月前 | ||
| 2 个月前 | ||
| 3 个月前 | ||
| 30 天前 | ||
| 13 天前 | ||
| 1 个月前 | ||
| 3 个月前 | ||
| 10 个月前 | ||
| 3 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 13 天前 | ||
| 1 个月前 | ||
| 2 个月前 | ||
| 6 个月前 | ||
| 26 天前 | ||
| 26 天前 | ||
| 26 天前 | ||
| 26 天前 | ||
| 26 天前 | ||
| 26 天前 | ||
| 26 天前 | ||
| 26 天前 | ||
| 1 个月前 | ||
| 6 个月前 | ||
| 10 个月前 | ||
| 6 天前 | ||
| 10 天前 | ||
| 3 个月前 | ||
| 10 个月前 | ||
| 1 个月前 | ||
| 2 天前 | ||
| 2 个月前 | ||
| 2 个月前 | ||
| 2 个月前 | ||
| 10 个月前 | ||
| 10 个月前 | ||
| 6 个月前 | ||
| 10 个月前 | ||
| 1 个月前 | ||
| 2 个月前 | ||
| 2 个月前 | ||
| 1 个月前 | ||
| 10 天前 | ||
| 1 个月前 | ||
| 10 个月前 | ||
| 2 个月前 | ||
| 12 天前 | ||
| 2 个月前 | ||
| 4 天前 | ||
| 7 天前 | ||
| 1 个月前 | ||
| 3 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 3 个月前 | ||
| 1 个月前 | ||
| 8 个月前 | ||
| 3 个月前 | ||
| 1 个月前 | ||
| 6 个月前 | ||
| 1 个月前 | ||
| 13 天前 | ||
| 6 个月前 | ||
| 10 个月前 | ||
| 6 个月前 | ||
| 4 个月前 | ||
| 3 个月前 | ||
| 6 个月前 | ||
| 6 个月前 | ||
| 6 个月前 | ||
| 2 个月前 | ||
| 2 个月前 | ||
| 3 天前 | ||
| 10 个月前 | ||
| 10 个月前 | ||
| 13 天前 | ||
| 6 个月前 | ||
| 10 天前 | ||
| 6 个月前 | ||
| 30 天前 | ||
| 10 个月前 | ||
| 17 天前 | ||
| 20 天前 | ||
| 24 天前 | ||
| 3 个月前 | ||
| 3 个月前 | ||
| 5 个月前 | ||
| 10 个月前 | ||
| 3 天前 | ||
| 1 个月前 | ||
| 3 个月前 | ||
| 1 个月前 |