ValueError: Unknown CUDA arch (8.7+PTX) or GPU not supported

记录一个报错

在我从官网编译安装完pytorch1.10.0以后,编译安装torchvision0.11.0的时候报错。完整报错是这样,我跟这个图片的报错一样

分析报错原因

可以ls /opt/venv/lib/python3.10/site-packages/torch/utils/cpp_extension.py,看一下 1793行附近, _get_cuda_arch_flags这个方法可以找到支持的算力列表,

可以发现当前列表不支持8.7算力

所以原因就是我的NVIDIA Orin NX 的 GPU 支持 CUDA 8.7 计算能力,所以编译pytorch的时候自适应了这个算力,编译了支持CUDA8.7算力的pytorch。但在 PyTorch 1.10.0 的默认设置中,8.7 并不在预设的支持列表中,所以产生这个报错。

解决办法

首先,使用这个代码查看自己编译的pytorch支持的CUDA哪个算力。我的输出是(8,7),说明我编译的就是支持CUDA8.7算力的pytorch。

import torch
print(torch.cuda.get_arch_list())

所以,我直接在supported_arches这个列表里加上'8.7',使它支持8.7这个问题就解决了。

随后可以验证一下torch和torchvision有没有问题。

我倒是想过手动添加8.7会不会导致编译的pytorch1.10.0并不适用。目前使用还没遇到问题,遇到问题后随时回来记录。 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值