Author: Scott Gasch
Date: 12:56:43 01/16/03
Hi, Bruce's recent posts about code efficiency have had the opposite affect he intended, on me at least. I've been profiling and looking to trim the fat from my code since reading them. I have made some progress, I'm glad to report. As part of these experiments I enabled a material-only eval routine. Running a raw speed test with this simple eval I noticed my engine still was only about as fast as "fast" engines on the same machine. Engines like yace/crafty/ruffian seem to run about as fast on my machine as my poor engine does with only a material count eval. This indicates to me that I am generating and scoring moves too slowly. So I profiled my engine with the material only eval and found that it is dominated by the SEE code. This is partially my own fault because I have a pretty complicated SEE that handles stuff like accurate pawn promotion scores, pieces that can't participate because they are pinned against the king, attackers/defenders exposed in the middle of the exchange, etc. My question for those of you with fast move generators, especially those using SEEs to score moves, is how do you do it? Vincent said something to me about not scoring all the moves generated which doesn't make any sense (at least to me). I don't run the hash move through the SEE since I am going to try it first anyway. And I won't bother to send PxQ through the SEE, clearly it's a winning move. I send all promotions, apparently even captures, and apparently losing captures though the SEE though to make sure I have a score on every move generated, though. I do this because when I go to pick the next best move out of the list I need to know the score of every move generated. Am I missing some trick here? I have a feeling that monsoon is due for a major code revision after CCT5... I have a bunch of ideas I want to try like: parallel search, incremental attack tables instead of an SEE, better POSITION data structure, etc... Thanks for any and all advice. Scott
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.