Python:多处理映射需要更长时间才能完成最后几个进程

时间:2016-02-05 22:06:45

标签: python memory multiprocessing python-multiprocessing

在Python中,我尝试运行150-200个进程。我在阵列中有这150个东西,我将这个阵列分成多个10个元素的数组。

现在,我运行一个多处理映射,一次有10个元素。一旦完成所有10个,我们将进入下一个10,依此类推。

现在,问题是:第九个和第十个过程几乎总是慢于其他过程。这有什么理由吗?我不是最有效的方式吗?

**我无法为此分享代码。那么你对于为什么会发生这种情况有任何想法吗?

提前致谢。

1 个答案:

答案 0 :(得分:0)

这是由于Pool.map在工作人员之间分配数据的方式。使用chunksize=1作为参数,即map(...,..., chunksize=1)

类似的问题解释如下: python multiprocessing map mishandling of last processes