【Bug解决】nvcc fatal : Unsupported gpu architecture ‘compute_86‘

在Ubuntu 18.04上使用CUDA 11.0、PyTorch 1.10和GeForce RTX 3090时,尝试安装Detectron2时遇到'nvcc fatal: Unsupported GPU architecture 'compute_86''的错误。问题源于CUDA 11.0不支持GPU的8.6算力。通过在.bashrc文件中设置环境变量TORCH_CUDA_ARCH_LIST为'8.0',然后source更新,可以临时解决此问题。尽管可以考虑升级CUDA到11.6来匹配GPU算力,但目前PyTorch仅支持到CUDA 11.3,使得此方案不可行。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

报错描述

执行 pip install 'git+https://github.com/facebookresearch/detectron2.git' 安装 detectron2 遇到错误:

nvcc fatal   : Unsupported gpu architecture 'compute_86'

在这里插入图片描述
报错环境:

  • Linux:Ubuntu 18.04
  • GPU:NVIDIA GeForce RTX 3090
  • CUDA:11.0
  • Pytorch:1.10
  • Python:3.9
  • GCC:7.5.0

解决方案

错误原因: GPU 3090 算力是 8.6,而当前 CUDA 11.0 不支持算力 8.6。

解决方案: 设置环境变量,降低算力要求。

# 打开配置文件
vi ~/.bashrc
# 在配置文件中添加如下一行
export TORCH_CUDA_ARCH_LIST="8.0"  # 因为是CUDA11.0,对应的算力为8.0
# 保存后source更新
source ~/.bashrc

再次执行报错的安装命令,安装成功:
在这里插入图片描述
解决方案(目前不可行):将 CUDA 版本升级到支持算力 8.6 即可,但同时需要安装对应的PyTorch。在 CUDA官网 可以看到目前最新的 CUDA 版本是 11.6,表示支持算力 8.6 的 GPU。但是上 PyTorch官网 却看到目前 PyTorch 支持的 CUDA 最高版本是 11.3。因此这个办法暂时是不可行了,因为 PyTorch 还没有支持。
在这里插入图片描述

关于报错的原因解释

compute_86 是说当前 GPU 3090 的算力是 8.6,关于 GPU 算力和 CUDA 算力的关系是:

  • 算力 8.0 的显卡可以在最高支持算力 8.6 的 CUDA 下正常运行
  • 但算力 8.6 的显卡不能在最高支持算力 8.0 的 CUDA 下正常运行
  • 也就是说 CUDA 支持的最高算力要大于等于GPU本身的算力

关于版本问题:

  • 通常 CUDA 的最新版本要比 PyTorch 支持的 cuda 版本高,要注意
  • CUDA 10.x 最高支持算力为 7.x,CUDA 11.x 最高支持算力为 8.x
评论 14
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

不吃饭就会放大招

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值