gpu - pytorch 从 gpu 中删除模型

标签 gpu pytorch allennlp

我想在基于 Pytorch 的项目中进行交叉验证。
而且我也没有找到pytorch提供的删除当前模型和清空GPU内存的方法。你能告诉我该怎么做吗?

最佳答案

在 PyTorch 中释放内存的工作方式与普通 Python 垃圾收集器一样。这意味着一旦对 Python 对象的所有引用都消失了,它将被删除。

您可以使用 del 删除引用。运算符(operator):

del model

你必须确保没有对相应对象的引用,否则内存不会被释放。

因此,一旦您删除了 model 的所有引用,它应该被删除并释放内存。

如果您想了解有关内存管理的更多信息,可以查看此处:
https://pytorch.org/docs/stable/notes/cuda.html#cuda-memory-management

关于gpu - pytorch 从 gpu 中删除模型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53350905/

相关文章:

gpu - 用于科学计算的 GPU 精度

ios - 使用 initWithTexture 创建 CIImage

python - 无法在 Docker 上运行 Flask (ModuleNotFoundError)

python - 在 Pytorch 中,复制模型的学习参数作为同一架构的第二个模型的初始化的最有效方法是什么?

python - tensorflow:找不到 dnn 实现

python - 如何强制 scipy.optimize.fmin_l_bfgs_b 使用 'dtype=float32'

deep-learning - pytorch中的Dropconnect实现

allennlp - allennlp.service 是否已被弃用?

python - 如何在 AllenNLP 中加载微调的 sciBERT 模型?