Author: Sune Fischer
Date: 14:52:37 02/15/04
Go up one level in this thread
On February 15, 2004 at 17:31:43, Bo Persson wrote: >On February 15, 2004 at 16:01:27, Sune Fischer wrote: > >>On February 15, 2004 at 15:46:39, Russell Reagan wrote: >> >>>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 >> >>Are you sure that this is really the make/umake speed in yace, that it isn't >>using some perft tricks like Movei? > >You can do other "tricks" to speedd up the move generation tests, like updating >attack tables in make/unmake move. I don't know about Yace, but Crafty is >trading a "slow" move generator for a faster make/unmake by generating attack >tables on-the-fly. Even more importantly Crafty is, to some degree, generating the movelist pre-sorted. Sorting the moves is one of the really expensive jobs, an optimization here is worth 10 times that of a movelist optimization. >This makes this particular test run slower, but improves the overall speed of >the program. > >So much for benchmarks. :-) That's true :) Yace seems very fast at making/unmaking too however. Not sure how Dieter does it, surely there must be some incremental zobrist and material counting. Incheck() is probably an external function that doesn't get called in this test. -S. >Bo Persson > >> >>-S.
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.