Tensorflow运行模型-----会话(session)

Tensorflow的会话负责管理程序资源,防止资源泄露。常见的会话使用模式包括明确调用生成和关闭会话,以及利用Python上下文管理器。通过ConfigProto可以配置会话参数,如allow_soft_placement和log_device_placement,前者允许GPU运算在CPU上进行,后者用于记录设备分配便于调试。
摘要由CSDN通过智能技术生成

会话拥有并管理Tensorflow程序的所有资源,类似于操作系统中的进程控制块PCB。当所有计算完成之后需要关闭会话来帮助系统回收资源。否则会出现资源泄露的问题。

Tensorflow 中使用会话的模式一般有两种:

1:明确调用会话生成函数和关闭会话函数,

#创建一个会话

sess = tf.Session()

#使用这个创建好的会话结果,

sess.run(...)

#关闭会话使本次运行中使用的资源得以被释放

sess.close()



在执行这种模式的时候,明确需要调用Sesssion.close()函数来关闭会话并释放资源。当程序出现异常请况下,关闭函数可能就不能被执行,导致内存泄漏。Tensorflow 可以通过 Python 的上下文管理器来使用会话,给出一例:

#创建一个会话,用Python 中的上下文管理器来展示如何使用这种模式。

with tf.Session() as sess:

      #使用这创建好的回话来计算自己关心的结果。

       sess.run(....)

#不在需要再调用“Session.close()"函数来关闭会话,

#当上下文退出时,会话关闭,资源释放自动完成


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值