相关疑难解决方法(0)

keras是否会自动使用gpu?

似乎它会自动使用gpu,但我不知道为什么。

首先,我声明如下

tf_config = tf.ConfigProto( allow_soft_placement=True )
tf_config.gpu_options.allow_growth = True
sess = tf.Session(config=tf_config) 
keras.backend.set_session(sess)
Run Code Online (Sandbox Code Playgroud)

然后我定义了一些模型如下

with K.tf.device('/gpu:0'):
    some keras model
Run Code Online (Sandbox Code Playgroud)

很明显它将使用gpu,并且我检查了它是否按预期使用了第一个gpu(索引为0)。

但是后来我把线移开了

with K.tf.device('/gpu:0'):
Run Code Online (Sandbox Code Playgroud)

并重新确定所有keras模型。我运行了代码,看起来仍然像是使用第一个gpu(索引为0)。

在我的ubuntu上,我使用nvidia-smi命令检查gpu的内存使用情况,然后在Windows上查看了进程管理器。

他们两个都使用gpu内存及其用法。

据我所知,如果我不将tensorflow保留到其模型中,则不会使用gpu。但是使用Keras似乎它会自动使用gpu ...是因为我运行了代码

tf_config = tf.ConfigProto( allow_soft_placement=True )
tf_config.gpu_options.allow_growth = True
sess = tf.Session(config=tf_config) 
keras.backend.set_session(sess)
Run Code Online (Sandbox Code Playgroud)

还是我想念其他原因吗?

gpu model keras tensorflow

3
推荐指数
1
解决办法
1749
查看次数

标签 统计

gpu ×1

keras ×1

model ×1

tensorflow ×1