我正在拥抱 roberta language_modeling.py
。完成 400 步后,我突然遇到 CUDA 内存不足的问题。不知道怎么处理。你能帮忙吗?谢谢
问问题
1183 次
2 回答
2
这可能有多种原因。如果您仅在几次迭代后才获得它,则可能是您没有释放计算图。你用loss.backward(retain_graph=True)
的还是类似的?
此外,当您运行推理时,请务必使用
with torch.no_grad():
model.forward(...)
否则,计算图也会保存在那里,并且可能永远不会被释放,因为您从不调用backward()
它们。
于 2020-02-12T09:17:32.177 回答
0
我的问题是我没有与样本大小进行比较来检查我的 GPU 内存大小。我有很多非常小的样本,经过多次迭代后得到了一个大样本。我的错。谢谢您,如果您遇到这种情况,请记得检查这些事情。
于 2020-02-21T14:18:40.917 回答