Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: Problems with BitBoards?

Author: Robert Hyatt

Date: 05:59:33 01/12/99

Go up one level in this thread


On January 12, 1999 at 00:11:02, KarinsDad wrote:

>On January 11, 1999 at 23:01:45, Robert Hyatt wrote:
>
>>On January 11, 1999 at 17:44:02, Bruce Moreland wrote:
>>
>>>
>
>[znip]
>
>>>
>>>If I were writing a program today I think I would try this first.
>>
>
>Now you guys tell me. After I started using BitBoards for both my evaluator and
>for my legal move generator.
>
>>
>>I would agree.  We used it way back when because of the very issues this
>>addresses.  Machines weren't fast, and it made a lot of sense.  I used this
>>after I saw it in the Coko source in fact...  but somewhere around 1983-84
>>we canned this when Harry dreamed up a vectorized attack detector that didn't
>>work well with the board being this big.
>>
>>>
>>>You can write the whole thing in a few hours and have it go fast, without giving
>>>yourself a stroke.
>>>
>>>What Vincent says is open to debate.
>>
>>:)
>>
>>The main point here is 0x88, bitboards, or whatever, you *must* make a
>>commitment to doing the best you can do, for a period of time sufficient to
>>make sure you extract all there is to extract from the approach.  Too many
>>try bitboards and give up after they find some difficulties they can't over-
>>come.
>
>What difficulties can be experienced with BitBoards? So far, they seem to work
>great (or at least accurately, I haven't yet cleaned them up for performance).
>Okay, you can drop the other shoe now.
>
>KarinsDad
>

the approach works fine.  I have been using it exclusively for about 4 years
now in Crafty.  The problem is enumerating set bits into a list of to-squares
since we aren't yet using 64 bit architectures everywhere.  The bsf/bsr
instructions work well on the newer pentium-II type processors, but only on 32
bit quantities, which means at present bitmaps are somewhat clumsy.  But just
wait for 64 bit machines to come from Intel, or use a digital alpha, or MIPS
R10000, or a cray, and suddenly the bitmap advantage becomes quite real.
because we get much higher "information density"... since those processors pump
64 bits internally, programs not needing this waste density potential.  Bitmaps
need all 64 bits moved around, and when we get it for "free" it begins to pay
off pretty well...




>
>  Others try 0x88 and give up without ever realizing all the places it
>>is useful...
>>
>>classic mistake to try and give up too soon...
>>
>>
>>
>>>
>>>bruce



This page took 0.01 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.