Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: significant math

Author: Sune Fischer

Date: 02:05:25 11/20/02

Go up one level in this thread


On November 19, 2002 at 16:18:48, Gian-Carlo Pascutto wrote:

>On November 19, 2002 at 16:08:58, Russell Reagan wrote:
>
>>On November 19, 2002 at 15:37:24, Gian-Carlo Pascutto wrote:
>>
>>>Please show EVIDENCE.
>>
>>Crafty gets 302,000 nps on my machine. Yace gets 267,000 nps on my machine. That
>>looks like bitboards are more than breaking even to me.
>
>Now try a 'perft' run...

I think it is a common mistake to believe perft is a good measure of move
generation speed. In perft you run fastest by generating all the moves at once,
in chess this would slow you down, most of the time you only need 1 move to cut
off.

In a typical position I guess there is around 35 legal moves, of which 1-5 may
be captures and these are the ones you want to generate.

I believe that "move for move" 0x88 is faster because you don't have to do that
extra bit scan to get the square, but usually with bitboards you generate only
1-5 captures/promotions and never bother with the rest which is "filtered" out
with a few simple AND's.

So I believe this bit extraction process is neglible compared to the 0x88
process of scanning for captures or building the full list (however you guys are
doing it).

Incremental move generation is one of the bitboards strengths I think, though I
admit I have not devoted a lot of time into other approaches so there might be
some cute tricks I'm not aware of :)

Obviously things also depend on branch mispridiction penalty and cache
efficiency, not to mention move generation is a very small part of a real
program.

Basicly I have to agree that it isn't an easy question to answer at all!


Cool thread by the way, was it this time of the month again? :)

-S.
>--
>GCP



This page took 0.05 seconds to execute

Last modified: Thu, 07 Jul 11 08:48:38 -0700

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