我怎样才能让我的 Luigi 调度程序利用带有并行调度标志的多个内核?
How can I get my Luigi scheduler to utilize multiple cores with the parallel-scheduling flag?
我的 luigi.cfg
文件中有以下行(在所有节点、调度程序和工作程序上):
[core]
parallel-scheduling: true
然而,当我监控我的 luigi 调度程序的 CPU 利用率时(有大约 4000 个任务的图表,处理来自 100 个工作人员的请求),它只使用调度程序上的一个核心,与单个 luigid
线程经常达到 100% CPU 利用率。我的理解是这个配置变量应该并行任务的调度。
消息来源建议这个标志确实应该在调度程序上使用多个内核。在 https://github.com/spotify/luigi/blob/master/luigi/interface.py#L194, a call is made to https://github.com/spotify/luigi/blob/master/luigi/worker.py#L498 中检查并行任务的 .complete()
状态。
要让我的 Luigi 调度程序利用其所有内核,我缺少什么?
我刚刚意识到 parallel-scheduling
这个名字有点令人困惑。它不会影响调度程序。只有工人。设置该选项后,工作人员将并行执行调度阶段。
截至目前,中央调度程序无法使用多核。
我的 luigi.cfg
文件中有以下行(在所有节点、调度程序和工作程序上):
[core]
parallel-scheduling: true
然而,当我监控我的 luigi 调度程序的 CPU 利用率时(有大约 4000 个任务的图表,处理来自 100 个工作人员的请求),它只使用调度程序上的一个核心,与单个 luigid
线程经常达到 100% CPU 利用率。我的理解是这个配置变量应该并行任务的调度。
消息来源建议这个标志确实应该在调度程序上使用多个内核。在 https://github.com/spotify/luigi/blob/master/luigi/interface.py#L194, a call is made to https://github.com/spotify/luigi/blob/master/luigi/worker.py#L498 中检查并行任务的 .complete()
状态。
要让我的 Luigi 调度程序利用其所有内核,我缺少什么?
我刚刚意识到 parallel-scheduling
这个名字有点令人困惑。它不会影响调度程序。只有工人。设置该选项后,工作人员将并行执行调度阶段。
截至目前,中央调度程序无法使用多核。