我想并行运行一个函数,并等待所有并行节点完成,使用 joblib。就像在示例中一样:
from math import sqrt
from joblib import Parallel, delayed
Parallel(n_jobs=2)(delayed(sqrt)(i ** 2) for i in range(10))
但是,我希望在单个进度条中看到执行,就像 tqdm 一样,显示已经完成了多少作业。
你会怎么做?
原文由 Dror Hilman 发布,翻译遵循 CC BY-SA 4.0 许可协议
如果您的问题由许多部分组成,您可以将这些部分分成
k
子组,并行运行每个子组并更新其间的进度条,导致k
更新进度。文档中的以下示例对此进行了演示。
https://pythonhosted.org/joblib/parallel.html#reusing-a-pool-of-workers