Author: Jaime Benito de Valle Ruiz
Date: 13:29:28 02/15/04
Go up one level in this thread
As some other people have mentioned answering your post, don't be extremely concerned about speed; specially not at the beginning. Probably the best way to find out how "good/bad" you're doing with your move generator (and make/unmake) is to create a Perft function, and compare it to that of other programs. This is also very good to find bugs in the move generator and/or make and unmake routines. Bare in mind, though, that some people use differen approaches even for a simple perft: Some engines generate ONLY legal moves, and while programs like Crafty (for example) perform a make and unmake for all the moves at the leaf nodes to test their legality, these only-legal programs just count them, and return the total, thus reducing the peft time dramatically. Unfortunatelly, this doesn't help during real analysis, because you need to make those moves in order to analyze them, so it's only good for a fast perft. Engines such as Sharper use hash tables to avoid recalculations during perft, so its speed depends on the available memory. It also has a command called "divide X" that gives you the number of nodes for every move. I spent a long time obsessively struggling to make a faster perft than crafty, and I finally managed to do it, but... because of my pruning, my eval, and other things, my engine is much much slower and much worse in the end. Just make sure that your engine can play good chess. Regards, Jaime
This page took 0 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.