我使用python并行处理器在Linux机器上提交了多个作业:(从多处理导入的池)
parallel = Pool(processes = 10)
我有大约 4000 个工作 .. 最初几天它正在使用所有处理器,但它开始减少进程数量。目前,我还剩下大约 300 个工作,并且使用了 4 个进程。它没有使用完整的 10 个处理器
我的猜测是 python 最初将作业分配给所有处理器,并且一些处理器提前完成了它们的工作,现在处于空闲状态。
这是正确的假设吗?有没有办法解决这个问题,所以所有处理器都被利用到最后以更快地完成运行?
def run_parallel(self, my_jobs):
#give the number of processors
parallel = Pool(processes = 10)
#run jobs in parallel
parallel.map(run_jobs, my_jobs)
return