[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Intel Core2Duo (T7400)

On Wed, Nov 07, 2007 at 02:38:27PM +0100, Jonas Meurer wrote:
> Ok, the fact that pointers and long/double variables on 64bit systems do
> take twice as much RAM as on ia32 systems sounds reasonable. Thanks for
> information.

Pointers do.  long's happen to be defined as 64bit on x86_64 while they
are defined as 32bit on i386.  Any program that uses longs better be
aware that sizeof(int) != sizeof(long) on all systems.  doubles are
64bit in all cases as far as I remember.  I think there is a new 128bit
floating point format available with 64bit that wasn't there on 32bit
systems.  I don't deal with floating point enough to be sure.

> 30% is quite a lot. Can you point me to postings/articles/etc. which
> claim to have discovered this?

Well here is a randomly picked example:
rceng02:~# ls -l /data/.chroot/debian-pure64/bin/ls
-rwxr-xr-x 1 root root 85536 Jan 30  2007 /data/.chroot/debian-pure64/bin/ls
rceng02:~# ls -l /bin/ls
-rwxr-xr-x 1 root root 77352 Jan 30  2007 /bin/ls

So /bin/ls appears to be 10% larger.

rceng02:~# ls -l /bin/gzip
-rwxr-xr-x 4 root root 52672 Sep 19  2006 /bin/gzip
rceng02:~# ls -l /data/.chroot/debian-pure64/bin/gzip
-rwxr-xr-x 4 root root 60216 Sep 19  2006

So /bin/gzip appears to be 14% larger.  I seem to recall gzip also runs
quite a bit faster on 64bit.

Len Sorensen

Reply to: