如何让我的Luigi调度程序利用并行调度标志的多个内核?

时间:2016-03-25 06:02:02

标签: python multithreading parallel-processing luigi

我的luigi.cfg文件中有以下行(在所有节点,调度程序和工作程序上):

[core]
parallel-scheduling: true

然而,当我监控我的luigi调度程序的CPU利用率(大约有大约4000个任务的图表,处理来自~100个工作人员的请求)时,它只使用调度程序上的单个核心,单个{{1}线程经常达到100%的CPU利用率。我的理解是这个配置变量应该并行调度任务。

源代码建议此标志确实应该在调度程序上使用多个核心。在https://github.com/spotify/luigi/blob/master/luigi/interface.py#L194中,调用https://github.com/spotify/luigi/blob/master/luigi/worker.py#L498以并行检查任务的luigid状态。

为了让我的Luigi调度程序能够利用其所有内核,我缺少什么?

1 个答案:

答案 0 :(得分:4)

我只是意识到名字parallel-scheduling有点令人困惑。它不会影响调度程序。只有工人。当设置该选项时,工作人员将并行执行调度阶段。

截至今天,无法将多个核心用于中央调度程序。