Computer Chess Club Archives




Subject: Few Problems with BitBoards!

Author: KarinsDad

Date: 23:24:08 01/12/99

Go up one level in this thread

On January 12, 1999 at 20:26:26, Eugene Nalimov wrote:


Thanks guys! Thought I was going down a primrose path with those first set of

So far, BitBoards seem relatively easy to implement, even the rotated ones. They
seem to work fine. That probably means that I'm doing something wrong, but I
won't figure it out until later.

Out of the problems mentioned, the only one I had was similar to #2 below, but
it was not for the BitBoards themselves. Rather, I had some slight problems with
generating a large table that I use with them. Writing the code to get that
table right took longer than any of the BitBoard code (and even when I thought I
had it right, I found a way to modify it in order to save an AND and an XOR
operation each time I use it).

All in all, I'm glad that Crafty is using them. It gives me proof of concept

Thanks again :)


>(1) It's much harder to think in the bitboards terms; they are not
>for the beginners. 0x88 approach, for example, can be explained in
>one post (as it was done recently by both Bruce and Bob).
>(2) (Maybe that's part of (1), too). Algorithms are not trivial.
>For example, it takes some time to understand rotated bitboards.
>(3) Large data structures are necessary. For example, the entire
>search part of the "fast and dumb" chess program that don't use
>bitboards and use mainly piece/square tables for evaluation
>(something like Fritz, if everybody is correct and Fritz is really
>such a program) can be fit into L1 cache on any modern x86 CPU -
>both code and data. Craftys' tables are much larger - that's why
>Crafty "likes" CPUs with fast L2 cache (PPro and Xeon).
>(4) Bad support in the development tools. Few C compilers supports
>64-bit integers on 32-bit platforms, and even in those few, often
>code quality is much worse than for 32-bit integers, or there are
>bugs in the code generators.
>(5) Often chess program starts as modification of the existing
>project (like Gnu Chess or TSCP). There are no bitboard programs
>with source available let alone Crafty, and modifying Crafty
>source is not for the beginners.

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.