1 |
Andrew Gaffney <agaffney@g.o> posted 488B9D84.4050209@g.o, |
2 |
excerpted below, on Sat, 26 Jul 2008 16:56:20 -0500: |
3 |
|
4 |
> Duncan wrote: |
5 |
>> "--jobs=10 --keep-going --load-average=15" |
6 |
> |
7 |
> For a dual-dual-core setup, a load average of 4.0 is "fully loaded". |
8 |
> Anything higher than that and you're just causing jobs to queue up |
9 |
> unnecessarily and your system to "thrash". |
10 |
|
11 |
Not really. The highest system load-average possible is the one-minute |
12 |
load-average, right? From my experience there are times when it just |
13 |
sits there doing nothing. No I/O, CPU graphs low, but load average still |
14 |
high so it won't start any more jobs. |
15 |
|
16 |
I see gains at times up to ~4 jobs per core (tho it's arguably possible |
17 |
they're counteracted above say, 3/core, by extra shuffling, I won't argue |
18 |
that and haven't checked that closely, I just don't like to see blank |
19 |
spots in the CPU utilization that aren't accounted for by I/O). I just |
20 |
boosted it to five so I could do the below.... |
21 |
|
22 |
>> have MAKEOPTS="-j -l20" so it's not going to be low all the time). |
23 |
> |
24 |
> Same thing here. Also, why would you specify different --load-average |
25 |
> values in these two places? |
26 |
|
27 |
The idea here is to create a differential, so it doesn't start new builds |
28 |
when a single build can adequately parallelize. I'm building in tmpfs, |
29 |
which is (limited quantity, 8 gigs, but...) memory, and if a single |
30 |
emerge is keeping the system sufficiently busy, no reason to add a new |
31 |
one to the pile. However, when a single merge isn't keeping the system |
32 |
busy, /then/ add more. The differential at least in theory should favour |
33 |
single packages when they can provide sufficient parallelization. |
34 |
|
35 |
-- |
36 |
Duncan - List replies preferred. No HTML msgs. |
37 |
"Every nonfree program has a lord, a master -- |
38 |
and if you use the program, he is your master." Richard Stallman |