Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: Faster Board Representations/Move Generators

Author: Christopher Conkie

Date: 02:07:19 02/24/06

Go up one level in this thread


On February 24, 2006 at 04:13:34, Gerd Isenberg wrote:

>On February 23, 2006 at 18:45:34, Dann Corbit wrote:
>
>>On February 23, 2006 at 17:37:21, Gerd Isenberg wrote:
>>[snip]
>>>>a1b2 is a 64 bit unsigned integer with bits a1 and b2 set.
>>>
>>>Huch! That is possible!?
>>>Hopefully no indirect jump table with 2**64 entries ;-)
>>>Is that inside the generator or inside the chess programs.
>>
>>For a given square, I need at most 128 constants per row or diagonal.
>>
>>They are precomputed.
>>
>>Obviously, you must have the 64 unique bitboards A1-H8 defined.
>>
>>Then, your generator program writes (above the functions themselves):
>>
>>printf("static const Bitboard a1b2 = %ui64;\n", A1|B2);
>>
>>Any given file will need 128 for each column and 128 for each row and between 0
>>and 128 for each diagonal for both diagonals.
>
>Thanks, i have it now. Was too dazed by the switch(BitBoard). Hmm, yes as far i
>can see the switch with up to 128 cases translates chain of 32-bit
>compares/jumps.
>
>Intuitively without having a closer look to some generated assembly i tend to
>favour the De Bruijn folding with distinct directions, even if less flexible in
>terms of xrays and other data-structures used for see. Otoh a quadbitboard
>filler also provides xray informations as well - at least for usual and well
>predictable cases with not more than two rooks, one queen and one bishop per
>square color and side.

Hello Gerd,

I'm sorry I just got it in my brain about Dann's method and then you said
"quadbitboard filler". Could you explain this in a little bit more detail for my
creaking brain please? Do you have some pseudo code to illustrate this? I have
to admit that these methods hover around what I was originally thinking.

I noticed your thread with De Bruijn which was also eye opening. In these days
of 64 Bit OS's all of the above seems to be essential knowledge.

Christopher



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.