如何在单个gpu上并行训练两个tensorflow脚本?

时间:2017-07-14 11:56:05

标签: tensorflow parallel-processing gpu multiple-instances

我在单GPU上运行2个tensorflow脚本时遇到错误。 我尝试过增长和GPU内存分配步骤,第二个脚本执行时没有问题,而第二个脚本因ResourceExhaustedError,Graph会话创建错误而崩溃。

请帮助。

2 个答案:

答案 0 :(得分:1)

首先单独运行每个程序几次迭代,然后检查nvidia-smi dmon以查看该程序实际需要多少内存。然后根据您从config.gpu_options.per_process_gpu_memory_fraction = ...获知的内存信息在会话配置中设置nvidia-smi dmon。如果两者所需的内存大于您可用的内存,那么您将遇到此资源耗尽错误。

答案 1 :(得分:0)

您应该执行以下操作:

# don't allow cases where a single script takes up all VRAM
# this way we can try to run several scripts at the same time
config = tf.ConfigProto()
config.gpu_options.allow_growth = True

with tf.Session(config=config) as sess:
    ...

如果您知道如何在一个脚本中并行训练两个图形,请告诉我。