我正在为我的深度学习项目使用 Colab 和 Pytorch CUDA,并面临无法释放 GPU 的问题。我在这里阅读了一些相关帖子,但它们无法解决我的问题。请指导我如何释放 GPU 内存。 提前谢谢你
试试这个:
torch.cuda.empty_cache()
或者这个:
with torch.no_grad():
torch.cuda.empty_cache()
这段代码可以做到这一点。 GPU 的索引为 [0,1,...],因此如果您只有一个,则 gpu_index 为 0。请注意,这会通过终止底层的 tensorflow 会话来清除 GPU,即。您的模型、数据等将从 GPU 中清除,但它不会在您的 Colab/Jupyter 会话中重置内核。因为它会清除会话,所以您不能在运行期间使用此during来清除内存。
from numba import cuda
def clear_GPU(gpu_index):
cuda.select_device(gpu_index)
cuda.close()
安装 numba(“pip install numba”)……我上次尝试 conda 时遇到问题,所以请使用 pip。这是一个方便的 b/c numba 开发人员不厌其烦地正确执行一些低级 CUDA 方法,所以我想如果你有时间你也可以这样做。