amd64 slower than i386 on identical AMD 64 system?

Peter Wemm peter at wemm.org
Thu Mar 16 17:25:02 UTC 2006


On Thursday 16 March 2006 02:41 am, JoaoBR wrote:
> On Wednesday 15 March 2006 18:45, Ken Gunderson wrote:
> > Also, you reported you were having memory related issues but I
> > missed any reply to my query regarding memory timings in BIOS. 
> > I've seen some MB's ship w/1T and other aggressive timings enabled.
> >  I assume so that they can get out of the box perf boost for those
> > MS gaming site reviews where stability takes a back seat to
> > bleeding edge performance. But these more aggressive timings can
> > also cause stability issues.
>
> I know and I remember that and did not answered because I wanted to
> check this first than I forgot to answer, but the problem I have is
> certainly not memory related, it simply happened when having 4GB on
> the MB.
>
> Of course I do not use any kind of overclocking and the memory
> settings are default settings, On the MBs which support ECC I use it
> and otherwise I use correct dual-channel 1GB chips. The voltages
> detected seems to be correct and the powersuplies I used are good
> ones.

I have had very bad experiences using non-ECC memory on amd64 systems, 
especially early motherboards.

As a result, I will not use a machine without ECC.  The memory 
controller on all Athlon64 and Opteron cpus works in ECC mode, it isn't 
a motherboard issue (unless they forget to wire up bits 65 through 72, 
or forget to put the bios options in).

You can use pciconf to read the memory controller settings to see if ECC 
is enabled from inside freebsd. But I don't remember what the magic 
values are though.  I will go look them up if anybody particularly 
cares though.

Unregistered ECC ram is rare, but worth it IMHO.  I get mine from 
crucial.com (aka Micron).  That's probably not a help for .br, but it 
might be for the other list readers.

And don't forget to turn ECC mode on! :-)

And yes, ECC does slightly slow down the memory system because it can no 
longer just write random byte values to ram.  If there is a byte write, 
it has to read all 64 bits from the dimm, merge the new byte in, 
calculate ECC for the whole 64 bit chunk and write it back again.  A 
byte write becomes a read/modify/write operation.
-- 
Peter Wemm - peter at wemm.org; peter at FreeBSD.org; peter at yahoo-inc.com
"All of this is for nothing if we don't go to the stars" - JMS/B5


More information about the freebsd-amd64 mailing list