4
为什么人们在使用双核CPU时建议使用-j3选项进行制造?
在Gentoo Linux中,可以设置MAKEOPTS变量/etc/portage/make.conf以告知make构建软件包时应并行运行多少个作业。由于我有一个双核CPU,因此我天真地选择使用该-j2选项:每个核一个作业,因此两者都有事情要做。“问题”有很多参考,它们告诉拥有双核CPU的用户设置该-j3选项。他们之中有一些是: Gentoo手册 Gentoo维基 make.conf(5)手册页 例如,Gentoo手册中说: 一个不错的选择是系统中的CPU(或CPU内核)数量加一个,但是此指南并不总是很完美。 但是“ CPU + 1”规则的基本原理是什么?为什么要增加工作? make.conf(5)手册页甚至说: 建议的设置在CPU + 1和2 * CPU + 1之间。 我还阅读了make信息页的5.4节(并行执行)和make该-j选项的手册页说明,但似乎那里没有答案。