当使用tensorflow分布式时,当服务器连接()

2024-09-27 19:19:46 发布

您现在位置:Python中文网/ 问答频道 /正文

我在Ubuntu的四路GTX1070上运行了这个模型,但是当我启动运行这个程序的终端时,当我键入python时。。。py--job_name=“ps”--task_index=0,四个gpu look子层已满,并且我没有打开新的终端来运行worker,这是什么问题?你知道吗


Tags: namepy模型程序终端taskindex键入
2条回答

最近刚遇到这个问题,可能是因为在代码中使用了server = tf.train.Server(...),没有传递config参数, 因此tfdefault占用了所有GPU的所有内存,因此没有剩余的内存用于worker任务。你知道吗

解决方案可能是:

gpu_options = tf.GPUOptions(per_process_gpu_memory_fraction = 0.5)
config = tf.ConfigProto(gpu_options = gpu_options)
server = tf.train.Server(..., config=config)

不管怎样,这对我有用,希望对你有帮助。你知道吗

这就是张量流的工作原理。当它开始使用GPU时,它几乎分配了所有的内存。你知道吗

您可以尝试的一件小事是限制GPU分配的部分:

gpu_options = tf.GPUOptions(per_process_gpu_memory_fraction = 0.5)
sess = tf.Session(config = tf.ConfigProto(gpu_options = gpu_options))

但它控制所有GPU内存,因此您无法确定内存将如何分割(如果将0.25设置为1 GPU上的所有内存,将0设置为其他GPU或其他配置上的所有内存)。你知道吗

相关问题 更多 >

    热门问题