Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: Is Bitboard worthy?

Author: Bas Hamstra

Date: 06:31:56 10/18/00

Go up one level in this thread


On October 17, 2000 at 10:02:54, Robert Hyatt wrote:

>On October 17, 2000 at 05:14:14, Bas Hamstra wrote:
>
>>On October 16, 2000 at 10:18:31, Robert Hyatt wrote:
>>
>>>On October 16, 2000 at 06:32:53, Pham Minh Tri wrote:
>>>
>>>>I know that Bitboard makes move generation the fastest, but this structure is
>>>>also one of the most complicated. However, an old post said that the generation
>>>>function is not the key of success to chess program and the author illustrated
>>>>that after his optimality (which made that function work much faster), the speed
>>>>of system increased only 1 percent.
>>>>
>>>>As a result, my question is: is bitboard really worthy for implementation when
>>>>it takes a long time to program and more time to fix all bugs (maybe several
>>>>times bigger than the rest of program)? Or is it better if we use this time to
>>>>concentrate on hash table, null move threshold and so on? I plan that I will
>>>>forget the bitboard (at least in the first period) if it help me only few
>>>>percent.
>>>>
>>>>Pham
>>>
>>>
>>>I see nothing that makes them harder to use than an array.  Nor nothing that
>>>makes them particularly easier to use either.
>>>
>>>They have certain advantages on new architectures that move 64 bits of data
>>>around in one cycle, and they have some advantages in evaluation where you can
>>>answer lots of questions in one AND or OR operation.  On current machines, I
>>>would say they are no faster nor slower than any other approach.  On 64 bit
>>>architectures, they begin to look better.
>>
>>Well if you wanted to build attacked-from tables I would not be so sure. Some
>>programs use that kind of info extensively. If you wanted to make such a
>>program, BB certainly wouldn't be the first option.
>>
>>However I know at least 1 program that builds attacks-to tables with BB and that
>>seems to work fine.
>>
>>
>>Bas Hamstra.
>
>
>Attacks_from works fine in bitboards.  Just read the chess 4.x article in
>"Chess Skill in Man and Machine".  I did them until I decided I didn't really
>need that often enough to tolerate the overhead.  I _still_ get that information
>very quickly if I want it...  but I could get it even quicker.  Early versions
>of crafty had attacks_from and attacks_to that were incrementally updated as the
>board was modified.  I changed to rotated bitmaps to eliminate the overhead of
>the incremental update and turn attacks into a simple table lookup.  And I got
>rid of attacks_from almost everywhere except for a couple of places where I
> compute "in check".

I know you don't use them. So it is logical you leave them out. But not all
program's work like Crafty. There are a couple of programs that use
attacked-from info heavily. They want to know not only that a square is
attacked, but exactly by what. For many squares.

Now I personally think that if you wanted to do this, you better not use the
rotated BB approach.


Regards,
Bas.























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.