我想在基于Pytorch的项目中进行交叉验证。
而且我没有找到pytorch提供的删除当前模型并清空GPU内存的任何方法。你能告诉我该怎么做吗?
最佳答案
在PyTorch中释放内存的方式与使用普通Python垃圾收集器的方式相同。这意味着一旦所有对Python对象的引用都消失了,它将被删除。
您可以使用 del
运算符删除引用:
del model
您必须确保尽管没有对各个对象的引用,否则不会释放内存。
因此,一旦删除了
model
的所有引用,就应将其删除并释放内存。如果要了解有关内存管理的更多信息,可以在这里查看:
https://pytorch.org/docs/stable/notes/cuda.html#cuda-memory-management
关于gpu - pytorch从gpu删除模型,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/53350905/