[NTLUG:Discuss] AMD K6 200 vs Pentium MMX 200

Steve Baker sjbaker1 at airmail.net
Thu Dec 23 18:42:50 CST 1999


Will Senn wrote:
> 
> Hi all,
> 
> Can anyone point me to a benchmark comparing these two ancient processors?  Or perhaps someone would be so kind as to tell me how
> they think they compare with each other.  Specifically, how do they do with Linux 2.x and associated applications like gcc, X, etc.
> 
> Any and all comments appreciated.

THere is a hardware bug in at least some AMD K6-200's.  This bug
only seems to show up under Linux - and had only been seen to affect
the GNU C/C++ compilers - and only then if you have more than 32Mb RAM.

I have a 266MHz AMD - and when I found there was a problem (the GNU
compiler guys told me it was a hardware bug), I called AMD. They
claimed that the problem only affected 133MHz parts and that it
was fixed in the 200's and later.

However, I definitely have the bug - and several web sites out there
agree with me that it affects the 233's and 266's.  When I upgraded
to 450MHz AMD, the problem went away.

AMD also claimed that the bug only occours when recompiling the kernel,
but the truth is that it can happen on any compile - and hits you about
one in a hundred compiler runs.  Unfortunately, I'm compiling a program
that's composed of about 50 files - so about half the time, my program
will fail to compile when I do a clean rebuild.  Re-running the same
compile again would work half the time....very frustrating...especially
when trying to install other people's source code.

The bug is something to do with execution of prefetched instructions
from cache. When there is more than 32Mb RAM, and when the program has
data stored at address 32Mb+X being accessed at the same time as an
instruction from address X, the cache gets confused and can produce the same instruction twice in a row under certain timing situations.  Many
programs survive having an instruction executed twice in a row - and it's
quite unlikely that this particular set of circumstances should happen
but the Linux C/C++ compiler seems pretty vulnerable.

There is supposed to be a kernel patch to reduce the instance of the
problem by trying never to allocate memory to a program at both X and
32Mb+X....but it didn't fix the problem for me - and isn't claimed to
be perfect.

So, I found owning an AMD to be a *SERIOUS* pain.  If you plan to
compile programs - and need >32Mb - get the Intel part.

-- 
Steve Baker                  http://web2.airmail.net/sjbaker1
sjbaker1 at airmail.net (home)  http://www.woodsoup.org/~sbaker
sjbaker at hti.com      (work)






More information about the Discuss mailing list