CUDA运行时错误(59):设备端断言被触发

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (368)

我可以访问Tesla K20c,我在CIFAR10数据集上运行ResNet50 ...然后我得到错误: THCudaCheck FAIL file=/opt/conda/conda-bld/pytorch_1524584710464/work/aten/src/THC/generated/../generic/THCTensorMathPointwise.cu line=265 error=59 : device-side assert triggered Traceback (most recent call last): File "main.py", line 109, in <module> train(loader_train, model, criterion, optimizer) File "main.py", line 54, in train optimizer.step() File "/usr/local/anaconda35/lib/python3.6/site-packages/torch/optim/sgd.py", line 93, in step d_p.add_(weight_decay, p.data) RuntimeError: cuda runtime error (59) : device-side assert triggered at /opt/conda/conda-bld/pytorch_1524584710464/work/aten/src/THC/generated/../generic/THCTensorMathPointwise.cu:265 如何解决此错误

提问于
用户回答回答于

通常,遇到cuda runtine error时,建议使用该CUDA_LAUNCH_BLOCKING=1标志再次运行程序以获得准确的堆栈跟踪。

在您的特殊情况下,对于指定数量的类,数据的目标是高(或低)。

用户回答回答于

我好几次遇到过这个问题。我发现这是一个索引问题。例如,如果您的地面实况标签从1开始:目标= [1,2,3,4,5],那么您应该为每个标签减去1,将其更改为:[0,1,2,3,4] 。这每次都解决了我的问题。

扫码关注云+社区

领取腾讯云代金券