Re: 32-bit vs. 64-bit x86 Speed

anton@mips.complang.tuwien.ac.at (Anton Ertl)
13 Apr 2007 01:31:10 -0400

          From comp.compilers

Related articles
32-bit vs. 64-bit x86 Speed jlforrest@berkeley.edu (Jon Forrest) (2007-04-11)
Re: 32-bit vs. 64-bit x86 Speed gah@ugcs.caltech.edu (glen herrmannsfeldt) (2007-04-13)
Re: 32-bit vs. 64-bit x86 Speed marcov@stack.nl (Marco van de Voort) (2007-04-13)
Re: 32-bit vs. 64-bit x86 Speed anton@mips.complang.tuwien.ac.at (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 ian.rogers@manchester.ac.uk (Ian Rogers) (2007-04-13)
Re: 32-bit vs. 64-bit x86 Speed meissner@the-meissners.org (Michael Meissner) (2007-04-13)
Re: 32-bit vs. 64-bit x86 Speed georgeps@xmission.com (George Peter Staplin) (2007-04-13)
Re: 32-bit vs. 64-bit x86 Speed tmk@netvision.net.il (Michael Tiomkin) (2007-04-13)
Re: 32-bit vs. 64-bit x86 Speed dot@dotat.at (Tony Finch) (2007-04-13)
[10 later articles]
| List of all articles for this month |

From: anton@mips.complang.tuwien.ac.at (Anton Ertl)
Newsgroups: comp.compilers,comp.arch
Followup-To: comp.arch
Date: 13 Apr 2007 01:31:10 -0400
Organization: Institut fuer Computersprachen, Technische Universitaet Wien
References: 07-04-031
Keywords: code, performance, architecture
Posted-Date: 13 Apr 2007 01:31:10 EDT

Jon Forrest <jlforrest@berkeley.edu> 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.
n
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+.


>When you
>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
>Linux?


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.


- anton
--
M. Anton Ertl
anton@mips.complang.tuwien.ac.at
http://www.complang.tuwien.ac.at/anton/


Post a followup to this message

Return to the comp.compilers page.
Search the comp.compilers archives again.