Author: Andrew Williams
Date: 01:47:42 08/14/03
Go up one level in this thread
On August 14, 2003 at 02:27:40, Rick Bischoff wrote:
>Hi everyone,
>
>In my latest exercise in futility, I am coding different Board/Move generation
>schemes and was wondering what raw move generation scores you get. Let's define
>"raw move generation" as follows:
>
>1) All piece moves
>2) No special moves (castling, en passant) pawn promotions are not special.
>
>And then define the following coroutines:
>
>int wmetaperft(Board, depth) {
>-- if (depth == 0) return 1;
>--else {
>---nodes = 0
>---generateMoves for White
>---For each Move M,
>----makeMove M
>----nodes += bmetaperft(B, depth - 1)
>----unmakeMove
>---End for
>---return nodes
>
>int bmetaperft(Board, depth) {
>-- same as white, except generate black moves
>--- and call wmetaperft recursively.
>
>
>Ok, so we are doing no check detection, etc. No matter what I try, I can never
>go much higher than 6 million nodes/sec (on a Athlon 1.4Ghz, I only get 3
>million on my G4) as defined by the routines above. Am I reaching an upper
>limit on memory bandwidth (the moves are all encoded as integers...) or is there
>room for improvement (i.e., how does this compare to your best)?
>
>Thanks,
>Rick
On my Athlon 1200 I get 650 thousand nodes/sec for this position:
[D] r1bqkb1r/pppp1ppp/2n2n2/1B2p3/4P3/3P1N2/PPP2PPP/RNBQK2R b KQkq - 0 4
I get 750k on the opening position. Unfortunately these figures don't say much
about move generation in my program, as I give quite complicated
bonuses/penalties for moves as I generate them. Also, my make_move is very very
slow.
In my opinion, it is much more important to put effort into getting good
move-ordering information when you generate moves. I wouldn't worry too much
about the speed as such. Or at least if you do find yourself worrying about it,
try profiling your program first to see how much of your program's time is spent
on move generation.
Andrew
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.