最近从github上拉了两个基于pytorch的代码,用编辑器debug时都是能正常运行,但是当我使用nohup命令挂到后台跑的时候,都报了这个错误。
一番搜索后,我使用如下方法解决了这个问题。
首先,
将
import torch
移到程序最开始的地方,然后在下面再加一行:
torch.cuda.current_device()
因为我只使用一块GPU,所以我指定了它的编号:
import os
os.environ['CUDA_LAUNCH_BLOCKING'] = '0'
这一顿设置以后,就不再报错了。具体什么原因我也不清楚,只是单纯记录一下。