成功解决RuntimeError: radix_sort: failed on 1st step: cudaErrorInvalidDevice: invalid device ordinal

项目场景:

linux下detectron2异常解决


问题描述:

最近用到了detectron2来进行实例分割,遇到了一个非常奇葩的问题,根据detectron2的要求,我的pytorch版本选择了1.8.0。我先在windows跑了几天,服务器回来后,打算移植到服务器上,同样也安装了1.8.0的pytorch。然后,安装测试的时候未报异常,训练的时候报了如下的错误

在这里插入图片描述


原因分析:

提示:这里填写问题的分析:
经过一顿百度操作后,进行了如下操作:
1、降级pytorch。
  结果:ok,不报这个错了。重新编译后(更改pytorch版本后需要重新编译detectron2),训练的时候报了如下错误:
在这里插入图片描述
这说明pytorch版本必须要在1.8.0以上。
giao,没法子,继续查
2、训练的时候指定显卡进行训练,在训练代码中添加代码

os.environ['CUDA_VISIBLE_DEVICES'] = '1'

  服务器上有两块显卡,所以我来回试,报错依然。尝试训练其他代码,却能正常训练,这一次说明我的服务器环境没有问题。
  接着,继续解决


解决方案:

  最终,查到这是torch1.8.x的bug,既然降级也不行,1.8.x又有bug,那就升级喽。为了提升成功率,我重下了detectron2的源码,安装了1.9.0的pytorch,测试也成功,开始训练
[11/11 16:26:51 d2.utils.events]:  eta: 0:01:10  iter: 19  total_loss: 4.466  loss_cls: 1.329  loss_box_reg: 0.3078  loss_mask: 0.6922  loss_rpn_cls: 1.864  loss_rpn_loc: 0.1759  time: 0.0616  data_time: 0.0140  lr: 7.2025e-06  max_mem: 645M
[11/11 16:26:52 d2.utils.events]:  eta: 0:01:09  iter: 39  total_loss: 2.811  loss_cls: 1.121  loss_box_reg: 0.5544  loss_mask: 0.6874  loss_rpn_cls: 0.2094  loss_rpn_loc: 0.1059  time: 0.0678  data_time: 0.0136  lr: 1.2152e-05  max_mem: 687M
[11/11 16:26:54 d2.utils.events]:  eta: 0:01:08  iter: 59  total_loss: 2.596  loss_cls: 0.9262  loss_box_reg: 0.6883  loss_mask: 0.6818  loss_rpn_cls: 0.1335  loss_rpn_loc: 0.0902  time: 0.0704  data_time: 0.0144  lr: 1.7103e-05  max_mem: 707M
[11/11 16:26:55 d2.utils.events]:  eta: 0:01:07  iter: 79  total_loss: 2.364  loss_cls: 0.7207  loss_box_reg: 0.6758  loss_mask: 0.67  loss_rpn_cls: 0.1154  loss_rpn_loc: 0.09799  time: 0.0727  data_time: 0.0140  lr: 2.2053e-05  max_mem: 707M
^C[11/11 16:26:56 d2.engine.hooks]: Overall training speed: 86 iterations in 0:00:06 (0.0727 s / it)
[11/11 16:26:56 d2.engine.hooks]: Total training time: 0:00:06 (0:00:00 on hooks)
[11/11 16:26:56 d2.utils.events]:  eta: 0:01:07  iter: 88  total_loss: 2.251  loss_cls: 0.6885  loss_box_reg: 0.6405  loss_mask: 0.6657  loss_rpn_cls: 0.1111  loss_rpn_loc: 0.1179  time: 0.0723  data_time: 0.0135  lr: 2.4033e-05  max_mem: 707M

   终于,出现了这熟悉的画面,说明训练正常,bug解决!!!
  • 7
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 9
    评论
引用\[1\]和\[2\]中提到的错误信息 "RuntimeError: cuDNN error: CUDNN_STATUS_EXECUTION_FAILED" 是与cuDNN库相关的错误。cuDNN是一个用于深度学习的GPU加速库,它提供了高性能的深度神经网络操作。这个错误通常表示cuDNN在执行操作时遇到了问题。 这个错误可能有多种原因,包括但不限于以下几点: 1. 版本不匹配:cuDNN库的版本与PyTorch或其他深度学习框架不兼容。请确保你使用的cuDNN版本与你的深度学习框架要求的版本匹配。 2. GPU驱动问题:可能是由于GPU驱动的问题导致的。尝试更新你的GPU驱动程序到最新版本,并确保与你使用的深度学习框架兼容。 3. GPU内存不足:如果你的模型或数据集过大,可能会导致GPU内存不足。尝试减小批量大小或使用更小的模型来减少内存占用。 4. 硬件问题:有时候,cuDNN错误可能是由于硬件问题引起的。检查你的GPU是否正常工作,并确保没有硬件故障。 解决这个问题的方法包括: 1. 确保你的cuDNN版本与深度学习框架要求的版本匹配。 2. 更新GPU驱动程序到最新版本。 3. 尝试减小批量大小或使用更小的模型来减少内存占用。 4. 检查GPU是否正常工作,并排除硬件故障的可能性。 如果以上方法都没有解决问题,你可以尝试在深度学习框架的官方论坛或社区中寻求帮助,提供更详细的错误信息和环境配置,以便其他人能够更好地帮助你解决问题。 #### 引用[.reference_title] - *1* [CUDNN_STATUS_EXECUTION_FAILED 报错解决](https://blog.csdn.net/ID_AF12/article/details/121583273)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [RuntimeError: cuDNN error: CUDNN_STATUS_EXECUTION_FAILED](https://blog.csdn.net/weixin_51060590/article/details/122449657)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *3* [玄学错误:RuntimeError: cuDNN error: CUDNN_STATUS_EXECUTION_FAILED 解决方案——cuDNN 卸载并重装](https://blog.csdn.net/qq_40506723/article/details/124798992)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值