Over the last couple of weeks I've implemented a parallel version of perft, using the YBWC algorithm. To test this, I used the three 'standard' perft positions - just with a greater depth. Here are the extended counts:
Code: Select all
start position
perft(11) total 1665861398 nodes
perft(12) total 10749771911 nodes
perft(13) total 70612863532 nodes
perft(14) total 465829118473 nodes
random position [FEN "B:W6,9,10,11,20,21,22,23,30,33,37,41,42,43,44,46,K31:BK17,K24."]
perft( 9) total 1216917193 nodes
perft(10) total 13106503411 nodes
perft(11) total 183848651744 nodes
perft(12) total 2026297454724 nodes
Woldouby position [FEN "W:W25,27,28,30,32,33,34,35,37,38:B12,13,14,16,18,19,21,23,24,26."]
perft(15) total 346184885 nodes
perft(16) total 2272406115 nodes
perft(17) total 14962263728 nodes
perft(18) total 106965577859 nodes
Code: Select all
start(12) random(10) Woldouby(16) avg speedup
1 thread 200.51 205.96 58.01
2 threads 101.82 95.92 30.08 2.0
4 threads 63.70 67.60 19.32 3.1
6 threads 45.00 45.98 13.78 4.4
8 threads 39.27 40.73 11.83 5.0
Code: Select all
start(14) random(12) Woldouby(18) avg speedup
1 thread 194.10 129.15 239.87
2 threads 98.79 75.10 145.90 1.8
4 threads 68.33 52.92 87.08 2.7
6 threads 50.09 41.45 78.01 3.4
8 threads 44.99 35.73 51.33 4.2
Jan-Jaap