bug-make
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

-j/-l : minimum of jobs running under max-load with auto = cpu+1 default


From: Garreau\, Alexandre
Subject: -j/-l : minimum of jobs running under max-load with auto = cpu+1 default
Date: Mon, 21 May 2018 08:36:01 +0200
User-agent: Gnus (5.13), GNU Emacs 25.1.1 (x86_64-pc-linux-gnu)

Because parallelism is not enough generalized and people don’t seek it
enough (make is a good example), I long thought it would be a good thing
to have a way to have parallelism activated more easily (or even by
default) in make (or manually by automake or anything of this kind),
until now I think it is essentially used by people who read on
archlinux/gentoo/lfs manuals that “-j <cpu cores>+1” is the optimum.

Then I discovered --load-average, and I’m asking myself wether the
optimum is -j n+1, -l 1.0, or -l n or n+1?

For whatever is the actual optimum, wouldn’t be a useful option for
portability that make go search the core number in /proc/cpuinfo when
available, or anything more lowlevel, simple to parse or portable if
possible, and use that as a default if instead of a number the text
“auto” is given as an argument to -j or -l?

I was also wondering: is this constant number of jobs, with additionally
-l 1.0 the actual optimum, or would it be better if it was the minimal
number of jobs running while it is below this threshold, or the maximal
one, like it is currently? If the former, would it be worth to change
the current behavior?

I think a such default (and pre-automated) way to call make could maybe
incitate people to try using parallelism capabilities of GNU make in
automatic build tools so then it’s more used, then more tested, and
parallel-compatible makefiles become more common, if they’re not enough
already.

Sorry for verbosity, I hope a such handencement-request is relevant
enough for your time, so thank you in advance!



reply via email to

[Prev in Thread] Current Thread [Next in Thread]