Многопроцессный Python / Tensorflow, работающий последовательно, а не параллельно - PullRequest
0 голосов
/ 06 декабря 2018

Я пытался одновременно тренировать два графика из одного и того же сценария.Я пробовал следующее:

g = tf.Graph()
with g.as_default():
    # define a graph, which is used both in the real and imaginary cases

def train(isReal):
    if isReal:
        # set vars unique to real case
    else:
        # set vars unique to imaginary case

    with tf.Session(config=config, graph=g) as sess:
        # train the graph
    ...

if __name__ == '__main__':
    proc_test_real = Process(target=train(isReal=True), name='real_train_proc')
    proc_test_imag = Process(target=train(isReal=False), name='imag_train_proc')

    proc_test_real.start()
    proc_test_imag.start()

    proc_test_real.join()
    proc_test_imag.join()

По какой-то причине proc_test_real и proc_test_imag выполняются последовательно, а не параллельно.

Оба процесса используют одно и то же определение графа, но я не думаю,это должно повлиять на их способность работать параллельно ... потому что у каждого процесса есть своя копия всех переменных, верно?

Я новичок в этом, поэтому любые советы будут оценены.Заранее спасибо.

...