Gentoo Archives: gentoo-user

From: "J. Roeleveld" <joost@××××××××.org>
To: gentoo-user@l.g.o
Subject: Re: [gentoo-user] Re: Simultaneously emerging multiple packages with same dependencies
Date: Thu, 27 Jan 2011 22:16:06
Message-Id: 201101272314.21150.joost@antarean.org
In Reply to: Re: [gentoo-user] Re: Simultaneously emerging multiple packages with same dependencies by YoYo Siska
1 On Thursday 27 January 2011 22:06:30 YoYo Siska wrote:
2 > On Thu, Jan 27, 2011 at 08:18:34PM +0100, J. Roeleveld wrote:
3 > > On Thursday 27 January 2011 19:56:23 Allan Gottlieb wrote:
4 > > > On Thu, Jan 27 2011, Neil Bothwick wrote:
5 > > > > On Thu, 27 Jan 2011 17:09:27 +0200, Nikos Chantziaras wrote:
6 > > > >> > So on a 20 package world update, only 19 are faster while the 20th
7 > > > >> > runs at the same speed? Where's the loss there? Even if the last
8 > > > >> > were slower, it would be worth it.
9 > > > >>
10 > > > >> Given the amount of time unpack/configure/install of most packages
11 > > > >> needs (very short), my observation is that it would not be worth it.
12 > > > >
13 > > > > Even if that were true, how much time would you have to save to
14 > > > > justify adding -j 2 to EMERGE_DEFAULTS in make.conf?
15 > > > >
16 > > > > But it's not true, large packages spend a lot of time on these phases
17 > > > > of the install.
18 > > >
19 > > > OK I'm convinced since I know that those phases do take noticeable
20 > > > time.
21 > > >
22 > > > I have a "4" processor i7 model 620 (2 cores, doubled for
23 > > > hyperthreading) and have set MAKEOPTS="-j5".
24 > > > If I add -jobs=2 to EMERGE_DEFAULT_OPTS, should I lower
25 > > > MAKEOPTS to 3 (to 4)?
26 > > >
27 > > > thanks,
28 > > > allan
29 > >
30 > > You could, as if you leave it at -j5, you can end up with 2 * 5 = 10
31 > > processed, eg: similar as if running with MAKEOPTS="-j10"
32 > >
33 > > I think the option that YoYo came with is a good compromise:
34 > > # MAKEOPTS="-j -l5" emerge -j --load-average=5
35 > >
36 > > Next time I am doing a big upgrade, I'm going to test that to see how it
37 > > behaves.
38 >
39 > I was just building the whole system for my notebook in a chroot on my
40 > desktop machine ( I use FEATURES=buildpkg to build binary packages in
41 > the chroot on a fast desktop machine and then upgrade the notebook with
42 > the binary packages) and I used exactly that (-j -l5 for bot make and
43 > emerge). Can't say if it really is better or not ;) but most of the time
44 > all four cores were busy, though sometimes I saw even 6 or 7 gcc-s
45 > simultaneously in top ;)
46 > emerge was running 3 to 4 jobs most of the time, sometimes dropping to 1
47 > and once I saw it emerging about 10 parallel packages ;) (mostly small
48 > things, which I guess were doing a lot of
49 > unpacking/configuring/installing but almost nothing of compiling ;)
50 >
51 >
52 > btw, just now I got this error from dev-lang/v8:
53 >
54 > SCons error: option -j: invalid integer value: '-l4'
55 >
56 > seems scons honors MAKEOPTS, but doesn't understand the "loadaverage"
57 > version (-j -l4)
58 >
59 >
60 > yoyo
61
62 Doing an update now, just had this:
63 ***
64 top - 23:09:47 up 15:12, 4 users, load average: 5.92, 3.62, 1.87
65 Tasks: 321 total, 35 running, 285 sleeping, 0 stopped, 1 zombie
66 Cpu(s): 89.5%us, 10.5%sy, 0.0%ni, 0.0%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st
67 Mem: 8114712k total, 5266456k used, 2848256k free, 162600k buffers
68 Swap: 12582904k total, 0k used, 12582904k free, 2812008k cached
69
70 PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
71 24196 root 20 0 63756 39m 6932 R 15 0.5 0:00.45 cc1plus
72 24092 root 20 0 65532 40m 6896 R 15 0.5 0:00.64 cc1plus
73 24158 root 20 0 60572 36m 6832 R 15 0.5 0:00.50 cc1plus
74 24187 root 20 0 61296 36m 6904 R 15 0.5 0:00.45 cc1plus
75 24202 root 20 0 59404 34m 6832 R 14 0.4 0:00.43 cc1plus
76 24096 root 20 0 61272 36m 6868 R 14 0.5 0:00.56 cc1plus
77 24245 root 20 0 43364 20m 6372 R 12 0.3 0:00.36 cc1
78 24240 root 20 0 41636 18m 6340 R 12 0.2 0:00.35 cc1
79 24271 root 20 0 42776 19m 6296 R 11 0.2 0:00.34 cc1
80 24281 root 20 0 41132 17m 6308 R 8 0.2 0:00.25 cc1
81 24302 root 20 0 40996 17m 6268 R 8 0.2 0:00.24 cc1
82 24320 root 20 0 42356 18m 6192 R 8 0.2 0:00.23 cc1
83 24304 root 20 0 42000 18m 6832 R 7 0.2 0:00.22 cc1plus
84 24331 root 20 0 52232 27m 6388 R 7 0.3 0:00.22 cc1plus
85 24330 root 20 0 54068 27m 4016 R 6 0.3 0:00.19 cc1plus
86 24338 root 20 0 47924 23m 6160 R 6 0.3 0:00.19 cc1plus
87 24329 root 20 0 45212 20m 5852 R 6 0.3 0:00.18 cc1
88 24335 root 20 0 51212 26m 6300 R 6 0.3 0:00.18 cc1plus
89 24360 root 20 0 37316 14m 6240 R 6 0.2 0:00.17 cc1
90 24344 root 20 0 48028 24m 6432 R 5 0.3 0:00.16 cc1plus
91 24399 root 20 0 47652 20m 3532 R 4 0.3 0:00.13 cc1plus
92 24377 root 20 0 45552 18m 3536 R 3 0.2 0:00.10 cc1plus
93 24380 root 20 0 45536 18m 3528 R 3 0.2 0:00.10 cc1plus
94 4574 root 20 0 170m 62m 15m S 3 0.8 8:09.14 X
95 24413 root 20 0 38308 9m 2620 R 1 0.1 0:00.04 cc1plus
96 11522 joost 20 0 93144 36m 13m S 1 0.5 1:51.05 skype
97 24417 root 20 0 36456 8628 2620 R 1 0.1 0:00.03 cc1plus
98 24424 root 20 0 34724 8588 2908 R 1 0.1 0:00.03 cc1
99 24426 root 20 0 35752 9088 2928 R 1 0.1 0:00.03 cc1
100 11573 joost 20 0 849m 403m 31m S 1 5.1 3:07.35 firefox
101 13388 root 20 0 30216 5144 1452 S 1 0.1 0:00.89 configure
102 19920 root 20 0 20696 2316 1336 S 1 0.0 0:00.38 sh
103 11490 joost 20 0 453m 46m 31m S 0 0.6 0:04.61 kopete
104 12922 root 20 0 205m 102m 3788 S 0 1.3 0:21.50 emerge
105 14463 joost 20 0 449m 40m 18m R 0 0.5 0:20.04 konsole
106 18085 joost 20 0 38456 2604 1724 R 0 0.0 0:00.88 top
107 22015 root 20 0 21732 3332 908 S 0 0.0 0:00.12 make
108 24418 root 20 0 34708 7056 2620 R 0 0.1 0:00.01 cc1plus
109 24429 root 20 0 34680 7048 2616 R 0 0.1 0:00.01 cc1plus
110 ***
111
112 Looks nice :)
113
114 --
115 Joost