Author: Brian Richardson
Date: 18:12:59 04/23/00
Go up one level in this thread
On April 23, 2000 at 05:39:56, Tom Kerrigan wrote: >Here's Peter McKenzie's move generator test position: > >r3k2r/p1ppqpb1/bn2pnp1/3PN3/1p2P3/2N2Q1p/PPPBBPPP/R3K2R w KQkq - > >There are 193690690 possible 5-ply "games" starting from this position. > >How long does it take your program to visit all the positions of these games? > >It takes my program 178 seconds. I have a 400MHz Celeron. My code incrementally >updates a 64-bit hash key, a 64-bit pawn hash key, and four material counters >(white pieces, white pawns, black pieces, black pawns). > >I'd like to find out if anyone is doing significantly better than this, and >hopefully what methods they're using. :) > >-Tom Tinker takes 81 secs on a PIII 733MHz 100MHz bus and 600MHz RDRAM (including lower plys since total for ply n includes subtotal for ply n-1, so from the initial postion Tinker counts 5072212 moves): fen r3k2r/p1ppqpb1/bn2pnp1/3PN3/1p2P3/2N2Q1p/PPPBBPPP/R3K2R w KQkq - clearing hash table +---+---+---+---+---+---+---+---+ 8 | *R| | | | *K| | | *R| +---+---+---+---+---+---+---+---+ 7 | *P| | *P| *P| *Q| *P| *B| | +---+---+---+---+---+---+---+---+ 6 | *B| *N| | | *P| *N| *P| | +---+---+---+---+---+---+---+---+ 5 | | | | P | N | | | | +---+---+---+---+---+---+---+---+ 4 | | *P| | | P | | | | +---+---+---+---+---+---+---+---+ 3 | | | N | | | Q | | *P| +---+---+---+---+---+---+---+---+ 2 | P | P | P | B | B | P | P | P | +---+---+---+---+---+---+---+---+ 1 | R | | | | K | | | R | +---+---+---+---+---+---+---+---+ a b c d e f g h perft 1 generated 48 moves in 0.00 seconds perft 2 generated 2087 moves in 0.00 seconds perft 3 generated 99949 moves in 0.05 seconds perft 4 generated 4185552 moves in 1.81 seconds 2309907 per second perft 5 generated 197876242 moves in 81.34 seconds 2432586 per second This includes MVV/LVA (actually modified TSCP gen_push() which is quite a bit slower than the *move++= pointer method), one 64 bit hash key, plus white and black pawn counts and material values. Non-rotated bitmap move generation.
This page took 2.97 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.