ChessUSA.com TalkChess.com
Hosted by Your Move Chess & Games
 
 FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

Speedup with bitboards on 64-bit CPUs
Post new topic    TalkChess.com Forum Index -> Computer Chess Club: Programming and Technical Discussions Flat
View previous topic :: View next topic  
Author Message
Michael Sherwin



Joined: 26 May 2006
Posts: 2215
Location: OH, USA

PostPost subject: Re: Speedup with bitboards on 64-bit CPUs    Posted: Sun Apr 29, 2007 2:01 am Reply to topic Reply with quote

bob wrote:
Michael Sherwin wrote:
jdart wrote:
Arasan uses bitboards extensively (including rotated). The 64-bit version is faster but not by much (10-25%). I am not sure why.

--Jon


Rotated bitboards use lots and lots of multidimentional look-ups which is great for 32 bit processors, because it keeps 64 bit access to a minimum. However, when compiled for 64 bits all the same array indexing must be done and 64 bit access is still minimized. There are other bitboard methods that minimize look-ups and maximize 64 operations that run much faster on 64 bit processors when compiled to 64 bit code.


I haven't found anything "much faster". I tested magic move generation and found it to be identical in speed with the rotated bitmaps I used in older versions. I converted to magic because they are simpler, but not because they are faster. There are a couple of advantages about being able to update one "occupied" bitmap and get moves from that, but for normal stuff, the two approaches are really equal if done properly. And since move generation is a small part of most chess programs, it doesn't make a hill of beans worth of difference no matter what approach you use, bitmaps or mailbox. The advantage of bitmaps lies elsewhere.


Magic is very interesting, no doubt about that, but the 64 bit multiplication is exspensive and the huge data tables that are required stresses the resources available to the processor on lesser hardware. Newer processors with humungous cashes are a different story. What also matters is how 'large the eval is compared to the move generator. In programs with smaller evals the speed difference is substantial. When I compiled Crafty to 64 bits on typical hardware there was about a 30% speedup. And for my program, RomiChess, the speedup going to 64 bit was 50%. I use the real old fashion bitboards that you describe in one of your papers. Although, I reinvented them prior to reading that paper.

