首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >降低张量流模型的GPU内存消耗

降低张量流模型的GPU内存消耗
EN

Stack Overflow用户
提问于 2018-02-16 22:33:10
回答 1查看 1.8K关注 0票数 0

我正在尝试让这个git代表中的代码正常工作:https://github.com/cvikasreddy/skt训练数据是一个7mb的文本文件。我有一台Nvidia GTX 750ti,内存为1 1gb。当我尝试在这台机器上训练时,训练器因为内存不足而崩溃(根据错误消息,模型大小为2.5 on )。当然,我理解这些不能放入1 1gb的显存中。默认设置为:

代码语言:javascript
复制
num_layers = 3 # Number of layers of RNN
num_hidden = 128 # Hidden size of RNN cell
batch_size = 128 # Number of sentences in a batch
seq_length = 35 # Length of sequence

我已经尝试将它们更改为:

代码语言:javascript
复制
num_layers = 3 # Number of layers of RNN
num_hidden = 128 # Hidden size of RNN cell
batch_size = 1 # Number of sentences in a batch
seq_length = 35 # Length of sequence

我也尝试过更改seq_length,但同样不起作用。你有什么建议来解决这个问题?当然,购买一个更大的图形单元是可行的。但我想知道代码本身是否可以做到这一点。也许拆分输入数据?计算机本身有16 OK的内存,这应该是可以的。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-02-16 22:51:25

您可以在CPU上运行所有内容,方法是添加

代码语言:javascript
复制
with tf.device('/cpu:0'):

并在定义图形之前进行正确的缩进。它会更慢,但你应该有足够的内存。你也可以把你的大部分运算放在CPU上,然后选择一些放在GPU上。你会找到一些关于那个here的帮助。

您也可以减小网络大小(num_hiddennum_layers),但性能会降低。如果RNN操作是在64位中完成的,也许你可以改为32位,我不知道这是否可能。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48828962

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档