1 |
On Thu, Feb 23, 2012 at 2:55 PM, Nikos Chantziaras <realnc@×××××.de> wrote: |
2 |
> On 23/02/12 21:42, Michael Mol wrote: |
3 |
>> |
4 |
>> On Thu, Feb 23, 2012 at 2:36 PM, Nikos Chantziaras<realnc@×××××.de> |
5 |
>> wrote: |
6 |
>>> |
7 |
>>> On 23/02/12 12:44, Mick wrote: |
8 |
>>>> |
9 |
>>>> The irony is that older boxen which would benefit most from building |
10 |
>>>> from |
11 |
>>>> source are constrained in resources to achieve this and have to resort |
12 |
>>>> to |
13 |
>>>> installing bin packages. |
14 |
>>> |
15 |
>>> |
16 |
>>> I doubt that the bin package will be slower than the one compiled from |
17 |
>>> source. I predict the reverse, in fact. The bin package will perform |
18 |
>>> better. |
19 |
>> |
20 |
>> |
21 |
>> That seems a strange prediction. What drives that hunch? |
22 |
> |
23 |
> |
24 |
> The PGO optimized build that Mozilla is shipping. You can also build with |
25 |
> PGO from source, but that means building FF *twice* in a row (by enabling |
26 |
> the "pgo" USE flag). I doubt that with the old laptop anyone is building FF |
27 |
> twice with PGO, and that means that the -bin package should be faster. |
28 |
> |
29 |
> Furthermore, FF is build using its own CFLAGS. They are the same in the |
30 |
> source build as well as in the -bin package. The only difference is |
31 |
> probably the -march option. And that doesn't make much difference to begin |
32 |
> with (after -march=i686, gains are very minimal). |
33 |
|
34 |
I knew and forgot about PGO, but I didn't realize there was a USE flag |
35 |
for it. Neat. I'll be enabling that. |
36 |
|
37 |
I disagree with the idea that keeping things down around -march=i686 |
38 |
provides only minimal gains. SSE and SSE2 instructions carry a big |
39 |
benefit for numerical operations, especially those which can be |
40 |
parallelized, but not enough to justify batching into a GPU. AVX will |
41 |
be adding operations which allow more useful and flexible use of |
42 |
registers. Simply bumping up to x86-64 from simple x86 doubles your |
43 |
GPRs, which gives the compiler all kinds of room to work with. |
44 |
|
45 |
If the combination of those things doesn't significantly benefit a |
46 |
program written in C or C++, then I suspect there's something |
47 |
dreadfully wrong with the architecture of that codebase. |
48 |
|
49 |
|
50 |
-- |
51 |
:wq |