作为 Ascend for PyTorch 社区的核心组件,TorchNPU 是昇腾专为 PyTorch 打造的深度学习适配插件,使 PyTorch 框架能够直接调用昇腾 NPU,为开发者提供昇腾 AI 处理器的超强算力。
| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
feat(ci): add Docker image build system for builder and test environments Co-authored-by: w30057661<wangshusheng7@h-partners.com> # message auto-generated for no-merge-commit merge: !41830 merge master into master feat(ci): add Docker image build system for builder and test environments Created-by: WSs_321 Commit-by: w30057661 Merged-by: ascend-robot Description: ## 变更说明 为 pytorch 仓库新增 CI Docker 镜像构建体系,覆盖编译 (builder) 和测试 (test) 两种场景,支持 x86_64 和 aarch64 双架构,并通过 GitHub Actions 自动构建推送至 quay.io。 ## 变更内容 .ci/docker/ — 完整的 Docker 构建方案 docker_build.sh — tag-based 构建入口脚本 builder/ — Builder 镜像 Dockerfile(x86_64/aarch64),含完整编译工具链 test/ — Test 镜像 Dockerfile(x86_64/aarch64),含 CANN runtime + triton-ascend common/ — 共享安装脚本(CANN/OBS/triton-ascend) requirements-builder.txt — Builder 编译依赖 requirements-test.txt — 测试依赖声明 ## 关联 Issue Resolves [#2164](https://gitcode.com/Ascend/pytorch/issues/2164) See merge request: Ascend/pytorch!41830 | 21 天前 | |
update_dockerfile_torch Co-authored-by: SCh-zx<1325467101@qq.com> # message auto-generated for no-merge-commit merge: !44280 merge master into master update_dockerfile_torch Created-by: SCh_zx Commit-by: SCh-zx Merged-by: ascend-robot Description: <!-- PR描述模板更新日期:20260203 --> # 【合入来源】 > <font color="red">**如有社区issue,请关联issue链接**</font>\ > <font color="red">**请勿携带内部流程信息(需求链接、问题单、内部issue等)**</font> - [ ] 需求 - [ ] 问题单 - [x] issue/工单 - [ ] 重构优化 - [ ] 资料更新 # 【修改方案】 > 请描述修改内容的具体实现,涉及哪些组件之间进行交互,可以用1、2、3、...进行罗列\ > 如果是需求或者重构类的PR,需要补充详细设计文档(说明上下游组件关系、时序图、类图、DFX能力等内容) 已有正式torch2.13.0与正式cann9.1.0,更新相关dockerfile配置 # 【资料变更】 > 请确认是否涉及资料变更。如涉及,需要在PR中体现,并简要说明修改内容。如不涉及,需填写“不涉及” # 【接口变更】 > 请确认是否涉及跨代码仓或者客户面可见的接口变更。如涉及,需要详细说明接口以及对应的变更内容,同时需要在资料中体现。如不涉及,需填写“不涉及” # 【功能验证】 > 说明测试场景,测试方法。如果本次测试方式与常规单元测试不同,请详细说明您的测试步骤\ > 新增/变更内容是否已新增/适配UT测试用例看护,并补充测试自验证截图 # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [ ] 代码注释完备,正确记录错误日志 - [ ] 代码实现进行了返回值、空指针等校验 - [ ] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [ ] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!44280 | 17 小时前 | |
[docs]add PR notes info Co-authored-by: liangsongwei<liangsongwei@huawei.com> # message auto-generated for no-merge-commit merge: !30843 merge master into master [docs]add PR notes info Created-by: liangsongwei Commit-by: liangsongwei Merged-by: ascend-robot Description: <!-- PR描述模板更新日期:20260203 --> # 【合入来源】 > (如有)请关联需求文档/issue链接 - [ ] 需求 - [ ] 问题单 - [ ] issue/工单 - [ ] 重构优化 - [x] 资料更新 # 【修改方案】 一是要求必须关联社区issue链接; 二是禁止填写需求链接、问题单等内部流程信息。 该修改通过直接更新模板文件生效,不涉及任何代码逻辑变更。 # 【资料变更】 PR提交模板信息补充 # 【接口变更】 不涉及 # 【功能验证】  # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [x] 代码注释完备,正确记录错误日志 - [x] 代码实现进行了返回值、空指针等校验 - [x] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [x] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!30843 | 5 个月前 | |
Add CI Docker images build workflow Co-authored-by: wangqi<2801406898@qq.com> # message auto-generated for no-merge-commit merge: !43071 merge master into master Add CI Docker images build workflow Created-by: wangqi0808 Commit-by: wangqi Merged-by: ascend-robot Description: ## Summary 添加 .github/workflows/build-docker-images.yml,实现 CI Docker 镜像的自动构建与推送到 SWR 镜像仓库。 Related: #3073 ## Changes - 新增 .github/workflows/build-docker-images.yml - 支持 workflow_dispatch 手动触发和 push 自动触发(.ci/docker/** 变更时) - 覆盖 8 个镜像:builder (x86_64/aarch64) + test × CANN A1/A2/A3 (x86_64/aarch64) - 推送至 swr.cn-north-4.myhuaweicloud.com/frameworkptadapter/pytorch,Tag 含 UTC 时间戳 - Runner 自适应:x86_64 → ubuntu-latest,aarch64 → ubuntu-22.04-arm See merge request: Ascend/pytorch!43071 | 14 天前 | |
benchmarks set timm models tol master Co-authored-by: LG<luguang6@huawei.com> # message auto-generated for no-merge-commit merge: !44250 merge benchmarks_set_timm_models_tol_master into master benchmarks set timm models tol master Created-by: Lu_G Commit-by: LG Merged-by: ascend-robot Description: <!-- PR描述模板更新日期:20260203 --> # 【合入来源】 > <font color="red">**如有社区issue,请关联issue链接**</font>\ https://gitcode.com/Ascend/pytorch/issues/3884 > <font color="red">**请勿携带内部流程信息(需求链接、问题单、内部issue等)**</font> - [ ] 需求 - [ ] 问题单 - [x] issue/工单 - [ ] 重构优化 - [ ] 资料更新 # 【修改方案】 > 调整deit_base_distilled_patch16_224网络的阈值,当前网络的平均绝对误差在阈值范围内,仅最大绝对误差稍微超出阈值,所以调整一下网络阈值。 # 【资料变更】 > 不涉及 # 【接口变更】 > 不涉及 # 【功能验证】 > 说明测试场景,测试方法。如果本次测试方式与常规单元测试不同,请详细说明您的测试步骤\ > 新增/变更内容是否已新增/适配UT测试用例看护,并补充测试自验证截图 # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [ ] 代码注释完备,正确记录错误日志 - [ ] 代码实现进行了返回值、空指针等校验 - [ ] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [ ] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!44250 | 1 小时前 | |
[feature]: update version.txt to multi version, drive package version from TORCH_VERSION env var Co-authored-by: chenhaozhe<chenhaozhe1@huawei.com> # message auto-generated for no-merge-commit merge: !43686 merge onetrack into master [feature]: update version.txt to multi version, drive package version from TORCH_VERSION env var Created-by: c_34 Commit-by: chenhaozhe 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/3076 - [x] 重构优化 优化onetrack后的构建逻辑 - [ ] 资料更新 将 torch_npu 包版本从读取 version.txt 改为由 TORCH_VERSION 环境变量驱动,支持多版本(含 post 号)编译, version.txt中改为多版本表达 构建过程中不再涉及修改version.txt文件,可以连续多次进行独立的版本构建。 行为变化(需关注):wheel 版本号 = get_version() 返回值 + +gitSHA(setup.py:generate_torch_npu_version,可用 BUILD_WITHOUT_SHA=1 去掉)。 - 改动前:VERSION 恒来自 version.txt(2.14.0),产物恒为 torch_npu-2.14.0+gitXXXX-...。 - 改动后:未指定 --torch= 时回退到已安装 PyTorch 版本。若装的是 dev/nightly torch(如 2.14.0.dev20260728+cpu),包版本会继承 .devYYYYMMDD 后缀,产物变为 torch_npu-2.14.0.dev20260728+gitXXXX-...,与显式 --torch=2.14.0 产出的 2.14.0+gitXXXX 命名不同。 - 发版编译建议显式指定 --torch= 以获得干净版本号。 # 【修改方案】 > 请描述修改内容的具体实现,涉及哪些组件之间进行交互,可以用1、2、3、...进行罗列\ > 如果是需求或者重构类的PR,需要补充详细设计文档(说明上下游组件关系、时序图、类图、DFX能力等内容) 1. 新增 tools/setup_helpers/version.py:get_version():优先读 TORCH_VERSION,未设置时回退到已安装的 PyTorch 版本。 2. setup.py、build_libtorch_npu.py、torchnpugen/autograd/utils.py、版本 linter 改用 get_version(),移除对 version.txt 的读取与 PathManager 校验。 3. setup.py:_get_torch_requires 剥离 .postN 后拼 torch== 依赖。 4. ci/build.sh:--torch= 经简单匹配 version.txt 校验(post 号可选,如 2.13.0 可匹配 2.13.0.post1),并 export TORCH_VERSION;不再写回 version.txt。 5. version.txt 改为支持版本清单(2.14.0 / 2.13.0.post1),供 build.sh 校验。 6. gen_version_header.py:parse_version 兼容 .postN。 # 【资料变更】 > 请确认是否涉及资料变更。如涉及,需要在PR中体现,并简要说明修改内容。如不涉及,需填写“不涉及” 已同步修改contribute # 【接口变更】 > 请确认是否涉及跨代码仓或者客户面可见的接口变更。如涉及,需要详细说明接口以及对应的变更内容,同时需要在资料中体现。如不涉及,需填写“不涉及” 不涉及 # 【功能验证】 > 说明测试场景,测试方法。如果本次测试方式与常规单元测试不同,请详细说明您的测试步骤\ > 新增/变更内容是否已新增/适配UT测试用例看护,并补充测试自验证截图 通过构建验证 # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [x] 代码注释完备,正确记录错误日志 - [x] 代码实现进行了返回值、空指针等校验 - [x] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [x] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!43686 | 2 天前 | |
[Feature]support abi configuration for libtorch_npu. | 2 年前 | |
update_dockerfile_torch Co-authored-by: SCh-zx<1325467101@qq.com> # message auto-generated for no-merge-commit merge: !44280 merge master into master update_dockerfile_torch Created-by: SCh_zx Commit-by: SCh-zx Merged-by: ascend-robot Description: <!-- PR描述模板更新日期:20260203 --> # 【合入来源】 > <font color="red">**如有社区issue,请关联issue链接**</font>\ > <font color="red">**请勿携带内部流程信息(需求链接、问题单、内部issue等)**</font> - [ ] 需求 - [ ] 问题单 - [x] issue/工单 - [ ] 重构优化 - [ ] 资料更新 # 【修改方案】 > 请描述修改内容的具体实现,涉及哪些组件之间进行交互,可以用1、2、3、...进行罗列\ > 如果是需求或者重构类的PR,需要补充详细设计文档(说明上下游组件关系、时序图、类图、DFX能力等内容) 已有正式torch2.13.0与正式cann9.1.0,更新相关dockerfile配置 # 【资料变更】 > 请确认是否涉及资料变更。如涉及,需要在PR中体现,并简要说明修改内容。如不涉及,需填写“不涉及” # 【接口变更】 > 请确认是否涉及跨代码仓或者客户面可见的接口变更。如涉及,需要详细说明接口以及对应的变更内容,同时需要在资料中体现。如不涉及,需填写“不涉及” # 【功能验证】 > 说明测试场景,测试方法。如果本次测试方式与常规单元测试不同,请详细说明您的测试步骤\ > 新增/变更内容是否已新增/适配UT测试用例看护,并补充测试自验证截图 # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [ ] 代码注释完备,正确记录错误日志 - [ ] 代码实现进行了返回值、空指针等校验 - [ ] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [ ] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!44280 | 17 小时前 | |
docs: add support status for inference_mode.clone Co-authored-by: Zky0803<kyzhang0803@163.com> # message auto-generated for no-merge-commit merge: !44144 merge docs/inference-mode-clone into master docs: add support status for inference_mode.clone Created-by: Zky0803 Commit-by: Zky0803 Merged-by: ascend-robot Description: # 【合入来源】 - [ ] 需求 - [ ] 问题单 - [x] issue/工单 - [ ] 重构优化 - [x] 资料更新 - 来源任务 Issue:[【社区任务】7月社区任务第二期-Ascend for PyTorch API 一致性开发(29)](https://gitcode.com/Ascend/pytorch/issues/2950) - 结果 Issue:[torch.autograd.grad_mode.inference_mode.clone API 一致性补齐](https://gitcode.com/Ascend/pytorch/issues/3104) - 资料 PR:[PR #44144](https://gitcode.com/Ascend/pytorch/pull/44144) # 【分支范围】 本资料 PR 面向 master 目标分支。 资料补齐基于当前 master 的 Native API 资料体系,当前目录包含: text pytorch_2-7-1 pytorch_2-11-0 pytorch_2-12-0 pytorch_2-13-0 因此本 PR 同步刷新以上四套资料。 pytorch_2-9-0、pytorch_2-10-0 已不在当前 docs/zh/api/native_api 目录中,本 PR 不涉及这两个版本。 资料分支: text 源分支:docs/inference-mode-clone 目标分支:master 基线提交:462f4e18a8303698aca3997edfcc5dd3b1707968 Commit:e0c3e638a3c54b29b65d86de85c29ee9fd373cc8 提交标题:docs: add support status for inference_mode.clone # 【修改方案】 补充 torch.autograd.grad_mode.inference_mode.clone 的 Native API 支持资料, 不修改 API 实现、测试逻辑或 NPU Kernel。 修改文件: text docs/zh/api/native_api/pytorch_2-7-1/torch.md docs/zh/api/native_api/pytorch_2-11-0/torch.md docs/zh/api/native_api/pytorch_2-12-0/torch.md docs/zh/api/native_api/pytorch_2-13-0/torch.md 当前资料已经存在父 API: text torch.autograd.grad_mode.inference_mode 本次按照现有 Native API 文档结构,将 clone() 作为父 API 的子方法补充: markdown > <font size="3">clone()</font> <div style="margin-left: 2em"> **原生文档**:[torch.autograd.grad_mode.inference_mode.clone](对应 PyTorch 版本父页面的 clone anchor) **支持情况**: | 硬件 | 是否支持 | | ---- | :----: | | <term>Atlas A2 训练系列产品</term> | ✔ | | <term>Atlas A3 训练系列产品</term> | ✔ | | <term>Ascend 950DT</term> | ✗ | </div> 四个版本分别关联 PyTorch 2.7、2.11、2.12、2.13 官方 inference_mode 页面中的 clone 锚点。 inference_mode.clone 是 inference mode 上下文对象复制能力,属于非计算类 API,与 Tensor 数据类型无关,因此不新增 fp16、fp32、bf16 等数据类型限制说明。 # 【社区用例检索与新增必要性】 本 PR 为资料补齐 PR,不新增或修改单元测试。 对应代码任务已经确认: - PyTorch 已实现 torch.autograd.grad_mode.inference_mode.clone; - Torch-NPU 无需新增功能实现或 NPU Kernel; - 原 Torch-NPU 测试缺少 clone 直接行为、mode=False 嵌套关闭外层 inference mode、状态恢复及 NPU Tensor 行为覆盖; - 对应 NPU 单元测试已在 master、v2.7.1、v2.11.0、v2.12.0 四个代码 PR 中完成并通过验证。 当前 Native API 资料仅登记父 API torch.autograd.grad_mode.inference_mode,未登记公开子方法 clone(), 因此需要单独补充资料。 # 【资料变更】 涉及。 新增 torch.autograd.grad_mode.inference_mode.clone 的 Native API 支持状态, 同步更新: text PyTorch 2.7.1 PyTorch 2.11.0 PyTorch 2.12.0 PyTorch 2.13.0 支持情况与父 API 保持一致: |硬件|是否支持| |---|:---:| |Atlas A2 训练系列产品|支持| |Atlas A3 训练系列产品|支持| |Ascend 950DT|暂不支持| 资料格式遵循当前 master/docs/zh/api/native_api 现有父子 API 组织方式。 # 【接口变更】 不涉及。 本 PR 只更新 Native API 支持资料,不修改: - Python API 实现; - 函数签名或返回类型; - Torch-NPU C++ 代码; - NPU Kernel; - 组件间接口。 # 【功能验证】 本 PR 为资料变更,主要进行资料结构和 diff 静态验证。 资料提交: text e0c3e638a3c54b29b65d86de85c29ee9fd373cc8 验证结果: text AHEAD_COUNT=1 BEHIND_COUNT=0 DIFF_CHECK_EXIT_CODE=0 pytorch_2-7-1: DOC_ENTRY_COUNT=1 pytorch_2-11-0: DOC_ENTRY_COUNT=1 pytorch_2-12-0: DOC_ENTRY_COUNT=1 pytorch_2-13-0: DOC_ENTRY_COUNT=1 DTYPE_TERMS_IN_ADDITIONS: <none> LIMITATION_TEXT_IN_ADDITIONS: <none> FORBIDDEN_VERSION_CHECK=PASS UPSTREAM_BASE_CHECK=PASS REMOTE_VERIFY=PASS 资料分支远端提交: text e0c3e638a3c54b29b65d86de85c29ee9fd373cc8 与本地提交一致,推送及 Git Hooks 检查通过。 对应代码测试方面,四个目标代码分支均已执行完整测试与 False/True 初始 inference mode 隔离验证,最终: text OVERALL_FINAL_TEST_STATUS=0 INFERENCE_MODE_ISOLATION_PROBE=PASS # 【test_upstream patch】 不涉及。 本资料 PR 不修改 PyTorch 官方测试文件,也不修改 Torch-NPU test_upstream patch。 # 【CheckList】 - [x] 仅修改 Native API 资料文件 - [x] 同步更新当前 master 资料体系中的 PyTorch 2.7.1、2.11.0、2.12.0、2.13.0 - [x] clone() 按父 API 子方法格式登记 - [x] 支持状态与父 API 保持一致 - [x] 非计算类 API 未增加 fp16、fp32、bf16 等 dtype 限制 - [x] 未修改已移除的 PyTorch 2.9.0、2.10.0 资料 - [x] git diff --check 通过 - [x] 四版本目标条目均唯一出现 - [x] 资料分支基于当前 master 单提交创建 - [x] 资料分支已成功推送并完成远端 SHA 验证 - [x] 资料 PR 持续集成流水线(CI)执行通过 See merge request: Ascend/pytorch!44144 | 1 天前 | |
[master] add env config for libtorch_triton_ascend in README Co-authored-by: ffmh<fengminghao2@huawei.com> # message auto-generated for no-merge-commit merge: !38296 merge fix_triton_doc into master [master] add env config for libtorch_triton_ascend in README Created-by: ffmh Commit-by: ffmh Merged-by: ascend-robot Description: # 【合入来源】 - [ ] 需求 - [x] 问题单 - [ ] issue/工单 - [ ] 重构优化 - [ ] 资料更新 # 【修改方案】 1. 在 examples/libtorch_triton_ascend/README.md 中新增环境变量配置说明,指导用户配置 libtorch_triton_ascend 运行所需的环境变量 # 【资料变更】 不涉及 # 【接口变更】 不涉及 # 【功能验证】 文档变更,已验证 README.md 中环境变量配置示例的正确性 # 【CheckList】 - [x] 代码注释完备,正确记录错误日志 - [x] 代码实现进行了返回值、空指针等校验 - [x] PR标题正确使用类型标签 docs - [x] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!38296 | 1 个月前 | |
| 1 年前 | ||
test: Add tests for StringTable.default_factory Co-authored-by: qq_65095566<1922937030@qq.com> # message auto-generated for no-merge-commit merge: !43213 merge test-string-table-default-factory-master into master test: Add tests for StringTable.default_factory Created-by: qq_65095566 Commit-by: qq_65095566 Merged-by: ascend-robot Description: # 【合入来源】 ## 关联社区 issue:[[Usage]: torch.autograd.profiler_util.StringTable.default_factory API适配补齐 #3444](https://gitcode.com/Ascend/pytorch/issues/3444) ## 关联社区 issue:[【社区任务】7月社区任务第二期-Ascend for PyTorch API 一致性开发(59) #2906](https://gitcode.com/Ascend/pytorch/issues/2906) - [ ] 需求 - [ ] 问题单 - [x] issue/工单 - [ ] 重构优化 - [ ] 资料更新 # 【修改方案】 经检索 PyTorch 官方开发分支测试目录,未发现针对 torch.autograd.profiler_util.StringTable.default_factory 的直接测试用例。 现有 StringTable 测试主要覆盖 popitem,未直接覆盖 default_factory 的默认值、构造参数、属性修改、非法参数以及与 StringTable.__missing__ 的交互行为,因此需要补充直接测试。 本次修改内容如下: 1. 扩展 master 分支已有测试文件: text test/test_profiler_string_table.py 2. 保留原有 torch.autograd.profiler_util.StringTable.popitem 测试。 3. 新增 torch.autograd.profiler_util.StringTable.default_factory 测试,覆盖: - 默认构造时 default_factory 为 None; - 显式传入 None; - 构造时传入可调用对象; - 读取和修改 default_factory 属性; - 构造时传入不可调用对象抛出 TypeError; - StringTable.__missing__ 不调用 default_factory。 4. 本次仅补充单元测试,不修改 API 功能实现。 # 【资料变更】 不涉及 经检查,docs/zh/api/native_api 下 PyTorch 2.7.1、2.9.0、2.10.0、2.11.0 和 2.12.0 对应资料中均未收录 torch.autograd.profiler_util.StringTable.default_factory。 PyTorch 官方文档中也未提供该属性的独立公开文档条目。 StringTable 继承自 collections.defaultdict,default_factory 是继承获得的标准库属性,并非 PyTorch 在 StringTable 中单独实现的成员,因此本次不新增 torch-npu 原生 API 资料条目。 该属性属于非计算类属性,不涉及张量及数据类型。 # 【接口变更】 本次不修改 torch.autograd.profiler_util.StringTable.default_factory 的功能、参数或返回行为,仅补充单元测试,不涉及跨代码仓或客户可见接口变更。 # 【功能验证】 测试命令: bash python test/test_profiler_string_table.py -v 测试结果: text Ran 12 tests in 0.038s OK 原有 7 个 StringTable.popitem 测试和新增 5 个 StringTable.default_factory 测试均执行通过。 本地使用现有环境完成冒烟验证,master 分支兼容性由 PR 持续集成流水线进一步验证。 测试过程中出现 CuTeDSL 可选依赖缺失警告,该警告与本次测试无关,不影响测试结果。 代码格式检查: bash git diff --check 检查结果无异常。 # 【CheckList】 - [x] 代码注释完备,正确记录错误日志 - [x] 代码实现进行了返回值、空指针等校验 - [x] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [x] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!43213 | 35 分钟前 | |
Update op_plugin commit id Co-authored-by: pta-robot<pta_robot@163.com> # message auto-generated for no-merge-commit merge: !44307 merge master into master Update op_plugin commit id Created-by: pta-robot Commit-by: pta-robot Merged-by: ascend-robot Description: Commited by @pta-robot at 2026-08-11 10:02:17. See merge request: Ascend/pytorch!44307 | 1 天前 | |
[feature]: update version.txt to multi version, drive package version from TORCH_VERSION env var Co-authored-by: chenhaozhe<chenhaozhe1@huawei.com> # message auto-generated for no-merge-commit merge: !43686 merge onetrack into master [feature]: update version.txt to multi version, drive package version from TORCH_VERSION env var Created-by: c_34 Commit-by: chenhaozhe 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/3076 - [x] 重构优化 优化onetrack后的构建逻辑 - [ ] 资料更新 将 torch_npu 包版本从读取 version.txt 改为由 TORCH_VERSION 环境变量驱动,支持多版本(含 post 号)编译, version.txt中改为多版本表达 构建过程中不再涉及修改version.txt文件,可以连续多次进行独立的版本构建。 行为变化(需关注):wheel 版本号 = get_version() 返回值 + +gitSHA(setup.py:generate_torch_npu_version,可用 BUILD_WITHOUT_SHA=1 去掉)。 - 改动前:VERSION 恒来自 version.txt(2.14.0),产物恒为 torch_npu-2.14.0+gitXXXX-...。 - 改动后:未指定 --torch= 时回退到已安装 PyTorch 版本。若装的是 dev/nightly torch(如 2.14.0.dev20260728+cpu),包版本会继承 .devYYYYMMDD 后缀,产物变为 torch_npu-2.14.0.dev20260728+gitXXXX-...,与显式 --torch=2.14.0 产出的 2.14.0+gitXXXX 命名不同。 - 发版编译建议显式指定 --torch= 以获得干净版本号。 # 【修改方案】 > 请描述修改内容的具体实现,涉及哪些组件之间进行交互,可以用1、2、3、...进行罗列\ > 如果是需求或者重构类的PR,需要补充详细设计文档(说明上下游组件关系、时序图、类图、DFX能力等内容) 1. 新增 tools/setup_helpers/version.py:get_version():优先读 TORCH_VERSION,未设置时回退到已安装的 PyTorch 版本。 2. setup.py、build_libtorch_npu.py、torchnpugen/autograd/utils.py、版本 linter 改用 get_version(),移除对 version.txt 的读取与 PathManager 校验。 3. setup.py:_get_torch_requires 剥离 .postN 后拼 torch== 依赖。 4. ci/build.sh:--torch= 经简单匹配 version.txt 校验(post 号可选,如 2.13.0 可匹配 2.13.0.post1),并 export TORCH_VERSION;不再写回 version.txt。 5. version.txt 改为支持版本清单(2.14.0 / 2.13.0.post1),供 build.sh 校验。 6. gen_version_header.py:parse_version 兼容 .postN。 # 【资料变更】 > 请确认是否涉及资料变更。如涉及,需要在PR中体现,并简要说明修改内容。如不涉及,需填写“不涉及” 已同步修改contribute # 【接口变更】 > 请确认是否涉及跨代码仓或者客户面可见的接口变更。如涉及,需要详细说明接口以及对应的变更内容,同时需要在资料中体现。如不涉及,需填写“不涉及” 不涉及 # 【功能验证】 > 说明测试场景,测试方法。如果本次测试方式与常规单元测试不同,请详细说明您的测试步骤\ > 新增/变更内容是否已新增/适配UT测试用例看护,并补充测试自验证截图 通过构建验证 # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [x] 代码注释完备,正确记录错误日志 - [x] 代码实现进行了返回值、空指针等校验 - [x] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [x] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!43686 | 2 天前 | |
Remove static variable assignment Co-authored-by: liangsongwei<liangsongwei@huawei.com> # message auto-generated for no-merge-commit merge: !44106 merge master2 into master Remove static variable assignment Created-by: liangsongwei Commit-by: liangsongwei Merged-by: ascend-robot Description: <!-- PR描述模板更新日期:20260203 --> # 【合入来源】 > <font color="red">**如有社区issue,请关联issue链接**</font>\ > <font color="red">**请勿携带内部流程信息(需求链接、问题单、内部issue等)**</font> - [ ] 需求 - [ ] 问题单 - [x] issue/工单 - [ ] 重构优化 - [ ] 资料更新 # 【修改方案】 去除static标识,新增动态设置和获取功能 # 【资料变更】 不涉及 # 【接口变更】 不涉及 # 【功能验证】 > 说明测试场景,测试方法。如果本次测试方式与常规单元测试不同,请详细说明您的测试步骤\ > 新增/变更内容是否已新增/适配UT测试用例看护,并补充测试自验证截图 # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [ ] 代码注释完备,正确记录错误日志 - [x] 代码实现进行了返回值、空指针等校验 - [x] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [x] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!44106 | 1 小时前 | |
[feature]: update version.txt to multi version, drive package version from TORCH_VERSION env var Co-authored-by: chenhaozhe<chenhaozhe1@huawei.com> # message auto-generated for no-merge-commit merge: !43686 merge onetrack into master [feature]: update version.txt to multi version, drive package version from TORCH_VERSION env var Created-by: c_34 Commit-by: chenhaozhe 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/3076 - [x] 重构优化 优化onetrack后的构建逻辑 - [ ] 资料更新 将 torch_npu 包版本从读取 version.txt 改为由 TORCH_VERSION 环境变量驱动,支持多版本(含 post 号)编译, version.txt中改为多版本表达 构建过程中不再涉及修改version.txt文件,可以连续多次进行独立的版本构建。 行为变化(需关注):wheel 版本号 = get_version() 返回值 + +gitSHA(setup.py:generate_torch_npu_version,可用 BUILD_WITHOUT_SHA=1 去掉)。 - 改动前:VERSION 恒来自 version.txt(2.14.0),产物恒为 torch_npu-2.14.0+gitXXXX-...。 - 改动后:未指定 --torch= 时回退到已安装 PyTorch 版本。若装的是 dev/nightly torch(如 2.14.0.dev20260728+cpu),包版本会继承 .devYYYYMMDD 后缀,产物变为 torch_npu-2.14.0.dev20260728+gitXXXX-...,与显式 --torch=2.14.0 产出的 2.14.0+gitXXXX 命名不同。 - 发版编译建议显式指定 --torch= 以获得干净版本号。 # 【修改方案】 > 请描述修改内容的具体实现,涉及哪些组件之间进行交互,可以用1、2、3、...进行罗列\ > 如果是需求或者重构类的PR,需要补充详细设计文档(说明上下游组件关系、时序图、类图、DFX能力等内容) 1. 新增 tools/setup_helpers/version.py:get_version():优先读 TORCH_VERSION,未设置时回退到已安装的 PyTorch 版本。 2. setup.py、build_libtorch_npu.py、torchnpugen/autograd/utils.py、版本 linter 改用 get_version(),移除对 version.txt 的读取与 PathManager 校验。 3. setup.py:_get_torch_requires 剥离 .postN 后拼 torch== 依赖。 4. ci/build.sh:--torch= 经简单匹配 version.txt 校验(post 号可选,如 2.13.0 可匹配 2.13.0.post1),并 export TORCH_VERSION;不再写回 version.txt。 5. version.txt 改为支持版本清单(2.14.0 / 2.13.0.post1),供 build.sh 校验。 6. gen_version_header.py:parse_version 兼容 .postN。 # 【资料变更】 > 请确认是否涉及资料变更。如涉及,需要在PR中体现,并简要说明修改内容。如不涉及,需填写“不涉及” 已同步修改contribute # 【接口变更】 > 请确认是否涉及跨代码仓或者客户面可见的接口变更。如涉及,需要详细说明接口以及对应的变更内容,同时需要在资料中体现。如不涉及,需填写“不涉及” 不涉及 # 【功能验证】 > 说明测试场景,测试方法。如果本次测试方式与常规单元测试不同,请详细说明您的测试步骤\ > 新增/变更内容是否已新增/适配UT测试用例看护,并补充测试自验证截图 通过构建验证 # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [x] 代码注释完备,正确记录错误日志 - [x] 代码实现进行了返回值、空指针等校验 - [x] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [x] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!43686 | 2 天前 | |
[master][Fix] Fix static check errors detected by clang-format Co-authored-by: zhoupeng<zp2165064878@163.com> # message auto-generated for no-merge-commit merge: !42607 merge clang-format-1 into master [master][Fix] Fix static check errors detected by clang-format Created-by: thickhair Commit-by: zhoupeng Merged-by: ascend-robot Description: <!-- PR描述模板更新日期:20260203 --> # 【合入来源】 > <font color="red">**如有社区issue,请关联issue链接**</font>\ > <font color="red">**请勿携带内部流程信息(需求链接、问题单、内部issue等)**</font> - [ ] 需求 - [ ] 问题单 - [x] issue/工单 https://gitcode.com/Ascend/pytorch/issues/3340 - [ ] 重构优化 - [ ] 资料更新 # 【修改方案】 修复clang-format错误 # 【资料变更】 > 请确认是否涉及资料变更。如涉及,需要在PR中体现,并简要说明修改内容。如不涉及,需填写“不涉及” # 【接口变更】 > 请确认是否涉及跨代码仓或者客户面可见的接口变更。如涉及,需要详细说明接口以及对应的变更内容,同时需要在资料中体现。如不涉及,需填写“不涉及” # 【功能验证】  # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [x] 代码注释完备,正确记录错误日志 - [x] 代码实现进行了返回值、空指针等校验 - [x] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [x] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!42607 | 18 天前 | |
Static checking tools and rules are adopted directly from pytorch. Co-authored-by: JingweiHuang<huangjingwei4@huawei.com> # message auto-generated for no-merge-commit merge: !32658 merge code-check into master Static checking tools and rules are adopted directly from pytorch. Created-by: huangjingwei Commit-by: JingweiHuang Merged-by: ascend-robot Description: <!-- PR描述模板更新日期:20260203 --> # 【合入来源】 > <font color="red">**如有社区issue,请关联issue链接**</font>\ > <font color="red">**请勿携带内部流程信息(需求链接、问题单、内部issue等)**</font> - [ ] 需求 - [ ] 问题单 - [ ] issue/工单 - [x] 重构优化 - [ ] 资料更新 # 【修改方案】 > 请描述修改内容的具体实现,涉及哪些组件之间进行交互,可以用1、2、3、...进行罗列\ > 如果是需求或者重构类的PR,需要补充详细设计文档(说明上下游组件关系、时序图、类图、DFX能力等内容) # 【资料变更】 > 请确认是否涉及资料变更。如涉及,需要在PR中体现,并简要说明修改内容。如不涉及,需填写“不涉及” # 【接口变更】 > 请确认是否涉及跨代码仓或者客户面可见的接口变更。如涉及,需要详细说明接口以及对应的变更内容,同时需要在资料中体现。如不涉及,需填写“不涉及” # 【功能验证】 > 说明测试场景,测试方法。如果本次测试方式与常规单元测试不同,请详细说明您的测试步骤\ > 新增/变更内容是否已新增/适配UT测试用例看护,并补充测试自验证截图 本地(工作区+HEAD提交)静态检查执行结果:  # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [ ] 代码注释完备,正确记录错误日志 - [ ] 代码实现进行了返回值、空指针等校验 - [ ] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [ ] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!32658 | 3 个月前 | |
Static checking tools and rules are adopted directly from pytorch. Co-authored-by: JingweiHuang<huangjingwei4@huawei.com> # message auto-generated for no-merge-commit merge: !32658 merge code-check into master Static checking tools and rules are adopted directly from pytorch. Created-by: huangjingwei Commit-by: JingweiHuang Merged-by: ascend-robot Description: <!-- PR描述模板更新日期:20260203 --> # 【合入来源】 > <font color="red">**如有社区issue,请关联issue链接**</font>\ > <font color="red">**请勿携带内部流程信息(需求链接、问题单、内部issue等)**</font> - [ ] 需求 - [ ] 问题单 - [ ] issue/工单 - [x] 重构优化 - [ ] 资料更新 # 【修改方案】 > 请描述修改内容的具体实现,涉及哪些组件之间进行交互,可以用1、2、3、...进行罗列\ > 如果是需求或者重构类的PR,需要补充详细设计文档(说明上下游组件关系、时序图、类图、DFX能力等内容) # 【资料变更】 > 请确认是否涉及资料变更。如涉及,需要在PR中体现,并简要说明修改内容。如不涉及,需填写“不涉及” # 【接口变更】 > 请确认是否涉及跨代码仓或者客户面可见的接口变更。如涉及,需要详细说明接口以及对应的变更内容,同时需要在资料中体现。如不涉及,需填写“不涉及” # 【功能验证】 > 说明测试场景,测试方法。如果本次测试方式与常规单元测试不同,请详细说明您的测试步骤\ > 新增/变更内容是否已新增/适配UT测试用例看护,并补充测试自验证截图 本地(工作区+HEAD提交)静态检查执行结果:  # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [ ] 代码注释完备,正确记录错误日志 - [ ] 代码实现进行了返回值、空指针等校验 - [ ] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [ ] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!32658 | 3 个月前 | |
Static checking tools and rules are adopted directly from pytorch. Co-authored-by: JingweiHuang<huangjingwei4@huawei.com> # message auto-generated for no-merge-commit merge: !32658 merge code-check into master Static checking tools and rules are adopted directly from pytorch. Created-by: huangjingwei Commit-by: JingweiHuang Merged-by: ascend-robot Description: <!-- PR描述模板更新日期:20260203 --> # 【合入来源】 > <font color="red">**如有社区issue,请关联issue链接**</font>\ > <font color="red">**请勿携带内部流程信息(需求链接、问题单、内部issue等)**</font> - [ ] 需求 - [ ] 问题单 - [ ] issue/工单 - [x] 重构优化 - [ ] 资料更新 # 【修改方案】 > 请描述修改内容的具体实现,涉及哪些组件之间进行交互,可以用1、2、3、...进行罗列\ > 如果是需求或者重构类的PR,需要补充详细设计文档(说明上下游组件关系、时序图、类图、DFX能力等内容) # 【资料变更】 > 请确认是否涉及资料变更。如涉及,需要在PR中体现,并简要说明修改内容。如不涉及,需填写“不涉及” # 【接口变更】 > 请确认是否涉及跨代码仓或者客户面可见的接口变更。如涉及,需要详细说明接口以及对应的变更内容,同时需要在资料中体现。如不涉及,需填写“不涉及” # 【功能验证】 > 说明测试场景,测试方法。如果本次测试方式与常规单元测试不同,请详细说明您的测试步骤\ > 新增/变更内容是否已新增/适配UT测试用例看护,并补充测试自验证截图 本地(工作区+HEAD提交)静态检查执行结果:  # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [ ] 代码注释完备,正确记录错误日志 - [ ] 代码实现进行了返回值、空指针等校验 - [ ] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [ ] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!32658 | 3 个月前 | |
[fix]fix aot inductor resource leaks Co-authored-by: LucciC<cuiliangcheng2@hisilicon.com> # message auto-generated for no-merge-commit merge: !38736 merge master into master [fix]fix aot inductor resource leaks Created-by: LucciC Commit-by: LucciC 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!38736 | 1 个月前 | |
add agent_space to gitignore Co-authored-by: chujinjin<chujinjin52@huawei.com> # message auto-generated for no-merge-commit merge: !42960 merge add_agent_space_ignore into master add agent_space to gitignore Created-by: chujinjin Commit-by: chujinjin Merged-by: ascend-robot Description: <!-- PR描述模板更新日期:20260203 --> # 【合入来源】 > <font color="red">**如有社区issue,请关联issue链接**</font>\ > <font color="red">**请勿携带内部流程信息(需求链接、问题单、内部issue等)**</font> - [ ] 需求 - [ ] 问题单 - [ ] issue/工单 - [ ] 重构优化 - [ ] 资料更新 # 【修改方案】 > 请描述修改内容的具体实现,涉及哪些组件之间进行交互,可以用1、2、3、...进行罗列\ > 如果是需求或者重构类的PR,需要补充详细设计文档(说明上下游组件关系、时序图、类图、DFX能力等内容) 增加agent_space到gitignore文件,保留本地AI agent生成的一些临时文件 # 【资料变更】 > 请确认是否涉及资料变更。如涉及,需要在PR中体现,并简要说明修改内容。如不涉及,需填写“不涉及” 不涉及 # 【接口变更】 > 请确认是否涉及跨代码仓或者客户面可见的接口变更。如涉及,需要详细说明接口以及对应的变更内容,同时需要在资料中体现。如不涉及,需填写“不涉及” 不涉及 # 【功能验证】 > 说明测试场景,测试方法。如果本次测试方式与常规单元测试不同,请详细说明您的测试步骤\ > 新增/变更内容是否已新增/适配UT测试用例看护,并补充测试自验证截图 无 # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [x] 代码注释完备,正确记录错误日志 - [x] 代码实现进行了返回值、空指针等校验 - [x] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [x] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!42960 | 15 天前 | |
feat(_inductor): Support DVM for the master branch Co-authored-by: huangchengnuo<huangchengnuo1@huawei.com> # message auto-generated for no-merge-commit merge: !39780 merge support-dvm-master-20260701 into master feat(_inductor): Support DVM for the master branch Created-by: SorryNaCN Commit-by: huangchengnuo Merged-by: ascend-robot Description: <!-- PR描述模板更新日期:20260203 --> # 【合入来源】 > <font color="red">**如有社区issue,请关联issue链接**</font>\ > <font color="red">**请勿携带内部流程信息(需求链接、问题单、内部issue等)**</font> - [ ] 需求 - [ ] 问题单 - [x] issue/工单 - [x] 重构优化 - [ ] 资料更新 关联社区 issue:https://gitcode.com/Ascend/pytorch/issues/1962 # 【修改方案】 > 请描述修改内容的具体实现,涉及哪些组件之间进行交互,可以用1、2、3、...进行罗列\ > 如果是需求或者重构类的PR,需要补充详细设计文档(说明上下游组件关系、时序图、类图、DFX能力等内容) 本 PR 将 v2.10.0 分支中已验证的 DVM 相关能力迁移到 master,为 inductor 增加 DVM 后端和融合支持。 1. 引入 DVM 第三方依赖并接入构建,仅在 .gitmodules 中新增 DVM submodule,保留目标分支已有 submodule 配置。 2. 新增/迁移 DVM inductor 代码,包括 mlir_fusion、graph_fusion、DVM op emitter、decomp、codegen、工具函数和相关测试。 3. 新增 DVM C++ pybind 接口,并在 _C 初始化阶段注册 torch_npu._C.dvm 相关绑定。 4. 调整 torch_npu._inductor 后端加载逻辑,支持 npu_backend=dvm;DVM 后端复用 MLIR patch 与 codegen backend 注册流程。 5. 调整 dynamo/inductor wrapper,使 mlir 与 dvm 路径通过 NPU backend scope 生效,覆盖初始化与调用阶段。 6. 补充 DVM 相关 UT 与 public bindings 清单,覆盖后端加载、kernel、graph fusion、mlir fusion 等场景。 # 【资料变更】 > 请确认是否涉及资料变更。如涉及,需要在PR中体现,并简要说明修改内容。如不涉及,需填写“不涉及” 不涉及。 # 【接口变更】 > 请确认是否涉及跨代码仓或者客户面可见的接口变更。如涉及,需要详细说明接口以及对应的变更内容,同时需要在资料中体现。如不涉及,需填写“不涉及” 涉及 torch_npu._inductor 的后端选择能力扩展: 1. 支持通过 torch._inductor.config.npu_backend = "dvm" 选择 DVM 后端。 2. 支持通过 torch.compile(..., options={"npu_backend": "dvm"}) 选择 DVM 后端。 3. 支持通过环境变量 TORCHINDUCTOR_NPU_BACKEND=dvm 选择 DVM 后端。 4. 新增 torch_npu._C.dvm C++ pybind 绑定,供 DVM Python 侧构图与运行调用。 # 【功能验证】 > 说明测试场景,测试方法。如果本次测试方式与常规单元测试不同,请详细说明您的测试步骤\ > 新增/变更内容是否已新增/适配UT测试用例看护,并补充测试自验证截图 已完成本地静态验证: 1. git diff --check origin/master 2. 对相对 origin/master 变更的 Python 文件执行 python -m py_compile 3. 已在 PR 评论中发送 compile 触发编译流水线 新增/迁移测试覆盖: 1. DVM kernel 基础能力测试 2. DVM graph fusion 测试 3. DVM mlir fusion 测试 4. DVM public bindings 清单校验 # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [x] 代码注释完备,正确记录错误日志 - [x] 代码实现进行了返回值、空指针等校验 - [x] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [ ] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!39780 | 1 个月前 | |
[fix] Enable partial linters Co-authored-by: thickhair<zp2165064878@163.com> # message auto-generated for no-merge-commit merge: !44341 merge static_check_0811 into master [fix] Enable partial linters Created-by: thickhair Commit-by: thickhair 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/1865 - [ ] 重构优化 - [ ] 资料更新 # 【修改方案】 开启部分linter,目前仓内0错误 # 【资料变更】 > 请确认是否涉及资料变更。如涉及,需要在PR中体现,并简要说明修改内容。如不涉及,需填写“不涉及” # 【接口变更】 > 请确认是否涉及跨代码仓或者客户面可见的接口变更。如涉及,需要详细说明接口以及对应的变更内容,同时需要在资料中体现。如不涉及,需填写“不涉及” # 【功能验证】  # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [x] 代码注释完备,正确记录错误日志 - [x] 代码实现进行了返回值、空指针等校验 - [x] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [x] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!44341 | 1 天前 | |
[feat]编译优化:链接依赖而不是编译依赖 Co-authored-by: LiNuohang<linuohang@huawei.com> # message auto-generated for no-merge-commit merge: !42283 merge bianyi2 into master [feat]编译优化:链接依赖而不是编译依赖 Created-by: LiNuohang Commit-by: LiNuohang Merged-by: ascend-robot Description: <!-- PR描述模板更新日期:20260203 --> # 【合入来源】 > <font color="red">**如有社区issue,请关联issue链接**</font>\ > <font color="red">**请勿携带内部流程信息(需求链接、问题单、内部issue等)**</font> - [ ] 需求 - [ ] 问题单 - [x] issue/工单 - [ ] 重构优化 - [ ] 资料更新 # 【修改方案】 优化torchair,dvm编译依赖。使其可以并行编译。 改前: third_party编译阻塞: [2026-07-16 11:14:52] [3/150/1298 14.429s] Linking CXX executable third_party/Tensorpipe/tensorpipe/test/tensorpipe_test [2026-07-16 11:15:24] [2/150/1298 46.211s] Building DVM static library [2026-07-16 11:16:08] [1/150/1298 89.904s] Copy torchair python files to /home/linuohang/package/bianyi/PTA-CODE/torch_npu/build/packages/torch_npu/dynamo/torchair [2026-07-16 11:16:12] [88/238/1298 94.314s] Building CXX object CMakeFiles/torch_npu.dir/torch_npu/csrc/core/npu/GetCANNInfo.cpp.o # 【资料变更】 不涉及 # 【接口变更】 不涉及 # 【功能验证】 改后: third_party编译不阻塞: [2026-07-16 19:34:54] -- Build files have been written to: /home/linuohang/package/bianyi/PTA-MASTER-310/torch_npu/build [2026-07-16 19:34:54] [1:1/2 0.029s] Re-checking globbed directories... [2026-07-16 19:34:54] [88:88/1406 0.205s] Building C object third_party/Tensorpipe/tensorpipe/CMakeFiles/tensorpipe_uv.dir/__/third_party/libuv/src/strtok.c.o [2026-07-16 19:34:55] [88:89/1406 0.397s] Building C object third_party/Tensorpipe/tensorpipe/CMakeFiles/tensorpipe_uv.dir/__/third_party/libuv/src/strscpy.c.o [2026-07-16 19:34:55] [88:90/1406 0.454s] Building C object third_party/Tensorpipe/tensorpipe/CMakeFiles/tensorpipe_uv.dir/__/third_party/libuv/src/thread-common.c.o [2026-07-16 19:34:55] [88:91/1406 0.535s] Building C object third_party/Tensorpipe/tensorpipe/CMakeFiles/tensorpipe_uv.dir/__/third_party/libuv/src/threadpool.c.o # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [x] 代码注释完备,正确记录错误日志 - [x] 代码实现进行了返回值、空指针等校验 - [x] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [x] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!42283 | 22 天前 | |
【docs】modify document Co-authored-by: lyx324521<liuyaxiong6@h-partners.com> # message auto-generated for no-merge-commit merge: !44240 merge master into master 【docs】modify document Created-by: lyx324521 Commit-by: lyx324521 Merged-by: ascend-robot Description: <!-- PR描述模板更新日期:20260203 --> # 【合入来源】 > <font color="red">**如有社区issue,请关联issue链接**</font>\ https://gitcode.com/Ascend/pytorch/issues/3327 > <font color="red">**请勿携带内部流程信息(需求链接、问题单、内部issue等)**</font> - [ ] 需求 - [ ] 问题单 - [x] issue/工单 - [ ] 重构优化 - [x] 资料更新 # 【修改方案】 1. 快速安装修改 2. 原生api修改 3. 版本号修改 # 【资料变更】 涉及 # 【接口变更】 不涉及 # 【功能验证】 > 说明测试场景,测试方法。如果本次测试方式与常规单元测试不同,请详细说明您的测试步骤\ > 新增/变更内容是否已新增/适配UT测试用例看护,并补充测试自验证截图 # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [x] 代码注释完备,正确记录错误日志 - [x] 代码实现进行了返回值、空指针等校验 - [x] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [x] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!44240 | 2 天前 | |
[feature]: update version.txt to multi version, drive package version from TORCH_VERSION env var Co-authored-by: chenhaozhe<chenhaozhe1@huawei.com> # message auto-generated for no-merge-commit merge: !43686 merge onetrack into master [feature]: update version.txt to multi version, drive package version from TORCH_VERSION env var Created-by: c_34 Commit-by: chenhaozhe 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/3076 - [x] 重构优化 优化onetrack后的构建逻辑 - [ ] 资料更新 将 torch_npu 包版本从读取 version.txt 改为由 TORCH_VERSION 环境变量驱动,支持多版本(含 post 号)编译, version.txt中改为多版本表达 构建过程中不再涉及修改version.txt文件,可以连续多次进行独立的版本构建。 行为变化(需关注):wheel 版本号 = get_version() 返回值 + +gitSHA(setup.py:generate_torch_npu_version,可用 BUILD_WITHOUT_SHA=1 去掉)。 - 改动前:VERSION 恒来自 version.txt(2.14.0),产物恒为 torch_npu-2.14.0+gitXXXX-...。 - 改动后:未指定 --torch= 时回退到已安装 PyTorch 版本。若装的是 dev/nightly torch(如 2.14.0.dev20260728+cpu),包版本会继承 .devYYYYMMDD 后缀,产物变为 torch_npu-2.14.0.dev20260728+gitXXXX-...,与显式 --torch=2.14.0 产出的 2.14.0+gitXXXX 命名不同。 - 发版编译建议显式指定 --torch= 以获得干净版本号。 # 【修改方案】 > 请描述修改内容的具体实现,涉及哪些组件之间进行交互,可以用1、2、3、...进行罗列\ > 如果是需求或者重构类的PR,需要补充详细设计文档(说明上下游组件关系、时序图、类图、DFX能力等内容) 1. 新增 tools/setup_helpers/version.py:get_version():优先读 TORCH_VERSION,未设置时回退到已安装的 PyTorch 版本。 2. setup.py、build_libtorch_npu.py、torchnpugen/autograd/utils.py、版本 linter 改用 get_version(),移除对 version.txt 的读取与 PathManager 校验。 3. setup.py:_get_torch_requires 剥离 .postN 后拼 torch== 依赖。 4. ci/build.sh:--torch= 经简单匹配 version.txt 校验(post 号可选,如 2.13.0 可匹配 2.13.0.post1),并 export TORCH_VERSION;不再写回 version.txt。 5. version.txt 改为支持版本清单(2.14.0 / 2.13.0.post1),供 build.sh 校验。 6. gen_version_header.py:parse_version 兼容 .postN。 # 【资料变更】 > 请确认是否涉及资料变更。如涉及,需要在PR中体现,并简要说明修改内容。如不涉及,需填写“不涉及” 已同步修改contribute # 【接口变更】 > 请确认是否涉及跨代码仓或者客户面可见的接口变更。如涉及,需要详细说明接口以及对应的变更内容,同时需要在资料中体现。如不涉及,需填写“不涉及” 不涉及 # 【功能验证】 > 说明测试场景,测试方法。如果本次测试方式与常规单元测试不同,请详细说明您的测试步骤\ > 新增/变更内容是否已新增/适配UT测试用例看护,并补充测试自验证截图 通过构建验证 # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [x] 代码注释完备,正确记录错误日志 - [x] 代码实现进行了返回值、空指针等校验 - [x] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [x] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!43686 | 2 天前 | |
| 2 年前 | ||
Update URL (gitcode) Co-authored-by: dilililiwhy<why.wuhuanyu@huawei.com> # message auto-generated for no-merge-commit merge: merge update_url into master Update URL (gitcode) Created-by: dilililiwhy Commit-by: dilililiwhy 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!24843 | 10 个月前 | |
[feature]: update version.txt to multi version, drive package version from TORCH_VERSION env var Co-authored-by: chenhaozhe<chenhaozhe1@huawei.com> # message auto-generated for no-merge-commit merge: !43686 merge onetrack into master [feature]: update version.txt to multi version, drive package version from TORCH_VERSION env var Created-by: c_34 Commit-by: chenhaozhe 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/3076 - [x] 重构优化 优化onetrack后的构建逻辑 - [ ] 资料更新 将 torch_npu 包版本从读取 version.txt 改为由 TORCH_VERSION 环境变量驱动,支持多版本(含 post 号)编译, version.txt中改为多版本表达 构建过程中不再涉及修改version.txt文件,可以连续多次进行独立的版本构建。 行为变化(需关注):wheel 版本号 = get_version() 返回值 + +gitSHA(setup.py:generate_torch_npu_version,可用 BUILD_WITHOUT_SHA=1 去掉)。 - 改动前:VERSION 恒来自 version.txt(2.14.0),产物恒为 torch_npu-2.14.0+gitXXXX-...。 - 改动后:未指定 --torch= 时回退到已安装 PyTorch 版本。若装的是 dev/nightly torch(如 2.14.0.dev20260728+cpu),包版本会继承 .devYYYYMMDD 后缀,产物变为 torch_npu-2.14.0.dev20260728+gitXXXX-...,与显式 --torch=2.14.0 产出的 2.14.0+gitXXXX 命名不同。 - 发版编译建议显式指定 --torch= 以获得干净版本号。 # 【修改方案】 > 请描述修改内容的具体实现,涉及哪些组件之间进行交互,可以用1、2、3、...进行罗列\ > 如果是需求或者重构类的PR,需要补充详细设计文档(说明上下游组件关系、时序图、类图、DFX能力等内容) 1. 新增 tools/setup_helpers/version.py:get_version():优先读 TORCH_VERSION,未设置时回退到已安装的 PyTorch 版本。 2. setup.py、build_libtorch_npu.py、torchnpugen/autograd/utils.py、版本 linter 改用 get_version(),移除对 version.txt 的读取与 PathManager 校验。 3. setup.py:_get_torch_requires 剥离 .postN 后拼 torch== 依赖。 4. ci/build.sh:--torch= 经简单匹配 version.txt 校验(post 号可选,如 2.13.0 可匹配 2.13.0.post1),并 export TORCH_VERSION;不再写回 version.txt。 5. version.txt 改为支持版本清单(2.14.0 / 2.13.0.post1),供 build.sh 校验。 6. gen_version_header.py:parse_version 兼容 .postN。 # 【资料变更】 > 请确认是否涉及资料变更。如涉及,需要在PR中体现,并简要说明修改内容。如不涉及,需填写“不涉及” 已同步修改contribute # 【接口变更】 > 请确认是否涉及跨代码仓或者客户面可见的接口变更。如涉及,需要详细说明接口以及对应的变更内容,同时需要在资料中体现。如不涉及,需填写“不涉及” 不涉及 # 【功能验证】 > 说明测试场景,测试方法。如果本次测试方式与常规单元测试不同,请详细说明您的测试步骤\ > 新增/变更内容是否已新增/适配UT测试用例看护,并补充测试自验证截图 通过构建验证 # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [x] 代码注释完备,正确记录错误日志 - [x] 代码实现进行了返回值、空指针等校验 - [x] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [x] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!43686 | 2 天前 | |
[feature]: update version.txt to multi version, drive package version from TORCH_VERSION env var Co-authored-by: chenhaozhe<chenhaozhe1@huawei.com> # message auto-generated for no-merge-commit merge: !43686 merge onetrack into master [feature]: update version.txt to multi version, drive package version from TORCH_VERSION env var Created-by: c_34 Commit-by: chenhaozhe 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/3076 - [x] 重构优化 优化onetrack后的构建逻辑 - [ ] 资料更新 将 torch_npu 包版本从读取 version.txt 改为由 TORCH_VERSION 环境变量驱动,支持多版本(含 post 号)编译, version.txt中改为多版本表达 构建过程中不再涉及修改version.txt文件,可以连续多次进行独立的版本构建。 行为变化(需关注):wheel 版本号 = get_version() 返回值 + +gitSHA(setup.py:generate_torch_npu_version,可用 BUILD_WITHOUT_SHA=1 去掉)。 - 改动前:VERSION 恒来自 version.txt(2.14.0),产物恒为 torch_npu-2.14.0+gitXXXX-...。 - 改动后:未指定 --torch= 时回退到已安装 PyTorch 版本。若装的是 dev/nightly torch(如 2.14.0.dev20260728+cpu),包版本会继承 .devYYYYMMDD 后缀,产物变为 torch_npu-2.14.0.dev20260728+gitXXXX-...,与显式 --torch=2.14.0 产出的 2.14.0+gitXXXX 命名不同。 - 发版编译建议显式指定 --torch= 以获得干净版本号。 # 【修改方案】 > 请描述修改内容的具体实现,涉及哪些组件之间进行交互,可以用1、2、3、...进行罗列\ > 如果是需求或者重构类的PR,需要补充详细设计文档(说明上下游组件关系、时序图、类图、DFX能力等内容) 1. 新增 tools/setup_helpers/version.py:get_version():优先读 TORCH_VERSION,未设置时回退到已安装的 PyTorch 版本。 2. setup.py、build_libtorch_npu.py、torchnpugen/autograd/utils.py、版本 linter 改用 get_version(),移除对 version.txt 的读取与 PathManager 校验。 3. setup.py:_get_torch_requires 剥离 .postN 后拼 torch== 依赖。 4. ci/build.sh:--torch= 经简单匹配 version.txt 校验(post 号可选,如 2.13.0 可匹配 2.13.0.post1),并 export TORCH_VERSION;不再写回 version.txt。 5. version.txt 改为支持版本清单(2.14.0 / 2.13.0.post1),供 build.sh 校验。 6. gen_version_header.py:parse_version 兼容 .postN。 # 【资料变更】 > 请确认是否涉及资料变更。如涉及,需要在PR中体现,并简要说明修改内容。如不涉及,需填写“不涉及” 已同步修改contribute # 【接口变更】 > 请确认是否涉及跨代码仓或者客户面可见的接口变更。如涉及,需要详细说明接口以及对应的变更内容,同时需要在资料中体现。如不涉及,需填写“不涉及” 不涉及 # 【功能验证】 > 说明测试场景,测试方法。如果本次测试方式与常规单元测试不同,请详细说明您的测试步骤\ > 新增/变更内容是否已新增/适配UT测试用例看护,并补充测试自验证截图 通过构建验证 # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [x] 代码注释完备,正确记录错误日志 - [x] 代码实现进行了返回值、空指针等校验 - [x] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [x] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!43686 | 2 天前 | |
Release 2.13.0 Co-authored-by: wuyouqi1<wuyouqi1@h-partners.com> # message auto-generated for no-merge-commit merge: !40367 merge feat/v2.14.0-bump into master Release 2.13.0 Created-by: wuyouqi1 Commit-by: wuyouqi1 Merged-by: ascend-robot Description: # 【合入来源】 - [ ] 需求 - [ ] 问题单 - [x] issue/工单 [版本升级](https://gitcode.com/Ascend/pytorch/issues/1923) - [ ] 重构优化 - [ ] 资料更新 # 【修改方案】 社区演进和版本升级,参考 !35503(551d971f Release 2.11.0rc1 / v2.12.0rc1),将依赖切到 2.13.0: - version.txt: 保持 2.13.0 - requirements.txt: torch==2.13.0 - test/requirements.txt: torchvision==0.28.0 # 【资料变更】 不涉及 # 【接口变更】 不涉及 See merge request: Ascend/pytorch!40367 | 1 个月前 | |
[Docs]fix SUPPORT.md Co-authored-by: Xinrui Chen<chenxinrui11@huawei.com> # message auto-generated for no-merge-commit merge: !44245 merge master-supp into master [Docs]fix SUPPORT.md Created-by: chenrayray Commit-by: Xinrui Chen Merged-by: ascend-robot Description: <!-- PR描述模板更新日期:20260203 --> # 【合入来源】 > <font color="red">**如有社区issue,请关联issue链接**</font>\ > <font color="red">**请勿携带内部流程信息(需求链接、问题单、内部issue等)**</font> - [ ] 需求 - [ ] 问题单 - [x] issue/工单 - [ ] 重构优化 - [x] 资料更新 # 【修改方案】 > 请描述修改内容的具体实现,涉及哪些组件之间进行交互,可以用1、2、3、...进行罗列\ > 如果是需求或者重构类的PR,需要补充详细设计文档(说明上下游组件关系、时序图、类图、DFX能力等内容) 修改分支支持说明为版本支持说明,修正日期 # 【资料变更】 > 请确认是否涉及资料变更。如涉及,需要在PR中体现,并简要说明修改内容。如不涉及,需填写“不涉及” 是 # 【接口变更】 > 请确认是否涉及跨代码仓或者客户面可见的接口变更。如涉及,需要详细说明接口以及对应的变更内容,同时需要在资料中体现。如不涉及,需填写“不涉及” 不涉及 # 【功能验证】 > 说明测试场景,测试方法。如果本次测试方式与常规单元测试不同,请详细说明您的测试步骤\ > 新增/变更内容是否已新增/适配UT测试用例看护,并补充测试自验证截图 不涉及 # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [x] 代码注释完备,正确记录错误日志 - [x] 代码实现进行了返回值、空指针等校验 - [x] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [x] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!44245 | 23 小时前 | |
fix: lintrunner --all-files --take NEWLINE -a Co-authored-by: huangjingwei<huangjingwei4@huawei.com> # message auto-generated for no-merge-commit merge: !35539 merge code_check_lintrunner into master 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/工单 - [ ] 重构优化 - [ ] 资料更新 # 【修改方案】 文件必须以 LF 换行符结尾,不允许 CRLF(DOS 换行),执行: lintrunner --all-files --take NEWLINE -a # 【资料变更】 不涉及 # 【接口变更】 不涉及 # 【功能验证】 不涉及 # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [x] 代码注释完备,正确记录错误日志 - [x] 代码实现进行了返回值、空指针等校验 - [x] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [x] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!35539 | 2 个月前 | |
[feature]: update version.txt to multi version, drive package version from TORCH_VERSION env var Co-authored-by: chenhaozhe<chenhaozhe1@huawei.com> # message auto-generated for no-merge-commit merge: !43686 merge onetrack into master [feature]: update version.txt to multi version, drive package version from TORCH_VERSION env var Created-by: c_34 Commit-by: chenhaozhe 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/3076 - [x] 重构优化 优化onetrack后的构建逻辑 - [ ] 资料更新 将 torch_npu 包版本从读取 version.txt 改为由 TORCH_VERSION 环境变量驱动,支持多版本(含 post 号)编译, version.txt中改为多版本表达 构建过程中不再涉及修改version.txt文件,可以连续多次进行独立的版本构建。 行为变化(需关注):wheel 版本号 = get_version() 返回值 + +gitSHA(setup.py:generate_torch_npu_version,可用 BUILD_WITHOUT_SHA=1 去掉)。 - 改动前:VERSION 恒来自 version.txt(2.14.0),产物恒为 torch_npu-2.14.0+gitXXXX-...。 - 改动后:未指定 --torch= 时回退到已安装 PyTorch 版本。若装的是 dev/nightly torch(如 2.14.0.dev20260728+cpu),包版本会继承 .devYYYYMMDD 后缀,产物变为 torch_npu-2.14.0.dev20260728+gitXXXX-...,与显式 --torch=2.14.0 产出的 2.14.0+gitXXXX 命名不同。 - 发版编译建议显式指定 --torch= 以获得干净版本号。 # 【修改方案】 > 请描述修改内容的具体实现,涉及哪些组件之间进行交互,可以用1、2、3、...进行罗列\ > 如果是需求或者重构类的PR,需要补充详细设计文档(说明上下游组件关系、时序图、类图、DFX能力等内容) 1. 新增 tools/setup_helpers/version.py:get_version():优先读 TORCH_VERSION,未设置时回退到已安装的 PyTorch 版本。 2. setup.py、build_libtorch_npu.py、torchnpugen/autograd/utils.py、版本 linter 改用 get_version(),移除对 version.txt 的读取与 PathManager 校验。 3. setup.py:_get_torch_requires 剥离 .postN 后拼 torch== 依赖。 4. ci/build.sh:--torch= 经简单匹配 version.txt 校验(post 号可选,如 2.13.0 可匹配 2.13.0.post1),并 export TORCH_VERSION;不再写回 version.txt。 5. version.txt 改为支持版本清单(2.14.0 / 2.13.0.post1),供 build.sh 校验。 6. gen_version_header.py:parse_version 兼容 .postN。 # 【资料变更】 > 请确认是否涉及资料变更。如涉及,需要在PR中体现,并简要说明修改内容。如不涉及,需填写“不涉及” 已同步修改contribute # 【接口变更】 > 请确认是否涉及跨代码仓或者客户面可见的接口变更。如涉及,需要详细说明接口以及对应的变更内容,同时需要在资料中体现。如不涉及,需填写“不涉及” 不涉及 # 【功能验证】 > 说明测试场景,测试方法。如果本次测试方式与常规单元测试不同,请详细说明您的测试步骤\ > 新增/变更内容是否已新增/适配UT测试用例看护,并补充测试自验证截图 通过构建验证 # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [x] 代码注释完备,正确记录错误日志 - [x] 代码实现进行了返回值、空指针等校验 - [x] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [x] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!43686 | 2 天前 | |
| 1 年前 | ||
feat(c_shim): version AOTInductor NPU C shim header per torch version Co-authored-by: chz34<chenhaozhe1@huawei.com> # message auto-generated for no-merge-commit merge: !40590 merge compat/c-shim into master feat(c_shim): version AOTInductor NPU C shim header per torch version Created-by: c_34 Commit-by: chz34 Merged-by: ascend-robot Description: <!-- PR描述模板更新日期:20260203 --> # 【合入来源】 > <font color="red">**如有社区issue,请关联issue链接**</font>\ > <font color="red">**请勿携带内部流程信息(需求链接、问题单、内部issue等)**</font> - [ ] 需求 - [ ] 问题单 - [x] issue/工单 https://gitcode.com/Ascend/pytorch/issues/2568 - [x] 重构优化 - [ ] 资料更新 # 【修改方案】 > 请描述修改内容的具体实现,涉及哪些组件之间进行交互,可以用1、2、3、...进行罗列\ > 如果是需求或者重构类的PR,需要补充详细设计文档(说明上下游组件关系、时序图、类图、DFX能力等内容) 根据多个版本分别在不同的目录存储 c_shim_npu.h,构建过程中根据构建命令(实际参考version.txt)选择不同的版本进行校验。 构建中固定生成一份新的c_shim_npu.h文件,存放在原有的位置。 对于开发中的上游最新版本,对应版本目录缺失或者文件缺失,进行软报错,打印提示但不中断构建,用于放行上游的主动改变。 对于已经稳定的上游版本,根据对应目录进行强校验,不一致则拦截,主要控制PTA与op-plugin的内部修改。 详情参考issue内容:https://gitcode.com/Ascend/pytorch/issues/2568 # 【资料变更】 > 请确认是否涉及资料变更。如涉及,需要在PR中体现,并简要说明修改内容。如不涉及,需填写“不涉及” 不涉及 # 【接口变更】 > 请确认是否涉及跨代码仓或者客户面可见的接口变更。如涉及,需要详细说明接口以及对应的变更内容,同时需要在资料中体现。如不涉及,需填写“不涉及” 不涉及 # 【功能验证】 > 说明测试场景,测试方法。如果本次测试方式与常规单元测试不同,请详细说明您的测试步骤\ > 新增/变更内容是否已新增/适配UT测试用例看护,并补充测试自验证截图 针对现有功能的多版本兼容重构,基于现有用例进行看护 # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [x] 代码注释完备,正确记录错误日志 - [x] 代码实现进行了返回值、空指针等校验 - [x] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [x] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!40590 | 1 个月前 | |
Static checking tools and rules are adopted directly from pytorch. Co-authored-by: JingweiHuang<huangjingwei4@huawei.com> # message auto-generated for no-merge-commit merge: !32658 merge code-check into master Static checking tools and rules are adopted directly from pytorch. Created-by: huangjingwei Commit-by: JingweiHuang Merged-by: ascend-robot Description: <!-- PR描述模板更新日期:20260203 --> # 【合入来源】 > <font color="red">**如有社区issue,请关联issue链接**</font>\ > <font color="red">**请勿携带内部流程信息(需求链接、问题单、内部issue等)**</font> - [ ] 需求 - [ ] 问题单 - [ ] issue/工单 - [x] 重构优化 - [ ] 资料更新 # 【修改方案】 > 请描述修改内容的具体实现,涉及哪些组件之间进行交互,可以用1、2、3、...进行罗列\ > 如果是需求或者重构类的PR,需要补充详细设计文档(说明上下游组件关系、时序图、类图、DFX能力等内容) # 【资料变更】 > 请确认是否涉及资料变更。如涉及,需要在PR中体现,并简要说明修改内容。如不涉及,需填写“不涉及” # 【接口变更】 > 请确认是否涉及跨代码仓或者客户面可见的接口变更。如涉及,需要详细说明接口以及对应的变更内容,同时需要在资料中体现。如不涉及,需填写“不涉及” # 【功能验证】 > 说明测试场景,测试方法。如果本次测试方式与常规单元测试不同,请详细说明您的测试步骤\ > 新增/变更内容是否已新增/适配UT测试用例看护,并补充测试自验证截图 本地(工作区+HEAD提交)静态检查执行结果:  # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [ ] 代码注释完备,正确记录错误日志 - [ ] 代码实现进行了返回值、空指针等校验 - [ ] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [ ] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!32658 | 3 个月前 | |
Static checking tools and rules are adopted directly from pytorch. Co-authored-by: JingweiHuang<huangjingwei4@huawei.com> # message auto-generated for no-merge-commit merge: !32658 merge code-check into master Static checking tools and rules are adopted directly from pytorch. Created-by: huangjingwei Commit-by: JingweiHuang Merged-by: ascend-robot Description: <!-- PR描述模板更新日期:20260203 --> # 【合入来源】 > <font color="red">**如有社区issue,请关联issue链接**</font>\ > <font color="red">**请勿携带内部流程信息(需求链接、问题单、内部issue等)**</font> - [ ] 需求 - [ ] 问题单 - [ ] issue/工单 - [x] 重构优化 - [ ] 资料更新 # 【修改方案】 > 请描述修改内容的具体实现,涉及哪些组件之间进行交互,可以用1、2、3、...进行罗列\ > 如果是需求或者重构类的PR,需要补充详细设计文档(说明上下游组件关系、时序图、类图、DFX能力等内容) # 【资料变更】 > 请确认是否涉及资料变更。如涉及,需要在PR中体现,并简要说明修改内容。如不涉及,需填写“不涉及” # 【接口变更】 > 请确认是否涉及跨代码仓或者客户面可见的接口变更。如涉及,需要详细说明接口以及对应的变更内容,同时需要在资料中体现。如不涉及,需填写“不涉及” # 【功能验证】 > 说明测试场景,测试方法。如果本次测试方式与常规单元测试不同,请详细说明您的测试步骤\ > 新增/变更内容是否已新增/适配UT测试用例看护,并补充测试自验证截图 本地(工作区+HEAD提交)静态检查执行结果:  # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [ ] 代码注释完备,正确记录错误日志 - [ ] 代码实现进行了返回值、空指针等校验 - [ ] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [ ] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!32658 | 3 个月前 | |
Optimize the patch for FSDP Co-authored-by: zhenyu10<shizhenyu5@huawei.com> # message auto-generated for no-merge-commit merge: !34632 merge master into master Optimize the patch for FSDP Created-by: zhenyu10 Commit-by: zhenyu10 Merged-by: ascend-robot Description: <!-- PR描述模板更新日期:20260203 --> # 【合入来源】 > <font color="red">**如有社区issue,请关联issue链接**</font>\ > <font color="red">**请勿携带内部流程信息(需求链接、问题单、内部issue等)**</font> - [x] 需求 - [ ] 问题单 - [ ] issue/工单 - [ ] 重构优化 - [ ] 资料更新 社区 issue:https://gitcode.com/Ascend/pytorch/issues/1788 # 【修改方案】 > 请描述修改内容的具体实现,涉及哪些组件之间进行交互,可以用1、2、3、...进行罗列\ > 如果是需求或者重构类的PR,需要补充详细设计文档(说明上下游组件关系、时序图、类图、DFX能力等内容) 采用“上层复用原生,下层补齐后端语义”的设计: 1. torch-npu 删除 FSDP2 collectives patch: - 不再覆写 _get_param_all_gather_inputs - 不再覆写 torch.ops.fsdp.all_gather_copy_in - 不再覆写 FSDPParamGroup.finalize_backward - fully_shard() 入口只保留 NPU 侧增强 patch,例如内存缓存和 recompute/prefetch 状态管理 2. op-plugin 在 foreach copy 算子中对齐同设备 D2D fast path: - fast path 判定显式使用 PyTorch foreach 工具函数: - at::native::can_use_fast_route(self, src) - check_tensor_dtype_support_base(src) - can_use_fast_route(self, src) 本身会检查 self/src dtype 一致,因此 dtype 不同不会进入 NPU fast path,保持当前 NPU 不支持跨 dtype fast path 的既有语义。 - 命中 fast path 时调用: cpp split_and_exec_npu_cmd_copy(self, src, /*non_blocking=*/true); 3. fallback 路径保持调用方传入语义: - 未命中 fast path 时,memcpyBatch(self, src, non_blocking) 不变 - slow path foreach_tensor_copy_list_kernel_slow_(self, src, non_blocking) 不变 - DO_COMPATIBILITY 回退仍使用原始 non_blocking # 【资料变更】 > 请确认是否涉及资料变更。如涉及,需要在PR中体现,并简要说明修改内容。如不涉及,需填写“不涉及” 不涉及。 # 【接口变更】 > 请确认是否涉及跨代码仓或者客户面可见的接口变更。如涉及,需要详细说明接口以及对应的变更内容,同时需要在资料中体现。如不涉及,需填写“不涉及” 不涉及。无新增客户可见接口;FSDP 对外使用方式不变。_foreach_copy_ 的 NPU 后端实现由 op-plugin 承接,不新增 Python 侧公开接口。 # 【功能验证】 > 说明测试场景,测试方法。如果本次测试方式与常规单元测试不同,请详细说明您的测试步骤\ > 新增/变更内容是否已新增/适配UT测试用例看护,并补充测试自验证截图 测试场景: 1. FSDP collectives 覆写删除后,fully_shard 继续复用上游 PyTorch 原生 finalize_backward、_get_param_all_gather_inputs、all_gather_copy_in 主流程; 2. NPU 侧 _foreach_copy_ 在 op-plugin 中优先走 D2D fast path,不满足条件时回退到已有 batch copy / slow path; 3. 跨 dtype NPU D2D copy 场景在异步排队后结果正确。 测试方法: - op-plugin 用例: - python test/test_v2r1_ops/test_foreach_copy.py - python test/test_v2r2_ops/test_foreach_copy.py - torch-npu 侧建议验证 FSDP fully-shard 训练主路径,功能科通过仓内测试用例。 执行结果: - 已完成代码检查与 push hook 校验通过。 - NPU 环境 UT 结果请以当前 CI/转测执行结果为准。 UT看护: - 已适配 op-plugin foreach copy 用例,在跨 dtype copy 断言前增加 torch.npu.synchronize(),覆盖新增异步 D2D fast path 行为。 # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [x] 代码注释完备,正确记录错误日志 - [x] 代码实现进行了返回值、空指针等校验 - [x] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [x] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!34632 | 2 个月前 | |
Fix pyrefly\set_linter\stabel_shim_version_linter error Co-authored-by: huangjingwei<huangjingwei4@huawei.com> # message auto-generated for no-merge-commit merge: !35516 merge code_check_fix into master Fix pyrefly\set_linter\stabel_shim_version_linter error 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. pyrefly的检查目录调整, 2. 修复set_linter检查报错。 3. 修复stable_shim_version_linter.py检查的分支。 # 【资料变更】 不涉及 # 【接口变更】 不涉及 # 【功能验证】 pyrefly功能:  set_linter功能:  stable_shim_version功能:  # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [ ] 代码注释完备,正确记录错误日志 - [ ] 代码实现进行了返回值、空指针等校验 - [ ] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [ ] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!35516 | 2 个月前 | |
compat(2.14): default requirements to 2.14 nightly and fix related tests Co-authored-by: chz34<chenhaozhe1@huawei.com> # message auto-generated for no-merge-commit merge: !41741 merge compat/2.14 into master compat(2.14): default requirements to 2.14 nightly and fix related tests Created-by: c_34 Commit-by: chz34 Merged-by: ascend-robot Description: <!-- PR描述模板更新日期:20260203 --> # 【合入来源】 > <font color="red">**如有社区issue,请关联issue链接**</font>\ > <font color="red">**请勿携带内部流程信息(需求链接、问题单、内部issue等)**</font> - [ ] 需求 - [ ] 问题单 - [x] issue/工单 https://gitcode.com/Ascend/pytorch/issues/2258 https://gitcode.com/Ascend/pytorch/issues/2890 - [ ] 重构优化 - [ ] 资料更新 # 【修改方案】 > 请描述修改内容的具体实现,涉及哪些组件之间进行交互,可以用1、2、3、...进行罗列\ > 如果是需求或者重构类的PR,需要补充详细设计文档(说明上下游组件关系、时序图、类图、DFX能力等内容) 1. 上游新增接口,暴露的路径与实际module不一致,实际来自_C库,添加测试白名单,与上游添加的白名单保持一致。 2. 上游新增接口,依赖额外三方库与cuda库,test_public_binding.py中增加相关过滤 3. 上游 Backedn.register_backend.__func__新增参数,修改对应patch函数,增加**kwargs,缺省忽略,同时保持与之前版本的接口兼容 4. 上游cudagraphify调用时新增额外参数kernel_free_cudagraph, user_visible_output_idxs,下游npugraphify跟随新增,函数内不处理 5. 新增requirements_2_13.txt的配置,默认配置升级到2.14 # 【资料变更】 > 请确认是否涉及资料变更。如涉及,需要在PR中体现,并简要说明修改内容。如不涉及,需填写“不涉及” 跟随上游变更,不涉及 # 【接口变更】 > 请确认是否涉及跨代码仓或者客户面可见的接口变更。如涉及,需要详细说明接口以及对应的变更内容,同时需要在资料中体现。如不涉及,需填写“不涉及” 跟随上游变更,不涉及 # 【功能验证】 > 说明测试场景,测试方法。如果本次测试方式与常规单元测试不同,请详细说明您的测试步骤\ > 新增/变更内容是否已新增/适配UT测试用例看护,并补充测试自验证截图 跟随上游变更,基于现有测试用例进行验证 # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [x] 代码注释完备,正确记录错误日志 - [x] 代码实现进行了返回值、空指针等校验 - [x] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [x] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!41741 | 9 天前 | |
compat(2.14): default requirements to 2.14 nightly and fix related tests Co-authored-by: chz34<chenhaozhe1@huawei.com> # message auto-generated for no-merge-commit merge: !41741 merge compat/2.14 into master compat(2.14): default requirements to 2.14 nightly and fix related tests Created-by: c_34 Commit-by: chz34 Merged-by: ascend-robot Description: <!-- PR描述模板更新日期:20260203 --> # 【合入来源】 > <font color="red">**如有社区issue,请关联issue链接**</font>\ > <font color="red">**请勿携带内部流程信息(需求链接、问题单、内部issue等)**</font> - [ ] 需求 - [ ] 问题单 - [x] issue/工单 https://gitcode.com/Ascend/pytorch/issues/2258 https://gitcode.com/Ascend/pytorch/issues/2890 - [ ] 重构优化 - [ ] 资料更新 # 【修改方案】 > 请描述修改内容的具体实现,涉及哪些组件之间进行交互,可以用1、2、3、...进行罗列\ > 如果是需求或者重构类的PR,需要补充详细设计文档(说明上下游组件关系、时序图、类图、DFX能力等内容) 1. 上游新增接口,暴露的路径与实际module不一致,实际来自_C库,添加测试白名单,与上游添加的白名单保持一致。 2. 上游新增接口,依赖额外三方库与cuda库,test_public_binding.py中增加相关过滤 3. 上游 Backedn.register_backend.__func__新增参数,修改对应patch函数,增加**kwargs,缺省忽略,同时保持与之前版本的接口兼容 4. 上游cudagraphify调用时新增额外参数kernel_free_cudagraph, user_visible_output_idxs,下游npugraphify跟随新增,函数内不处理 5. 新增requirements_2_13.txt的配置,默认配置升级到2.14 # 【资料变更】 > 请确认是否涉及资料变更。如涉及,需要在PR中体现,并简要说明修改内容。如不涉及,需填写“不涉及” 跟随上游变更,不涉及 # 【接口变更】 > 请确认是否涉及跨代码仓或者客户面可见的接口变更。如涉及,需要详细说明接口以及对应的变更内容,同时需要在资料中体现。如不涉及,需填写“不涉及” 跟随上游变更,不涉及 # 【功能验证】 > 说明测试场景,测试方法。如果本次测试方式与常规单元测试不同,请详细说明您的测试步骤\ > 新增/变更内容是否已新增/适配UT测试用例看护,并补充测试自验证截图 跟随上游变更,基于现有测试用例进行验证 # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [x] 代码注释完备,正确记录错误日志 - [x] 代码实现进行了返回值、空指针等校验 - [x] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [x] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!41741 | 9 天前 | |
Update URL (gitcode) Co-authored-by: dilililiwhy<why.wuhuanyu@huawei.com> # message auto-generated for no-merge-commit merge: merge update_url into master Update URL (gitcode) Created-by: dilililiwhy Commit-by: dilililiwhy 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!24843 | 10 个月前 | |
[feature]: update version.txt to multi version, drive package version from TORCH_VERSION env var Co-authored-by: chenhaozhe<chenhaozhe1@huawei.com> # message auto-generated for no-merge-commit merge: !43686 merge onetrack into master [feature]: update version.txt to multi version, drive package version from TORCH_VERSION env var Created-by: c_34 Commit-by: chenhaozhe 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/3076 - [x] 重构优化 优化onetrack后的构建逻辑 - [ ] 资料更新 将 torch_npu 包版本从读取 version.txt 改为由 TORCH_VERSION 环境变量驱动,支持多版本(含 post 号)编译, version.txt中改为多版本表达 构建过程中不再涉及修改version.txt文件,可以连续多次进行独立的版本构建。 行为变化(需关注):wheel 版本号 = get_version() 返回值 + +gitSHA(setup.py:generate_torch_npu_version,可用 BUILD_WITHOUT_SHA=1 去掉)。 - 改动前:VERSION 恒来自 version.txt(2.14.0),产物恒为 torch_npu-2.14.0+gitXXXX-...。 - 改动后:未指定 --torch= 时回退到已安装 PyTorch 版本。若装的是 dev/nightly torch(如 2.14.0.dev20260728+cpu),包版本会继承 .devYYYYMMDD 后缀,产物变为 torch_npu-2.14.0.dev20260728+gitXXXX-...,与显式 --torch=2.14.0 产出的 2.14.0+gitXXXX 命名不同。 - 发版编译建议显式指定 --torch= 以获得干净版本号。 # 【修改方案】 > 请描述修改内容的具体实现,涉及哪些组件之间进行交互,可以用1、2、3、...进行罗列\ > 如果是需求或者重构类的PR,需要补充详细设计文档(说明上下游组件关系、时序图、类图、DFX能力等内容) 1. 新增 tools/setup_helpers/version.py:get_version():优先读 TORCH_VERSION,未设置时回退到已安装的 PyTorch 版本。 2. setup.py、build_libtorch_npu.py、torchnpugen/autograd/utils.py、版本 linter 改用 get_version(),移除对 version.txt 的读取与 PathManager 校验。 3. setup.py:_get_torch_requires 剥离 .postN 后拼 torch== 依赖。 4. ci/build.sh:--torch= 经简单匹配 version.txt 校验(post 号可选,如 2.13.0 可匹配 2.13.0.post1),并 export TORCH_VERSION;不再写回 version.txt。 5. version.txt 改为支持版本清单(2.14.0 / 2.13.0.post1),供 build.sh 校验。 6. gen_version_header.py:parse_version 兼容 .postN。 # 【资料变更】 > 请确认是否涉及资料变更。如涉及,需要在PR中体现,并简要说明修改内容。如不涉及,需填写“不涉及” 已同步修改contribute # 【接口变更】 > 请确认是否涉及跨代码仓或者客户面可见的接口变更。如涉及,需要详细说明接口以及对应的变更内容,同时需要在资料中体现。如不涉及,需填写“不涉及” 不涉及 # 【功能验证】 > 说明测试场景,测试方法。如果本次测试方式与常规单元测试不同,请详细说明您的测试步骤\ > 新增/变更内容是否已新增/适配UT测试用例看护,并补充测试自验证截图 通过构建验证 # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [x] 代码注释完备,正确记录错误日志 - [x] 代码实现进行了返回值、空指针等校验 - [x] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [x] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!43686 | 2 天前 | |
[feature]: update version.txt to multi version, drive package version from TORCH_VERSION env var Co-authored-by: chenhaozhe<chenhaozhe1@huawei.com> # message auto-generated for no-merge-commit merge: !43686 merge onetrack into master [feature]: update version.txt to multi version, drive package version from TORCH_VERSION env var Created-by: c_34 Commit-by: chenhaozhe 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/3076 - [x] 重构优化 优化onetrack后的构建逻辑 - [ ] 资料更新 将 torch_npu 包版本从读取 version.txt 改为由 TORCH_VERSION 环境变量驱动,支持多版本(含 post 号)编译, version.txt中改为多版本表达 构建过程中不再涉及修改version.txt文件,可以连续多次进行独立的版本构建。 行为变化(需关注):wheel 版本号 = get_version() 返回值 + +gitSHA(setup.py:generate_torch_npu_version,可用 BUILD_WITHOUT_SHA=1 去掉)。 - 改动前:VERSION 恒来自 version.txt(2.14.0),产物恒为 torch_npu-2.14.0+gitXXXX-...。 - 改动后:未指定 --torch= 时回退到已安装 PyTorch 版本。若装的是 dev/nightly torch(如 2.14.0.dev20260728+cpu),包版本会继承 .devYYYYMMDD 后缀,产物变为 torch_npu-2.14.0.dev20260728+gitXXXX-...,与显式 --torch=2.14.0 产出的 2.14.0+gitXXXX 命名不同。 - 发版编译建议显式指定 --torch= 以获得干净版本号。 # 【修改方案】 > 请描述修改内容的具体实现,涉及哪些组件之间进行交互,可以用1、2、3、...进行罗列\ > 如果是需求或者重构类的PR,需要补充详细设计文档(说明上下游组件关系、时序图、类图、DFX能力等内容) 1. 新增 tools/setup_helpers/version.py:get_version():优先读 TORCH_VERSION,未设置时回退到已安装的 PyTorch 版本。 2. setup.py、build_libtorch_npu.py、torchnpugen/autograd/utils.py、版本 linter 改用 get_version(),移除对 version.txt 的读取与 PathManager 校验。 3. setup.py:_get_torch_requires 剥离 .postN 后拼 torch== 依赖。 4. ci/build.sh:--torch= 经简单匹配 version.txt 校验(post 号可选,如 2.13.0 可匹配 2.13.0.post1),并 export TORCH_VERSION;不再写回 version.txt。 5. version.txt 改为支持版本清单(2.14.0 / 2.13.0.post1),供 build.sh 校验。 6. gen_version_header.py:parse_version 兼容 .postN。 # 【资料变更】 > 请确认是否涉及资料变更。如涉及,需要在PR中体现,并简要说明修改内容。如不涉及,需填写“不涉及” 已同步修改contribute # 【接口变更】 > 请确认是否涉及跨代码仓或者客户面可见的接口变更。如涉及,需要详细说明接口以及对应的变更内容,同时需要在资料中体现。如不涉及,需填写“不涉及” 不涉及 # 【功能验证】 > 说明测试场景,测试方法。如果本次测试方式与常规单元测试不同,请详细说明您的测试步骤\ > 新增/变更内容是否已新增/适配UT测试用例看护,并补充测试自验证截图 通过构建验证 # 【CheckList】 > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] - [x] 代码注释完备,正确记录错误日志 - [x] 代码实现进行了返回值、空指针等校验 - [x] PR标题正确使用类型标签,如:feat、fix、refactor、docs、test等 - [x] PR持续集成流水线(CI)执行通过,代码检查无异常 See merge request: Ascend/pytorch!43686 | 2 天前 |
TorchNPU
基于昇腾NPU的PyTorch适配插件
English · 中文
支持版本 · 安装 · 快速开始 · 版本配套 · 支持说明 · 贡献指南 · 文档 · 社区
简介
作为 Ascend for PyTorch 社区的核心组件,TorchNPU 是昇腾专为 PyTorch 打造的深度学习适配插件,使 PyTorch 框架能够直接调用昇腾 NPU,为开发者提供昇腾 AI 处理器的超强算力。
昇腾为基于华为昇腾 AI 处理器和软件的行业应用及服务提供全栈 AI 计算基础设施。您可以通过访问昇腾社区,了解关于昇腾的更多信息。
核心特性
TorchNPU 充分继承和复用上游 PyTorch 的大量成熟功能,并在此基础上针对昇腾 NPU 进行深度适配与优化,下图展示了 TorchNPU 的主要功能模块:
TorchNPU 主要模块介绍:
- 基础计算: 广泛支持 PyTorch 原生 API 及自定义 API,覆盖主流AI场景,提供一致性体验,支撑用户快速实现模型和算法。
- 分布式: 支持通过 FSDP2 加速分布式训练,核心计算 API 支持 Dtensor,支持 AllGather、AllReduce、AllToAll 等集合通信原语,和 Send、Recv 等点对点通信原语。
- 图模式: 通过“动态图捕获+静态图优化+高效代码生成”的方式显著加速模型训练和推理任务,并支持通过 NPUGraph 下沉执行,在 2.6.0 以上版本已支持。
- 调试调优: 支持 Profiling 分析计算、通信和内存使用,支持通过 WatchDog 实时监控分析通信异常。
- TorchNPU Core: 支持虚拟内存管理降低内存碎片,在分布式场景支持跨流内存复用优化,通过 PrivateUse1 将算子和设备资源接入 PyTorch。
最新动态
- 📢 [2026-06-30] Ascend for PyTorch 社区相关组件名称规范统一预告。🔗 了解更多
- 📢 [2026-04-30] TorchNPU 26.0.0 版本发布,新增支持 PyTorch 2.10.0,支持Python3.13, 新增P2P通信支持group下发、DTensor策略扩展等特性。🔗 了解更多
支持版本
当前分支以单一源码适配多个 PyTorch 版本,所支持的 PyTorch 版本清单声明在 version.txt 中,该文件是版本支持的唯一来源,随版本适配同步更新。
已发布软件包的版本配套关系(TorchNPU / PyTorch / CANN / Python)请参见版本配套。
安装
软件包安装
以安装 TorchNPU 2.10.0.post2 版本为例,请按照以下命令进行安装。下载其他版本的方式请参见社区下载页面 TorchNPU 下载。
安装 CANN
安装 9.0.0 版本的 CANN,具体步骤请参见 CANN 安装指南。
安装 PyTorch
执行以下命令安装 PyTorch 2.10.0:
pip install torch==2.10.0 --index-url https://download.pytorch.org/whl/cpu
安装 TorchNPU
执行以下命令安装 TorchNPU 2.10.0.post2:
pip install torch-npu==2.10.0.post2
源码编译安装
编译TorchNPU的详细步骤请参见源码安装。
快速开始
初始化环境
# 默认路径,请根据实际安装位置修改
source /usr/local/Ascend/ascend-toolkit/set_env.sh
运行示例
import torch
import torch_npu
x = torch.randn(2, 2).npu()
y = torch.randn(2, 2).npu()
z = x.mm(y)
print(z)
从 TorchNPU 2.5.1 版本起,
import torch_npu不再是强制要求(会自动注册),但建议在代码中显式导入以确保设备初始化。
输出如下类似信息说明运行成功:
tensor([[-0.0515, 0.3664],
[-0.1258, -0.5425]], device='npu:0')
完整的模型迁移和训练教程,请参见 快速入门。
社区交流
Ascend for PyTorch 社区由多个 Special Interest Groups(SIGs)组成,每个 SIG 负责特定技术领域的开发、维护和社区协作。以下是当前所有 SIG 的列表,点击对应链接可查看详细说明。
| SIG名称 | 简要描述 | 链接 |
|---|---|---|
| Core SIG | 聚焦于昇腾 NPU 平台上的 PyTorch 核心适配层开发,负责 TorchNPU 扩展库及其算子插件 OpPlugin 的设计、实现与维护。 |
🔗 了解更多 |
| Distributed SIG | 致力于在昇腾 NPU 硬件底座上,围绕 PyTorch 分布式训练框架(torch.distributed)构建高效、易用、可扩展的并行训练能力,为大语言模型、多模态模型和强化学习等场景提供极致性能体验。 | 🔗 了解更多 |
| Graph Mode SIG | 聚焦于 Dynamo、Inductor、NPUGraph等核心技术,旨在通过自动化的图捕捉与编译优化技术,弥合“易用性”与“高性能”之间的鸿沟。 | 🔗 了解更多 |
| Usability SIG | 致力于推动Ascend for PyTorch易用性体验提升,包含文档、教程、案例等。 | 🔗 了解更多 |
每个SIG都有自己的例会、邮件列表和贡献指南。点击对应的SIG链接可查看详细联系方式、工作目标及参与方式。欢迎大家为社区做贡献。如果有任何疑问或建议,请提交 GitCode Issues,我们会尽快回复。感谢您的支持。
安全声明
TorchNPU 的系统安全加固、运行用户建议和文件权限控制等内容,请参见 安全声明。
免责声明
本插件仅供调试和开发使用。使用者需自行保证输入命令行的安全性,并对使用过程中产生的数据做好权限控制。使用本插件即表示您同意并接受以上声明。
License
TorchNPU 的使用许可证,请参见 LICENSE 文件。 TorchNPU 资料文档的使用许可证,请参见 LICENSE 文件。
致谢
感谢来自社区的每一个 PR,欢迎开发者向 TorchNPU 插件贡献代码!