我希望能够使用多处理库同时从多个进程加载现有的tensorflow网络,以便同时在不同的内核上进行推理。
Pool.map
这基本上是我想要传递给map
以平行推断的函数。
上述功能仅适用于predictions = list(map(spawn_process, range(10)))
predictions = [spawn_process(x) for x in range(10)]
,看起来像这样
meta_graph.restore
上述两项工作均符合预期。
但是当我尝试这样做时,它会失败,并且每个进程都会在p = multiprocess.Pool(4)
predictions = p.map(spawn_process, range(10))
p.close()
p.join()
行之前挂起而且我很难过。
meta_graph.restore
我不知道为什么这不适用于tensorflow,当我尝试平行进行任何类型的计算时,这通常对我有用。它在{{1}}行之前停止,所有进程都挂在那里。