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, when Perft(14) and Perft(15) were provided by Ankan Banerjee. 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 known as Kiwipete by Peter McKenzie. The number of double-checks in depth 5 is discussed in Talkchess and may be 2645 instead of 2637. 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

=See also=
 * Chess960 Perft Results
 * Chinese Chess Perft Results

=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


 * Contrived position for perft by Michael Sherwin, CCC, April 21, 2019
 * You gotta love Perft... just not too much! by Martin Bryant, CCC, July 27, 2019
 * Level 11 Perft statistics by Andreas Øverland, CCC, September 17, 2019

2020 ...

 * Place to find correct perft result from a fen position by Elias Nilsson, CCC, November 20, 2020
 * Chinese chess Xiangqi perft results by Maksim Korzh, CCC, January 27, 2021 » Chinese Chess Perft Results
 * Perft 7 -> 1.6 trillion moves by MikeB, CCC, April 12, 2021
 * Being silly with perft and legal move generation by Jakob Progsch, CCC, May 19, 2021 » Legal Move Generation, En passant

=External Links=
 * A048987 from On-Line Encyclopedia of Integer Sequences (OEIS)
 * µ-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 (Wayback Machine)
 * Distributed Perft Project by Albert Bertilsson (Wayback Machine)
 * perft, divide, debugging a move generator from ROCE by Roman Hartmann
 * Perft - sample test positions used by Numpty chess
 * Perft, search the CCC Archives
 * Statistics on chess games by François Labelle
 * vajolet/perft.txt at master · elcabesa/vajolet · GitHub by Marco Belli

=References= Up one level