如何在我的代码之外设置tensorflow gpu内存分配?

时间:2017-11-15 07:25:32

标签: apache-spark memory tensorflow gpu

我在火花上使用tensorflow。 我的tensorflow几乎分配了所有GPU内存(10GB或12GB)。 只有'import tensorflow'占用所有内存 我知道如何在代码中配置gpu内存分数。我知道的方法是添加下面提到的代码

import tensorflow as tf
gpu_options = tf.GPUOptions(per_process_gpu_memory_fraction=0.2)
sess = tf.Session(config=tf.ConfigProto(gpu_options=gpu_options))

但是......关于火花,即使我在代码中添加了这个配置,它也无法应用于其他GPU机器。 所以,我想知道如何在代码之外配置或设置gpu分数,这意味着通过tensorflow本身..

1 个答案:

答案 0 :(得分:0)

在tensorflow / tensorflow / core / common_runtime / gpu / gpu_device.cc 改变

if (config_memory_fraction == 0) {
allocated_memory = available_memory;

if (config_memory_fraction == 0) {
allocated_memory = total_memory * 0.2(fraction u want to use);

之后,由bazel建造它。

有点硬编码。 如果你修改源代码,你可以动态分配gpu内存