En Gentoo Linux, es posible configurar la MAKEOPTS
variable /etc/portage/make.conf
para indicar make
cuántos trabajos debe ejecutar en paralelo al crear paquetes. Como tengo una CPU de doble núcleo, ingenuamente elegí usar la -j2
opción: un trabajo por núcleo, por lo que ambos tienen algo que hacer. El "problema" es que hay muchas referencias que le dicen a los usuarios que tienen una CPU de doble núcleo que establezcan la -j3
opción. Algunos de ellos son:
- Manual de Gentoo
- Wiki de Gentoo
- página del comando man make.conf (5)
Por ejemplo, el manual de Gentoo dice:
Una buena opción es la cantidad de CPU (o núcleos de CPU) en su sistema más uno, pero esta guía no siempre es perfecta.
Pero, ¿cuál es la justificación de la regla "CPU + 1"? ¿Por qué el trabajo extra?
La página del comando man make.conf (5) incluso dice:
La configuración sugerida es entre CPUs + 1 y 2 * CPUs + 1.
También leí la sección 5.4 (Ejecución paralela) en la make
página de información y la make
explicación de la página del manual para la -j
opción, pero parece que no hay respuestas allí.