Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 12 Mar 2004 14:16:30 -0600
From:      "James R. Van Artsalen" <james@jrv.org>
To:        freebsd-amd64@freebsd.org
Subject:   Re: Peer review of AMD64/FreeBSD article
Message-ID:  <40521A9E.8070808@jrv.org>
In-Reply-To: <4051A841.9020205@thejemreport.com>
References:  <4051A841.9020205@thejemreport.com>

next in thread | previous in thread | raw e-mail | index | archive | help
Jem Matzan wrote:

> I've just finished writing this article comparing performance between 
> an Athlon64 in 32-bit and 64-bit mode using FreeBSD:

Intel would be thrilled were Prescott to "idle" at 60 F anywhere other 
than outdoors in an Antarctic winter: alas, 60 C sounds more likely (but 
still seems astoundingly high for a halted processor).

Your Prescott  probably isn't doctored, but it is the case that early 
steppings of a CPU are always faster than later steppings: bug fixes to 
the silicon or control store patches by ROM POST rarely speed it up.

The Prescott performance variation may indeed be due to thermal issues.  
I think Prescott slows down in response to thermal overload (AMD just 
enters a non-resumable halt - AMD's is a safety mechanism to protect the 
motherboard and CPU).  It is not out of the question that Prescotts is 
regularly bumping up against thermal limits and running slow briefly.  I 
find this hard to believe, but no harder to believe than a 60 C halted 
processor...  Test by *lightly* preheating CPU cooler air intake with a 
well-aimed hairdryer to and see if that hurts performance.

It may be worth mentioning that theoretically the usual win from 64-bit 
mode comes not from the fact that registers and reg ops are 64 bit but 
rather because more registers are available when in 64-bit mode.  This 
is a huge win for a compiler which is nearly asphyxiated in register 
allocation by the i386.

It might be worth mentioning that a powerful differentiator (between 
i386 and amd64 is maximum memory.  With AMD64 you can keep on adding RAM 
after 4 GB as long as it wins.  A database-driven web site might win 
substantially by having an 8 GB resident working set *in-process*.  The 
max for i386 is around 3 GB; the practical max for amd64 is about 15 GB 
and growing (Tyan Thunder K8W with 8x 2GB DIMMs).  This is beyond the 
scope of your tests but might be worth mentioning.



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?40521A9E.8070808>