1 |
On Tue, Oct 10, 2006 at 05:27:07PM +0200, Marius Mauch wrote: |
2 |
> On Tue, 10 Oct 2006 00:04:57 -0700 |
3 |
> Brian Harring <ferringb@×××××.com> wrote: |
4 |
> |
5 |
> > I might be daft (likely), but why not just introduce a var indicating |
6 |
> > max parallelization instead? Tweak portage to push that setting into |
7 |
> > MAKEOPTS="${MAKEOPTS+${MAKEOPTS} } -j${PARALLELIZATION}". |
8 |
> > |
9 |
> > Might sound daft, but -j is hardcoded parallelization; if you're |
10 |
> > trying to run 3 build processes, the original var of -j isn't all |
11 |
> > that useful, nor will the hardcoded -j# var set for 3 package build |
12 |
> > processes be useful if you're doing a single build. |
13 |
> > |
14 |
> > Depending on number of seperate package build processes possible, the |
15 |
> > # of build processes allocated per build process needs to vary |
16 |
> > (essentially). |
17 |
> |
18 |
> Seems useful as *alternative* to the low level vars, but shouldn't |
19 |
> replace them (so if the low level vars are set they override the global |
20 |
> setting). |
21 |
|
22 |
Well.. heres the failing. |
23 |
|
24 |
Say I've got a 32x system; I screw up and have -j32 in my makeopts, |
25 |
and PARALLELIZATION=32. |
26 |
|
27 |
Now either the pkg manager needs to understand MAKEOPTS (beyond just |
28 |
adding a simple string to it), and check for -j*, or it's going to |
29 |
wind up allowing 32 seperate build jobs, each with -j32. |
30 |
|
31 |
Personally, I *really* would love to see that loadavg (that would be |
32 |
one nifty screenshot). |
33 |
|
34 |
Allowing MAKEOPTS to override the alloted build slices the manager |
35 |
hands it totally defeats the purpose of moving the parallelization |
36 |
factor into a seperate var; the intention is to give the manager a |
37 |
max, and allow it to allocate as it needs depending on the # of build |
38 |
jobs that can be ran at that point. |
39 |
|
40 |
Theres no point in doing this if the hole it's trying to plug is |
41 |
explicitly allowed; at best you wind up with two different vars you |
42 |
have to keep in sync, at worst, you wind up with the 32*32 exapmle |
43 |
from above. |
44 |
|
45 |
Response of course is "don't have -j* in your MAKEOPTS"; well dar, |
46 |
thus why allow it? ;) |
47 |
|
48 |
~harring |