Trouble with parallel make not always starting another job when one finishes我正在使用具有四个逻辑CPS(如果需要的话,两个双核CPU)的系统。 我正在使用make来并行化12个琐碎的可并行化任务,并通过cron进行。 调用看起来像:
我遇到的麻烦是,有时一个任务会完成,但是即使不应由平均负载限制器停止,下一个任务也不会启动。 每个目标大约需要四个小时才能完成,我想知道这是否可能是问题的一部分。 编辑:有时目标确实失败,但是我使用-k选项使其余的make仍然运行。 我还没有注意到与作业失败和下一个作业没有开始相关的任何信息。 我会放弃'-l' 如果您计划运行的系统是此构建,我认为-j 4可以满足您的要求。 根据我的记忆,如果还有其他运行(crond?),则平均负载可能会超过4。 GNU make ref @BCS 我有99.9%的把握确定-l不会引起问题,因为我可以观察机器上的平均负载,并且平均负载下降到大约3,有时甚至低至一个(!),而无需开始下一个工作。 是否认为目标之一失败了? 如果是这样,它将在正在运行的作业完成后停止make。 即使发生错误,也可以使用-k使其继续。 |