Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: Faster Board Representations/Move Generators

Author: Gerd Isenberg

Date: 16:26:20 02/24/06

Go up one level in this thread


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.

What about a fast perfect hashfunction per square and direction which maps to a
128-subrange to build an index to your precomputed stuctures?
I mean about ~250 * 4 directions * 64 squares = 64000 cmp/ja[jb] sounds hard -
despite divide and conquer.



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.