Gentoo Archives: gentoo-portage-dev

From: Duncan <1i5t5.duncan@×××.net>
To: gentoo-portage-dev@l.g.o
Subject: [gentoo-portage-dev] Re: portage-2.2-rc3 parallel merges quit being parallel
Date: Sat, 26 Jul 2008 23:31:27
Message-Id: pan.2008.07.26.23.30.59@cox.net
In Reply to: Re: [gentoo-portage-dev] portage-2.2-rc3 parallel merges quit being parallel by Andrew Gaffney
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