Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: Length of time for Move_Gen()?

Author: Russell Reagan

Date: 12:46:39 02/15/04

Go up one level in this thread


On February 15, 2004 at 15:11:56, Andrew Wagner wrote:

>So I'm starting to design a chess engine, and I have a nifty little class for
>doing benchmark tests, and I'm wondering if anyone would like to hazard a guess
>as to what is a good (or bad) length of time for an engine to generate all
>pseudo-legal (even if it results in check) moves in a position. Any takers?

On my computer (Athlon XP 2400+, 2GHz), here are a few results.

Crafty: 21,231,421 moves/second
Yace:   45,347,583 moves/second

But you should keep a few things in mind.

* Speed is not as important as most beginners think. It's good to be fast, but
  there are other things that are way more important (like search, evaluation,
  move ordering, etc.). After your program starts playing, you will probably
  only spend less than 5% of the time generating moves (if that). Even if you
  double the speed of generating moves, it won't make your program significntly
  better.

* You are probably not as experienced as the authors of Crafty and Yace in
  programming ability or all of the little tricks you can use to speed up
  things like move generation, so don't feel bad if your program is way slower
  than theirs.

* Be sure and run the tests on your own computer and don't compare against the
  numbers I posted because they won't be valid for your machine (unless you
  have the same CPU).

* Since you are using .NET, your program will probably be slightly slower than
  something written in C like both Crafty and Yace.

Download Crafty and Yace and run the tests for yourself. Type 'perf' into Crafty
and 'speed' into Yace (both without the '').



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.