Author: Robert Hyatt
Date: 14:02:32 01/13/99
Go up one level in this thread
On January 13, 1999 at 10:53:54, James Robertson wrote: >On January 12, 1999 at 23:48:46, Robert Hyatt wrote: > >>On January 12, 1999 at 11:34:19, John Coffey wrote: >> >>>On January 12, 1999 at 11:10:21, KyoJin Kim wrote: >>> >>>>How much will it be faster using bitboard than without using bitboard? >>>> >>>>Thanks. >>> >>> >>>Speed is a hard concept to talk about. I am no expert, but bitboards might >>>have more over-head while at the same time they simplify evaluation of the >>>position, which may save you time in evaluating. Although I don't fully >>>understand it, I am told the bitboards can also help in move ordering by >>>looking at captures first, and the improved move ordering reduces the number >>>of positions looked at. >>> >>>My idea of a chess algorithm was not to use bitboards because they do not >>>provide me with all the information that I want. Instead I was going to >>>keep track of a great deal of information each time a piece moved - this >>>approach might be slow but might also help my evalution, move ordering, and >>>pruning. I can't say that it will work, because it might be months before I >>>can put these ideas into practice. But I have started on the user interface. >>> >>>John Coffey >> >> >>A couple of things. Until we get full 64 bit architectures (or until we run >>on Digital alphas, MIPS R10000's and HP PA8000's) on PC machines, bitboards are >>at the very best, a break-even proposition. > >What!? All that work to only program a break-even proposition?? Yes. but remember that "Crafty on a PC" was an 'afterthought'. Crafty was originally designed as a replacement for "cray blitz". Which means it was targeted for a machine with 64 bit words from the beginning, with a hardware instruction to count bits, find the first 1 bit, and even extract elements from an array based on which bits are set. IE I could do what vincent wants to do very cheaply for mobility on the Cray. Set up a 64 word vector that contains the 'value' of attacking each square on the board. Then produce the bitmap of squares a bishop attacks, and then extract just the elements of the array where 1 bits are set in the bitmap, and sum them, and it doesn't take any time at all to do this... On the PC things are different, but it still is pretty efficient if you have seen Crafty run. And on 64 bit machines it works even better. > >There is extra overhead involved, >>until we get to 64 bit machines... But once we get there, I don't see any >>disadvantage at all, and the information 'density' really favors 64 bit apps >>when running on a 64 bit machine. >> >>as far as 'didn't provide you with all the information you want' that might >>be the result of not working with them long enough. I haven't found a single >>question I can't answer with bitboards... and many times the question is easier >>to answer with them than without... particularly in evaluation where I spend >>a bunch of time... > >if a program spends a lot of time in eval() is the difference in speed made up? > >James Eval is efficient in bitmaps for sure. But there is still the two-instruction overhead until we get 64 bit PC's...
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.