Computer Chess Club Archives


Search

Terms

Messages

Subject: Bitboards

Author: Doug Beardsley

Date: 06:11:06 08/16/99


I need some information about bitboards and how they relate to the rest of the
chess program.  I have written what I call a "limited" bitboard representation
which only uses two bitboards, white_occupied and black_occupied.  I use them in
get_legal_moves() to speed up the generation by only checking occupied squares
(pretty elementary).  I decided to convert it to a "full" bitboard
representation similar to that used in crafty with bitboards for each individual
piece.  I got that to work fine, but it caused a huge decrease in my nps (from
~30,000 down to 2,000).  I'm pretty sure that this is because of increased
overhead in make_move().  Now, here are my questions.  Does the full bitboard
implementation slow things down like that, or am I doing something wrong?  Since
the full bitboard implementation slows things down, how does the program use the
bitboards to make the speed decrease worthwhile?  Comments would be greatly
appreciated.



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.