Gentoo Archives: gentoo-user

From: Pandu Poluan <pandu@××××××.info>
To: gentoo-user@l.g.o
Subject: Re: [gentoo-user] emerge -j, make -j and make -l
Date: Mon, 28 Nov 2011 05:28:32
Message-Id: CAA2qdGX_yPj8Yaafk6VMAjV1QU5yDyJ3KC2up_wgG6iAMJtC0A@mail.gmail.com
In Reply to: Re: [gentoo-user] emerge -j, make -j and make -l by Michael Mol
1 On Nov 28, 2011 11:32 AM, "Michael Mol" <mikemol@×××××.com> wrote:
2 >
3
4 ----- >8 snip
5
6 >
7 > MAKEOPTS would be -j16, -l10. (Which actually goes up to about 12 or
8 > 13 based on that N*1.6 behavior)
9 >
10
11 ----- >8 snip
12
13 Just in case anyone wonders where the multiplier "1.6" comes from:
14
15 There had been a discussion somewhere (I forgot where exactly, sorry) about
16 load numbers. The final conclusion was that the ideal load number for
17 today's processors is 2*N, because with the out-of-order capability of
18 modern processors, two instructions can overlap in the pipeline, even
19 without hyperthreading.
20
21 Unfortunately, striving for 2*N will inadvertently result in short bursts
22 of > 2*N, and this potentially induce a stall, which will be very costly.
23 1.8*N gives a 10% margin for burst activities, while 1.6*N gives a 20%
24 margin.
25
26 Since emerging packages has a sudden increase in load when autoconfigure
27 finishes and make fires up all the parallel building, I figure 20% margin
28 will be better.
29
30 Of course, that's before @mikemol made me aware of MAKEOPTS -l, so I am now
31 tempted to raise the load-average to 1.8*N, letting make handle the bursts.
32
33 Rgds,

Replies

Subject Author
Re: [gentoo-user] emerge -j, make -j and make -l Neil Bothwick <neil@××××××××××.uk>
Re: [gentoo-user] emerge -j, make -j and make -l Michael Mol <mikemol@×××××.com>