Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: Athylon 800 vs top program playing style

Author: Bo Persson

Date: 10:32:18 04/05/00

Go up one level in this thread


On April 04, 2000 at 17:33:14, Tom Kerrigan wrote:

>On April 04, 2000 at 15:38:44, Jeremiah Penery wrote:
>
>>On April 04, 2000 at 11:48:35, Tom Kerrigan wrote:
>>
>>>On April 04, 2000 at 07:53:30, Laurence Chen wrote:
>>>
>>>>It could be that crafty uses SSE in the code, and that improves the speed of
>>>>searching in Crafty.  SSE is properitery of Intel, and Athlon does not and
>>>>cannot support SSE, and instead of SSE, AMD replaces this part of code with 3D!
>>>>Now.
>>>
>>>If you do many similar floating point operations, you can use SSE to optimize
>>>your code.
>>>
>>>Crafty doesn't do any floating point operations, so using SSE is impossible.
>>>
>>>It's possible that Crafty uses MMX for some stuff. I kind of doubt it, but MMX
>>>might be used to speed up some 64-bit operations. AMD's chips have always done
>>>MMX operations much faster than Intel's chips, so that would tend to make the
>>>K6/Athlon faster than the PIII.
>>
>>Wouldn't MMX stuff be rather non-portable?
>
>Yes, but it's possible to use the C preprocessor to select what code to use. If
>you're compiling for Intel, you can automatically use some inline MMX assembly;
>otherwise, you can use a general C routine.
>
>I doubt MMX is used in Crafty because it would involve moving data to and from
>the MMX (fp) registers, which is probably more trouble than it's worth for
>simple logical operations.

Correct, there is no MMX code in Crafty.

I have tried to find some good use for it in a chess program, bit failed.
Generally, MMX instructions may be good for processing long bit streams, like in
multimedia or encrytion programs. In a chess program you often want to see if an
operation produces an empty or a non-empty bit board. The MMX instructions,
however, only produce the bits without setting any flags.

Also the Intel specific inline assembly uses bit scanning instructions that are
very fast on Pentium II/III/Celeron. An AMD K6 does not benefit from these
instructions, but it doesn't loose either. A win/no-loose situation :-)

>-Tom

Bo Persson
bop@malmo.mail.telia.com




This page took 0 seconds to execute

Last modified: Thu, 15 Apr 21 08:11:13 -0700

Current Computer Chess Club Forums at Talkchess. This site by Sean Mintz.