1 |
On Mon, Jul 30, 2012 at 10:39 PM, Michael Mol <mikemol@×××××.com> wrote: |
2 |
> On Mon, Jul 30, 2012 at 10:53 PM, Nikos Chantziaras <realnc@×××××.com> wrote: |
3 |
>> On 30/07/12 19:40, Alecks Gates wrote: |
4 |
>>> |
5 |
>>> What are the benefits and drawbacks of using the x32 ABI |
6 |
>> |
7 |
>> |
8 |
>> Benefits: An x32 application is limited to a 32-bit address range but runs |
9 |
>> in 64-bit CPU mode. The intent is to not waste any memory, but be as fast |
10 |
>> as any other 64-bit application. |
11 |
>> |
12 |
>> Drawbacks: Don't expect to get a fully working system. Many applications |
13 |
>> will either not build, or break at runtime when compiled in this mode. |
14 |
>> Also, some application will run slower because they come with hand coded |
15 |
>> assembly routines for x86 and x86-64, but not for x32. That means that |
16 |
>> generic C code paths will be used for x32, and they're slower compared to |
17 |
>> the hand optimized assembly routines. |
18 |
>> |
19 |
>> Also note that x32 is not compatible with 32-bit applications. If you build |
20 |
>> an x86-64/x32 system, you lose the x86/x86-64 multilib capability unless |
21 |
>> there's a way to have a three-way multilib Gentoo with x86/x32/x86-64. |
22 |
> |
23 |
> More specifically, x32 is not compatible with x86 (what we used to |
24 |
> call "32-bit applications on x86"...but since that's ambiguous, it's |
25 |
> better just to say "x86"). In practice, this means you won't be able |
26 |
> to link x32 ELF binaries against x86 ELF binaries. |
27 |
> |
28 |
> You'll almost certainly be able to run x86/x32 multilib, since that's |
29 |
> at least part of the argument on behalf of it. But I have no idea when |
30 |
> that'll get set up. When it does, you'll probably be able to run |
31 |
> x86-64/x32/x86 multilib...but then you're compiling apps three ways, |
32 |
> and _that_ seems like it'll be excessive. |
33 |
> |
34 |
> On a separate note, I generally recommend amd64 to people who have |
35 |
> processors which can handle it, even if they have as little as 1GB of |
36 |
> RAM. My reasoning is that having the large address space should reduce |
37 |
> memory fragmentation, which should in turn reduce apparent memory |
38 |
> bloat in long-lived applications. |
39 |
> |
40 |
> |
41 |
> |
42 |
> |
43 |
> -- |
44 |
> :wq |
45 |
> |
46 |
|
47 |
I have just started the process of installing Gentoo from scratch on |
48 |
on my 2GB RAM machine, and am going to fully compare the two, probably |
49 |
using Phoronix Test Suite unless someone here can give me some other |
50 |
recommendations -- I don't do benchmarking and I like how you can do |
51 |
the comparisons with OpenBenchmarking.org. Hopefully Phornoix Test |
52 |
Suite runs properly, I suppose I'll have to install php and the like. |
53 |
|
54 |
Anyway, I don't think anyone addressed this. What would be the |
55 |
best/cleanest/quickest way to switch from x86-64 to x32 ABI? I'm |
56 |
planning on just backing up the partition once I've got the x86-64 |
57 |
ready to go and doing a new from scratch install with x32... but I'd |
58 |
love to know about an easier way. |
59 |
|
60 |
Alecks |