1 |
On 2020-06-21 11:53, Dr Rainer Woitok wrote: |
2 |
> Greetings, |
3 |
> |
4 |
> is there any difference between running "emerge --jobs=1 ..." and runn- |
5 |
> ing "MAKEOPTS=-j1 emerge ..."? |
6 |
|
7 |
--jobs=1 starts one package build at a time, possibly using many parallel |
8 |
processes - depending on MAKEOPTS and how the build works. |
9 |
|
10 |
MAKEOPTS sets the number of parallel processes within one package build. |
11 |
|
12 |
They are complementary, and you can combine them. However frequently |
13 |
a series of packages have dependencies (a before b before c), so starting |
14 |
multiple --jobs may not have any effect. Or it may, e.g. in the case of |
15 |
rebuilds or independent packages that often only use one process to build, |
16 |
e.g. perl modules or something smaller. --jobs can really make a difference |
17 |
since otherwise you would suffer from portage/script/shell overhead relative |
18 |
to the actual work being performed. |
19 |
|
20 |
make offers the -l parameter that constrains the number of processes by |
21 |
load, and adjusts them accordingly. As an example, with 8 cores you could |
22 |
use MAKEOPTS="-j8 -l8" to enable inter-ebuild parallelism and a max. load |
23 |
for one package, then start several --jobs to build independent packages |
24 |
without waiting for each other. |
25 |
|
26 |
Hope this helps. |
27 |
|
28 |
-h |