Perft Results

Home * Board Representation * Move Generation * Perft * Results

This page contains detailed perft results for several positions that are useful for debugging, beginning with the start position. Captures, checkmates, and other information have been included along with the node counts (leaf nodes, excluding internal or interior nodes) or movepath enumerations. The move counters consider moves to the leaf positions only.

=Initial Position= Obviously, Perft(1) of the initial position is 20, Perft(2) 400. Data of Perft(10) up to Perft(13) was provided by Steven Edwards, generated by Symbolic. rnbqkbnr/pppppppp/8/8/8/8/PPPPPPPP/RNBQKBNR rnbqkbnr/pppppppp/8/8/8/8/PPPPPPPP/RNBQKBNR w KQkq - 0 1

Perft 10

 * Perft(10) 20 draft 9 Positions
 * Perft(10) 400 draft 8 Positions

Perft 11

 * Perft(11) 20 draft 10 Positions
 * Perft(11) 400 draft 9 Positions

Perft 12

 * Perft(12) 20 draft 11 Positions
 * Perft(12) 400 draft 10 Positions

Perft 13

 * Perft(13) 20 draft 12 Positions
 * Perft(13) 400 draft 11 Positions

Summary
=Position 2= also know as "Kiwipete" by Peter McKenzie r3k2r/p1ppqpb1/bn2pnp1/3PN3/1p2P3/2N2Q1p/PPPBBPPP/R3K2R r3k2r/p1ppqpb1/bn2pnp1/3PN3/1p2P3/2N2Q1p/PPPBBPPP/R3K2R w KQkq -
 * Initial Position Summary
 * Perft(15)

=Position 3= 8/2p5/3p4/KP5r/1R3p1k/8/4P1P1/8 8/2p5/3p4/KP5r/1R3p1k/8/4P1P1/8 w - -

=Position 4= r3k2r/Pppp1ppp/1b3nbN/nP6/BBP1P3/q4N2/Pp1P2PP/R2Q1RK1 r3k2r/Pppp1ppp/1b3nbN/nP6/BBP1P3/q4N2/Pp1P2PP/R2Q1RK1 w kq - 0 1 Or mirrored (with the same perft results): r2q1rk1/pP1p2pp/Q4n2/bbp1p3/Np6/1B3NBn/pPPP1PPP/R3K2R b KQ - 0 1

=Position 5= This position was discussed on Talkchess and caught bugs in engines several years old at depth 3 and was also reported wrong here, hopefully now corrected with the results given by Steven Edwards, July 18, 2015 rnbq1k1r/pp1Pbppp/2p5/8/2B5/8/PPP1NnPP/RNBQK2R rnbq1k1r/pp1Pbppp/2p5/8/2B5/8/PPP1NnPP/RNBQK2R w KQ - 1 8

=Position 6= An alternative Perft given by Steven Edwards r4rk1/1pp1qppp/p1np1n2/2b1p1B1/2B1P1b1/P1NP1N2/1PP1QPPP/R4RK1 r4rk1/1pp1qppp/p1np1n2/2b1p1B1/2B1P1b1/P1NP1N2/1PP1QPPP/R4RK1 w - - 0 10

=Forum Posts=

2000 ...

 * kiwipete perft position by Russell Reagan, CCC, January 04, 2003 » Peter McKenzie, Kiwipete
 * perft results (how accurate is accurate enough ?) by Roman Hartmann, CCC, September 23, 2004

2010 ...

 * REPORT: wrong perft result by qperft by Jesús Muñoz, CCC, February 14, 2012 » Position 5
 * Perft and en_passant by Harald Lüßen, CCC, September 11, 2012 » En passant
 * Perft(14) estimates thread by Steven Edwards, CCC, February 26, 2013
 * Perft(15) estimates thread by Steven Edwards, CCC, April 10, 2013
 * An altenative perft initial FEN by Steven Edwards, CCC, July 11, 2013
 * Impossible perft question by Andy Duplain, CCC, August 01, 2013 » Position 3
 * Wide open perft by Steven Edwards, CCC, August 18, 2013
 * Perft(14) revisited by Steven Edwards, CCC, August 08, 2014
 * Perft(14) Weekly Status Report by Steven Edwards, CCC, August 24, 2014
 * Perft(14) verification by Steven Edwards, CCC, December 28, 2014

2015 ...
2016
 * Perft(14) Weekly Status Reports for 2015 by Steven Edwards, CCC, January 04, 2015
 * Perft for various positions by Alexandru Mosoi, CCC, January 17, 2015
 * Some Chess960/FRC positions to be confirmed by Reinhard Scharnagl, CCC, February 09, 2015 » Chess960
 * kiwipete perft position by Henk van den Belt, CCC, March 26, 2015 » Kiwipete
 * Perft(14) Weekly Status Reports for 2016 by Steven Edwards, CCC, December 29, 2015
 * A perft(7) challenge position by Steven Edwards, CCC, April 07, 2016
 * Another perft(7) challenge position by Steven Edwards, CCC, April 13, 2016
 * Perft(7) challenge position #3 by Steven Edwards, CCC, April 20, 2016
 * Perft(7) challenge position #4 by Steven Edwards, CCC, April 25, 2016
 * Perft(7) challenge position #5 by Steven Edwards, CCC, April 25, 2016
 * Another perft(7) challenge by Steven Edwards, CCC, May 08, 2016
 * Perft(7) challenge position #6 by Steven Edwards, CCC, May 10, 2016
 * Perft(7) 64 bit hash mismatch set 8 by Steven Edwards, CCC, May 22, 2016
 * Twenty-nine perft(7) mismatches from work unit 528 by Steven Edwards, CCC, July 25, 2016
 * yet another attempt on Perft(14) by Ankan Banerjee, CCC, August 13, 2016
 * Re: yet another attempt on Perft(14) by Ankan Banerjee, CCC, September 09, 2016

2017
 * Two perft(7) mismatches from work unit 571 by Steven Edwards, CCC, September 04, 2016
 * perft(15) by Ankan Banerjee, CCC, August 25, 2017 » Perft(15)
 * Re: perft(15) by Ankan Banerjee, CCC, August 25, 2017

=External Links=
 * µ-Max Dowload Page - qperft by Harm Geert Muller
 * perft-random.epd by Marcel van Kervinck
 * Crafty Command Documentation by Robert Hyatt, see Crafty perft
 * Sharper - Perft calculation by Albert Bertilsson
 * Distributed Perft Project by Albert Bertilsson
 * perft, divide, debugging a move generator from ROCE by Roman Hartmann
 * Perft, search the CCC Archives
 * chess, number of games, sequences related to (start) from the On-Line Encyclopedia of Integer Sequences
 * Statistics on chess games by François Labelle
 * Perft - sample test positions used by Numpty chess
 * PerfT by Reinhard Scharnagl

=References=

Up one level