I have developed (but not fully implemented) two new bitboard move generators that are faster than magic on both 32 bit and 64 bit machines. I hope to finish this work and publish some results in the coming months.
_________________
Regards,
Mike
Back to top
View user's profile Send private message
Display posts from previous:   
Subject Author Date/Time
Speedup with bitboards on 64-bit CPUs Tord Romstad Fri Apr 27, 2007 8:39 am
      Re: Speedup with bitboards on 64-bit CPUs Mark Lefler Fri Apr 27, 2007 9:34 am
            Re: Speedup with bitboards on 64-bit CPUs Tord Romstad Fri Apr 27, 2007 11:04 am
                  Re: Speedup with bitboards on 64-bit CPUs Pradu Kannan Fri Apr 27, 2007 11:15 am
                  Re: Speedup with bitboards on 64-bit CPUs jswaff Sat Apr 28, 2007 12:21 am
      Re: Speedup with bitboards on 64-bit CPUs H.G.Muller Fri Apr 27, 2007 10:20 am
            Re: Speedup with bitboards on 64-bit CPUs Tord Romstad Fri Apr 27, 2007 11:13 am
                  Re: Speedup with bitboards on 64-bit CPUs Pradu Kannan Fri Apr 27, 2007 11:18 am
                        Re: Speedup with bitboards on 64-bit CPUs Tord Romstad Mon Apr 30, 2007 3:01 pm
                  Re: Speedup with bitboards on 64-bit CPUs Robert Hyatt Sun Apr 29, 2007 12:34 am
                        Re: Speedup with bitboards on 64-bit CPUs Tord Romstad Mon Apr 30, 2007 3:14 pm
                              Re: Speedup with bitboards on 64-bit CPUs Robert Hyatt Mon Apr 30, 2007 5:08 pm
                                    post gone?? Guetti Tue May 01, 2007 8:26 pm
                                          Re: post gone?? Gerd Isenberg Wed May 02, 2007 6:36 am
                                                Re: post gone?? Guetti Wed May 02, 2007 7:54 am
                                                Re: post gone?? H.G.Muller Wed May 02, 2007 3:47 pm
                                                      Re: post gone?? Gerd Isenberg Wed May 02, 2007 6:08 pm
      Re: Speedup with bitboards on 64-bit CPUs Charles Roberson Fri Apr 27, 2007 1:45 pm
            Re: Speedup with bitboards on 64-bit CPUs Vincent Diepeveen Sat May 19, 2007 5:20 pm
                  Re: Speedup with bitboards on 64-bit CPUs Robert Hyatt Mon May 21, 2007 5:34 pm
                  Re: Speedup with bitboards on 64-bit CPUs Tony Thomas Mon May 21, 2007 5:40 pm
                        Re: Speedup with bitboards on 64-bit CPUs Robert Hyatt Mon May 21, 2007 9:47 pm
                              Re: Speedup with bitboards on 64-bit CPUs Vincent Diepeveen Sat May 26, 2007 7:21 pm
                                    Re: Speedup with bitboards on 64-bit CPUs Robert Hyatt Sun May 27, 2007 9:41 pm
                                          Re: Speedup with bitboards on 64-bit CPUs Chan Rasjid Mon May 28, 2007 7:29 am
                                                Re: Speedup with bitboards on 64-bit CPUs Tony Thomas Mon May 28, 2007 9:04 pm
                                                Re: Speedup with bitboards on 64-bit CPUs Jacob Mon May 28, 2007 9:49 pm
                                                      Re: Speedup with bitboards on 64-bit CPUs Chan Rasjid Tue May 29, 2007 5:58 am
                                                            Re: Speedup with bitboards on 64-bit CPUs Robert Hyatt Tue May 29, 2007 3:18 pm
                                                                  Re: Speedup with bitboards on 64-bit CPUs Chan Rasjid Tue May 29, 2007 4:09 pm
                                                                        Re: Speedup with bitboards on 64-bit CPUs Robert Hyatt Tue May 29, 2007 9:23 pm
                                                                  Quiescence search width Steven Edwards Tue May 29, 2007 10:02 pm
                                                                        Re: Quiescence search width Greg McGlynn Wed May 30, 2007 3:36 pm
                                                                        Re: Quiescence search width Robert Hyatt Thu May 31, 2007 1:45 am
                                                                              Re: Quiescence search width Steven Edwards Thu May 31, 2007 2:16 am
                                                Re: Speedup with bitboards on 64-bit CPUs Robert Hyatt Tue May 29, 2007 3:15 pm
      Re: Speedup with bitboards on 64-bit CPUs Jon Dart Fri Apr 27, 2007 6:25 pm
            Re: Speedup with bitboards on 64-bit CPUs Michael Sherwin Fri Apr 27, 2007 11:32 pm
                  Re: Speedup with bitboards on 64-bit CPUs Robert Hyatt Sun Apr 29, 2007 12:38 am
                        Re: Speedup with bitboards on 64-bit CPUs Michael Sherwin Sun Apr 29, 2007 2:01 am
                              Re: Speedup with bitboards on 64-bit CPUs Robert Hyatt Mon Apr 30, 2007 12:41 am
      Re: Speedup with bitboards on 64-bit CPUs frank phillips Sat Apr 28, 2007 10:38 am
            Re: Speedup with bitboards on 64-bit CPUs Tord Romstad Mon Apr 30, 2007 3:22 pm
                  Re: Speedup with bitboards on 64-bit CPUs Robert Hyatt Mon Apr 30, 2007 8:59 pm
                        Re: Speedup with bitboards on 64-bit CPUs Michael Sherwin Tue May 01, 2007 9:55 am
                              Re: Speedup with bitboards on 64-bit CPUs Robert Hyatt Tue May 01, 2007 9:05 pm
                        Re: Speedup with bitboards on 64-bit CPUs H.G.Muller Tue May 01, 2007 11:38 am
                              Re: Speedup with bitboards on 64-bit CPUs Robert Hyatt Tue May 01, 2007 9:07 pm
      Re: Speedup with bitboards on 64-bit CPUs Shaun Brewer Tue May 01, 2007 11:20 pm
      Re: Speedup with bitboards on 64-bit CPUs Tord Romstad Fri May 11, 2007 8:16 am
Post new topic    TalkChess.com Forum Index -> Computer Chess Club: Programming and Technical Discussions

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum




Powered by phpBB © 2001, 2005 phpBB Group
Enhanced with Moby Threads