昇腾GPU 环境安装 PyTorch
昇腾GPU 环境安装 PyTorch
ytkz昇腾(Ascend)GPU 是华为的 AI 加速器系列,支持 NPU(Neural Processing Unit)计算。安装 PyTorch 需要使用华为官方的 CANN(Compute Architecture for Neural Networks)工具包,并通过 MindSpore 或 Ascend-PyTorch 适配器来支持。
如果未安装 CANN,请先安装:
1.从 华为开发者官网 下载 CANN 工具包(最新版本如 8.0.RC1)。
2.安装命令示例:
sudo dpkg -i Ascend-cann-toolkit_*.deb
sudo ./Ascend-cann-*.run --install
设置环境变量:
source /usr/local/Ascend/ascend-toolkit/set_env.sh
安装 PyTorch for Ascend
华为提供官方 Ascend-PyTorch 仓库,支持 PyTorch 1.8 ~ 2.0+ 版本。推荐使用 pip 安装。
更新 pip:
pip install --upgrade pip setuptools wheel安装 PyTorch(针对 Ascend NPU):
对于 PyTorch 2.1+(推荐最新):
pip install torch==2.1.0 torchvision==0.16.0 torchaudio==2.1.0 --extra-index-url https://repo.huaweicloud.com/repository/pytorch-proxy/simple/或者指定 Ascend 专用版本(如果需要特定适配):
pip install torch-npu==2.1.0.post3 # NPU 后端支持- torch-npu 是华为的 PyTorch NPU 扩展包,提供 device=’npu’ 支持。
验证安装: 启动 Python 解释器:
import torch
import torch_npu # 如果安装了 torch-npu
print(torch.__version__) # 应输出 2.1.0 或类似
# 测试 NPU 设备
if torch_npu.is_available():
device = torch.device('npu:0')
x = torch.randn(3, 3).to(device)
y = torch.mm(x, x)
print(y) # 应在 NPU 上计算
else:
print("NPU 未就绪")
常见问题排查
| 问题 | 可能原因 | 解决方案 |
|---|---|---|
| No module named ‘torch_npu’ | 未安装 NPU 扩展 | 运行 pip install torch-npu 并 source 环境变量。 |
| CANN 版本不匹配 | PyTorch 版本与 CANN 不兼容 | 检查 兼容性矩阵,如 CANN 8.0 支持 PyTorch 2.1。 |
| 权限/路径错误 | 环境变量未设置 | 执行 echo ‘source /usr/local/Ascend/ascend-toolkit/set_env.sh’ >> ~/.bashrc 并重启终端。 |
| 网络下载失败 | 源不可达 | 使用华为镜像:pip install -i https://repo.huaweicloud.com/repository/pytorch-proxy/simple/ torch。 |



