---
title: 模型运行在CPU导致训练效率严重劣化问题分析与解决-官方技术文章-昇腾社区
description: 在相同模型与数据集配置下&#xff0c;训练任务在新平台上的执行效率显著下降&#xff1a;仅处理7条数据即耗时超过2小时&#xff0c;而此前在其他平台仅需6分钟即可完成2000条数据的训练。整个过程无任何报错信息&#xff0c;但NPU资源利用率几乎为0&#xff0c;训练实际运行在CPU上&#xff0c;导致性能严重劣化。
keywords: CPU,模型运行在,导致训练效率,严重劣化问题,分析与解决,官方技术文章,昇腾社区,问题现象
url: https://www.hiascend.com/developer/techArticles/20260713-1
section: (其他)
---

# 模型运行在CPU导致训练效率严重劣化问题分析与解决-官方技术文章-昇腾社区

URL: https://www.hiascend.com/developer/techArticles/20260713-1
描述: 在相同模型与数据集配置下&#xff0c;训练任务在新平台上的执行效率显著下降&#xff1a;仅处理7条数据即耗时超过2小时&#xff0c;而此前在其他平台仅需6分钟即可完成2000条数据的训练。整个过程无任何报错信息&#xff0c;但NPU资源利用率几乎为0&#xff0c;训练实际运行在CPU上&#xff0c;导致性能严重劣化。
关键词: CPU,模型运行在,导致训练效率,严重劣化问题,分析与解决,官方技术文章,昇腾社区,问题现象

官方技术文章 [了解详情](https://www.hiascend.com/zh/developer/techArticles)

模型运行在CPU导致训练效率严重劣化问题分析与解决

模型运行在CPU导致训练效率严重劣化问题分析与解决

模型推理

发表于: 2026/07/13

30

1

## 问题现象

在相同模型与数据集配置下，训练任务在新环境下的执行效率显著下降：仅处理7条数据即耗时超过2小时，而此前在其他机器上仅需6分钟即可完成2000条数据的训练。整个过程无任何报错信息，但NPU资源利用率几乎为0，训练实际运行在CPU上，导致性能严重劣化。

## 原因分析

### 1. 参数配置一致性排查

对比两次的任务启动参数，包括关键同步参数`ASCEND_LAUNCH_BLOCKING`等，确认配置完全一致，排除参数设置异常的可能性。

### 2. 节点与硬件环境排查

在当前平台尝试了多种作业规模与不同计算节点，均出现相同现象，且无硬件故障告警。结合多场景复现结果，基本排除节点或硬件异常。

### 3. NPU资源使用情况分析

●

通过`npu-smi info`命令进入容器查看NPU状态，显存占用极低，初步判断模型未成功加载至NPU。

●

由于环境限制，profiling数据采集暂未完成，但已有明确迹象表明模型运行路径异常。

### 4. 模型加载逻辑检查

检查代码中模型加载部分，发现`device_map`参数设置为`"auto"`，未显式指定运行设备。代码片段如下：

为验证模型是否可正常加载至NPU，将`device_map`显式修改为`"npu:0"`，重新提交任务后立即报错：

`EC0010: No module named 'tbe'`

手动执行以下命令后，任务成功拉起，训练速度恢复至正常水平：

source /usr/local/Ascend/ascend-toolkit/set_env.sh

## 问题根因

该问题的本质是：容器运行环境中未正确加载CANN环境变量，导致`tbe`模块不可用。

●

当`device_map="auto"`时，系统尝试将模型加载至NPU，但由于CANN环境缺失，加载失败，自动回退至CPU执行。

●

此时模型在CPU上运行，NPU完全空闲，造成训练效率极低，但无明显错误提示，难以快速定位。

●

显式指定`device_map="npu:0"`后，NPU加载失败被明确暴露，错误信息引导至环境配置问题。

## 解决措施

1.

强制指定设备以暴露问题将模型加载逻辑中的`device_map`从`"auto"`修改为`"npu:0"`，使NPU加载失败的异常行为显式呈现于日志中。

2.

修复环境依赖在任务启动脚本或容器初始化阶段，显式添加CANN环境变量加载命令，确保后续所有训练任务均在完整CANN环境下运行，保障模型可正确加载至NPU并发挥硬件性能。

## 总结建议

●

在使用NPU进行训练时，务必确保CANN环境已正确加载，建议将`set_env.sh`添加至容器启动脚本或任务入口。

●

对于`device_map="auto"`的配置，需注意其依赖底层环境完整性；若环境异常，可能引发隐性性能问题（如运行在CPU）。

●

建议在任务部署前增加环境检查步骤，例如验证`tbe`模块是否可导入，提前规避此类问题。

边框设置

无框线

边距

宽度

1磅

颜色

自由布局设置

整体布局

子模块

评论

修订记录

对正文进行的文本增删、样式修改都将标记为修订

自定义多级列表

列表设置

- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9

- 1.
- a.
- i.
- 1.
- a.
- i.
- 1.
- a.
- i.

前缀

无

序号

1 2 3 ...

后缀

.

编号格式

列表显示

继承层级

不继承

位置

对齐方式

默认

单元格边距

边距

默认

左边距

cm

右边距

cm

上边距

cm

下边距

cm

点赞 1

本页内容

问题现象 [了解详情](https://www.hiascend.com/#5TPtdUGk5Dj52ogh9OGFri)

原因分析 [了解详情](https://www.hiascend.com/#42Kc7xqVJLjDdYuf1iu3HA)

问题根因 [了解详情](https://www.hiascend.com/#6XKk4WChDuSWskjk0bkSG6)

解决措施 [了解详情](https://www.hiascend.com/#1S7uXoNXXSvbYhe58N7BOK)

总结建议 [了解详情](https://www.hiascend.com/#7LGd6w0XA4esgo3VOoEdKZ)
