qperft is fast and almost... perfect!
Any modern engine can be used too, even my satana is good enough but not faster as others.
Best way to debug perft?
Moderators: hgm, Rebel, chrisw
-
- Posts: 859
- Joined: Mon Aug 10, 2009 10:05 pm
- Location: Italy
- Full name: Stefano Gemma
Re: Best way to debug perft?
Author of Drago, Raffaela, Freccia, Satana, Sabrina.
http://www.linformatica.com
http://www.linformatica.com
-
- Posts: 464
- Joined: Sat Feb 28, 2015 4:37 pm
- Location: Argentina
Re: Best way to debug perft?
I just end of tried it.stegemma wrote:qperft is fast and almost... perfect!
Any modern engine can be used too, even my satana is good enough but not faster as others.
The command seems to be perft depth as in Sharper.
And gives me 20 as Sharper!
What I understood wrong?
I count 21 possible moves in that position!
a5,b3,b4,c3,c4,d3,d4,e3,e4,f3,f4,g3,g4,h3,h4
Ra2,Ra3,Na3,Nc3,Nf3 and Nh3.
-
- Posts: 859
- Joined: Mon Aug 10, 2009 10:05 pm
- Location: Italy
- Full name: Stefano Gemma
Re: Best way to debug perft?
you must setup the position first, giving this command:Luis Babboni wrote:I just end of tried it.stegemma wrote:qperft is fast and almost... perfect!
Any modern engine can be used too, even my satana is good enough but not faster as others.
The command seems to be perft depth as in Sharper.
And gives me 20 as Sharper!
What I understood wrong?
I count 21 possible moves in that position!
a5,b3,b4,c3,c4,d3,d4,e3,e4,f3,f4,g3,g4,h3,h4
Ra2,Ra3,Na3,Nc3,Nf3 and Nh3.
Code: Select all
setboard rnbqkbnr/1ppppppp/p7/8/P7/8/1PPPPPPP/RNBQKBNR w KQkq - 0 2
perft 1
Author of Drago, Raffaela, Freccia, Satana, Sabrina.
http://www.linformatica.com
http://www.linformatica.com
-
- Posts: 464
- Joined: Sat Feb 28, 2015 4:37 pm
- Location: Argentina
Re: Best way to debug perft?
Thanks! Now yes.
I thought it was enough given the position in the GUI chessboard.
I thought it was enough given the position in the GUI chessboard.
-
- Posts: 859
- Joined: Mon Aug 10, 2009 10:05 pm
- Location: Italy
- Full name: Stefano Gemma
Re: Best way to debug perft?
If you want to develop a chess engine, maybe it is better if you get comfortable with the command line, not just the GUI.Luis Babboni wrote:Thanks! Now yes.
I thought it was enough given the position in the GUI chessboard.
Author of Drago, Raffaela, Freccia, Satana, Sabrina.
http://www.linformatica.com
http://www.linformatica.com
-
- Posts: 855
- Joined: Sun May 23, 2010 1:32 pm
Re: Best way to debug perft?
I suggest to not rely on sharper for perft.
I think to remember that sometimes it return wrong perft values. I hope to not have make a mistake and given bad word against sharper, but those are my memories.
I think there are stronger engines you can rely on, for example stockfish. it implement perft.
some engines implement the divide command too. it's used to debug perft.
bye
I think to remember that sometimes it return wrong perft values. I hope to not have make a mistake and given bad word against sharper, but those are my memories.
I think there are stronger engines you can rely on, for example stockfish. it implement perft.
some engines implement the divide command too. it's used to debug perft.
bye
-
- Posts: 454
- Joined: Sat Apr 04, 2009 6:44 pm
- Location: Bulgaria
Re: Best way to debug perft?
You can take a look at my code at http://pawny.netii.net/. The entire perft.c is dedicated to movegen's debugging.
It's very simple to understand and you can switch off/on hashing for example. The cmd line interface of the engine is again - entirely developed for debugging purposes.
Then you have the 'epdtest' command that works with files with pre-calculated node counts for positions up to certain depth. Like this one:
http://pawny.netii.net/my_perftsuite.epd
So basically 'epdtest my_perftsuite.epd' will run the entire test and compare the node counts for each depth (like the 'divide' command).
It's very simple to understand and you can switch off/on hashing for example. The cmd line interface of the engine is again - entirely developed for debugging purposes.
Then you have the 'epdtest' command that works with files with pre-calculated node counts for positions up to certain depth. Like this one:
http://pawny.netii.net/my_perftsuite.epd
So basically 'epdtest my_perftsuite.epd' will run the entire test and compare the node counts for each depth (like the 'divide' command).