Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: Tree reduced by 10% now

Author: Artem Pyatakov

Date: 13:18:55 04/01/04

Go up one level in this thread


Hi Robert,

Thanks for replying as usual.

>That is how everyone does killers I suspect.  It is exactly how Slate described
>it in Chess Skill in Man and Machine...  If you only use 2, the counters can
>probably be eliminated (I did this a long while back).

I don't know if that's what everyone does - I bet a lot of people have adopted
the approach used by Crafty. Also, according to my test and common sense, the
counters do make a difference even for 2 moves, because as opposed to blindly
replacing one of the moves, the program will actually replace the less
frequently used one. Of course the difference between approaches becomes much
more significant when you go to a larger number of killers (and a lot of people
do use 4, so it becomes significant).

>What is the overhead for keeping the extra killers, updating the counts, finding
>the best killer, etc?  IE it isn't free.  Hopefully it doesn't cost 10% which
>would make this "break-even"...

Obviously the answer would vary from program-to-program, but I think the answer
is clearly no - there is no way that this operation takes 10% of the total
program time! Even with the most naive of implementations, we are talking about
an extra 10-iteration/10-comparison loop, and a tiny memory hit (10 moves versus
2, plus a couple bytes for the score = int per move -> 8 new moves+scores*4bytes
each=32 bytes/ply!) There is also an equivalent for every cutoff that occurs,
and that also has at most 10 comparisons. I think this is a tiny price to pay
for 10% less nodes.

Artem



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.