Computer Chess Club Archives


Search

Terms

Messages

Subject: Tinker 81 secs Re: Testing speed of "position visiting"

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.