Computer Chess Club Archives


Search

Terms

Messages

Subject: Crafty multithreading

Author: Robert Hyatt

Date: 10:19:04 05/22/98




I haven't spent much time running tests, and thought that it was about
time to try the infamous WAC suite again.  In past single-processor
versions, I have been solving between 295-300 in one minute on the
P6/200.
The variability is based on evaluation changes that alter the shape of
the
tree, and sometimes slows it down just enough that the solution is not
found...

Here is the results for v14.11 first:

       0  20  40  60  80 100 120 140 160 180 200 220 240 260 280
   +------------------------------------------------------------
 1 |   0   1   0   0   0   0   0  42   0   0   0   0   2   0   0
 2 |   0   0   0   0   0   0   0   0   0   1   0   9   0   1   0
 3 |   0   0   0   0   0   0   0   0  --   0   0   0   1   0  12
 4 |   0   0   0   0   0   0   0   0   0   0   0   0   0  28   0
 5 |   0   0   0   0   0   0   0   5   0   0   0   0   0  13   0
 6 |   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0
 7 |   0   0   0   0   0   0   0   0   0   0   0   0   2   0   0
 8 |   0   0   0   0   0   0   0   0   0   0   0   2  19   0   0
 9 |   0   0   0   0   0   0   0   0   0   0   0  23   0  --   0
10 |   0   3   0   0   0   0   0   0   0   1   0  --   0   0   0
11 |   0   0   0  17   9   0   1   0   0   0   0   0   0   0   9
12 |   0   0   0   0  43   0   0   0   0   0   0   0   6   1   0
13 |   0   0   0   0   0   0   1   0   0   0   0   0   0   0  33
14 |   0   0   0   0   0   0   0   0   0   0   0   0   0   1   0
15 |   0   0   3   0   0   0   0   8   0   0   0   0   0   0   0
16 |   0   0   0   0   0   2   0   0   0   5   0   0  16   0   0
17 |   0   0   0   0   0   0   0   0   0   0   0   2   0   1   4
18 |   0   0   0   0   0   0   0   0   2   0   0   0   0   0   0
19 |   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0
20 |   0   0   0   2   0   4   0   0   5  19   0   0   0   0   0
incorrect: 163 230 269
sum of times(squared)=51301

the sum of times(squared) is a method to avoid relying solely on
the number right.  Rather this penalizes taking a long time on
one position, even if two others are slightly faster.
Here is 15.9, run on my 4-processor ALR:

       0  20  40  60  80 100 120 140 160 180 200 220 240 260 280
   +------------------------------------------------------------
 1 |   0   0   0   0   0   1   0  26   0   0   0   0   2   0   0
 2 |   0   0   0   0   0   0   0   0   0   0   0   4   0   1   0
 3 |   0   0   0   0   0   0   0   0   3   0   0  28  34   0   4
 4 |   0   0   0   0   0   0   0   0   0   0   0   0   0  18   0
 5 |   0   0   0   0   0   0   0   2   0   0   0   0   0   5   0
 6 |   0   1   0   0   0   0   0   0   0   0   0   1   0   0   0
 7 |   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0
 8 |   0   0   0   0   0   0   0   0   0   0   0   1   0   0   0
 9 |   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0
10 |   0   0   0   0   0   0   0   0   0   1   0  --   0   0   0
11 |   0   0   0   0   0   0   0   0   0   0   0   0   1   0   4
12 |   0   0   0   0  21   0   0   0   0   0   0   0   1   0   0
13 |   0   0   0   0   0   0   0   0   0   0   0   0   0   0  33
14 |   0   0   0   0   0   0   0   0   0   0   0   0   0   1   0
15 |   0   0   1   0   0   0   0   4   0   0   0   3   0   0   0
16 |   0   0   0   0   0   1   0   0   0   4   0   0   7   0   0
17 |   0   0   0   0   0   0   0   0   0   0   0   2   0   0   2
18 |   0   0   0   0   0   0   0   0   1   0   0   0   0   0   0
19 |   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0
20 |   0   0   0   2   1   0   0   0  14   7   0   0   0   0   0
incorrect: 230
sum of times(squared)=19320

which is a pretty significant change...

this is run at 1 minute per move, with the time it took to lock on
to the correct move and hold it thru 1 minute being the time recorded.
I don't record a time if it finds the correct move, then changes to an
incorrect move, then changes back to the correct move.  The time
recorded
in that case is the time where it found the move the second time and
held
that move until time expired.

I don't see it solving #230 anytime soon...  it's never gotten that one,
and I only know of a couple of programs (DT and CB) that did ever get
this
one correct.

If we reduce the time to 30 secs/move, it will drop to 297/300.  If we
drop to 15 secs/move, it drops to 293/300.

Note that the ALR machine is running approxmiately as fast as the 500mhz
alpha machine we used in Paris, for comparison.  On that machine we were
hitting around 250K nodes per sec...  on this machine roughly a little
faster, but about 1/4 to 1/3 of the machine is "wasted" due to search
overhead...  So that the newer alpha machines would actually be a bit
faster on one processor, and way faster with more than one...



--
Robert Hyatt                    Computer and Information Sciences
hyatt@cis.uab.edu               University of Alabama at Birmingham
(205) 934-2213                  115A Campbell Hall, UAB Station
(205) 934-5473 FAX              Birmingham, AL 35294-1170





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.