Pytorch释放显存占用方式

yipeiwu_com6年前Python基础

如果在python内调用pytorch有可能显存和GPU占用不会被自动释放,此时需要加入如下代码

torch.cuda.empty_cache()

我们来看一下官方文档的说明

Releases all unoccupied cached memory currently held by the caching allocator so that those can be used in other GPU application and visible in nvidia-smi.

Note

empty_cache() doesn't increase the amount of GPU memory available for PyTorch. See Memory management for more details about GPU memory management.

此外还可以使用

memory_allocated()和max_memory_allocated()

观察显存占用,并使用

memory_cached()和 max_memory_cached()

观察由缓存分配器管理的内存。

以上这篇Pytorch释放显存占用方式就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

numpy中实现ndarray数组返回符合特定条件的索引方法

numpy中实现ndarray数组返回符合特定条件的索引方法

在numpy的ndarray类型中,似乎没有直接返回特定索引的方法,我只找到了where函数,但是where函数对于寻找某个特定值对应的索引很有用,对于返回一定区间内值的索引不是很有效,...

python3学习笔记之多进程分布式小例子

python3学习笔记之多进程分布式小例子

最近一直跟着廖大在学Python,关于分布式进程的小例子挺有趣的,这里做个记录。 分布式进程 Python的multiprocessing模块不但支持多进程,其中managers子模块还...

python读取TXT每行,并存到LIST中的方法

python读取TXT每行,并存到LIST中的方法

文本如图: Python: import sys result=[] with open('accounts.txt','r') as f: for line in f: re...

使用OpenCV实现仿射变换—缩放功能

使用OpenCV实现仿射变换—缩放功能

前面介绍怎么样实现平移的功能,接着下来演示缩放功能。比如在一个文档里插入一个图片,发现这个图片占用太大的面积了,要把它缩小,才放得下,与文字的比例才合适。这样的需求,就需要使用仿射变换的...

python 实现在一张图中绘制一个小的子图方法

python 实现在一张图中绘制一个小的子图方法

有时候为了直观展现图的信息,可以在大图中添加小子图的方式进行数据分析,如下图所示: 具体的代码如下:该图连接了数据库,当然重要的不是数据展示,而是添加子图的方法。 import m...