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设计】。

相关文章

python路径的写法及目录的获取方式

获取文件目录的方法 : import os # '***获取当前目录***' os.getcwd() # '***获取上级目录***' os.path.abspath(os.path...

python SQLAlchemy的Mapping与Declarative详解

前面介绍过vSQLAlchemy中的 Engine 和 Connection,这两个对象用在row SQL (原生的sql语句)上操作,而 ORM(Object Relational M...

tensorflow建立一个简单的神经网络的方法

tensorflow建立一个简单的神经网络的方法

本笔记目的是通过tensorflow实现一个两层的神经网络。目的是实现一个二次函数的拟合。 如何添加一层网络 代码如下: def add_layer(inputs, in_size,...

python遍历文件夹找出文件夹后缀为py的文件方法

大学毕业, 想看看大学写了多少行代码。 #coding=utf-8 import os class Solution: def __init__(self): self.dir...

python基础教程之自定义函数介绍

函数最重要的目的是方便我们重复使用相同的一段程序。 将一些操作隶属于一个函数,以后你想实现相同的操作的时候,只用调用函数名就可以,而不需要重复敲所有的语句。 函数的定义 首先,我们要定义...