|32-bit vs. 64-bit x86 Speed email@example.com (Jon Forrest) (2007-04-11)|
|Re: 32-bit vs. 64-bit x86 Speed firstname.lastname@example.org (glen herrmannsfeldt) (2007-04-13)|
|Re: 32-bit vs. 64-bit x86 Speed email@example.com (Marco van de Voort) (2007-04-13)|
|Re: 32-bit vs. 64-bit x86 Speed firstname.lastname@example.org (2007-04-13)|
|Re: 32-bit vs. 64-bit x86 Speed DrDiettrich1@aol.com (Hans-Peter Diettrich) (2007-04-13)|
|Re: 32-bit vs. 64-bit x86 Speed email@example.com (Ian Rogers) (2007-04-13)|
|Re: 32-bit vs. 64-bit x86 Speed firstname.lastname@example.org (Michael Meissner) (2007-04-13)|
|Re: 32-bit vs. 64-bit x86 Speed email@example.com (George Peter Staplin) (2007-04-13)|
|Re: 32-bit vs. 64-bit x86 Speed firstname.lastname@example.org (Michael Tiomkin) (2007-04-13)|
|Re: 32-bit vs. 64-bit x86 Speed email@example.com (Tony Finch) (2007-04-13)|
|[10 later articles]|
|From:||firstname.lastname@example.org (Anton Ertl)|
|Date:||13 Apr 2007 01:31:10 -0400|
|Organization:||Institut fuer Computersprachen, Technische Universitaet Wien|
|Keywords:||code, performance, architecture|
|Posted-Date:||13 Apr 2007 01:31:10 EDT|
Jon Forrest <email@example.com> writes:
>For apps that
>don't need the extra address space, the benefits of the additional
>registers in x86-64 are nearly undone by the need to move more bits
>around, so 32-bit and 64-bit modes are pretty much a push.
That general statement is nonsense. The performance effect depends on
the application. If an application is memory-bandwidth-limited and
the data it gets from memory has a significant proportion of pointers,
then it will suffer if it is compiled as 64-bit application.
Likewise, if the larger memory requirements of the 64-bit version
raise the cache miss rate significantly. However, most applications
fit nicely into the cache even in the 64-bit version, and they profit
from the additional registers and other features (e.g., guaranteed
presence of SSE2) of AMD64.
E.g., our LaTeX benchmark is about 10% faster in the 64-bit version
than in the 32-bit version on a Core 2 Duo
(http://www.complang.tuwien.ac.at/franz/latex-bench). The best
speedup I have seen is for oggenc, where the 64-bit version is faster
by a factor of about 1.4.
OTOH, the 32-bit version of a memory-intensive subtype encoding
program is faster by a factor of 1.27 on a Xeon 5160 and by a factor
of 1.19 on an Athlon 64 X2 4400+.
>add the additional difficulty of getting 64-bit drivers and what-not,
>I don't think it's worth messing with 64-bit computing for apps that
>don't need the address space."
>Let's say you're a Linux user who never needs to run programs that
>don't fit in 32-bits. Would you run a 32-bit or a 64-bit version of
I run the 64-bit version. I have not noticed any additional
difficulty; the drivers come with the kernel. The only application I
use where the 32-bit version is seriously limited compared to the
64-bit version is Emacs (editing big files is a problem).
This seems to be more an architecture question, so I have directed the
followups to comp.arch.
M. Anton Ertl
Return to the
Search the comp.compilers archives again.