Crafty-22.9 is available

Discussion of anything and everything relating to chess playing software and machines.

Moderators: hgm, Rebel, chrisw

zullil
Posts: 6442
Joined: Tue Jan 09, 2007 12:31 am
Location: PA USA
Full name: Louis Zulli

Crafty-22.9 is available

Post by zullil »

Source code is available at ftp://ftp.cis.uab.edu/pub/hyatt

Thanks to Bob Hyatt and his team.

Code: Select all

 *   22.9    More eval tuning producing another +10 Elo gain.  Curmv[n] was    *
 *           "overloaded" in that it was used to obtain the next move for a    *
 *           parallel thread and was also used to pass back a "fail high" move *
 *           to store in a "LOWER" hash table entry.  This led to some error   *
 *           messages internal to Crafty that could possibly cause problems.   *
 *           There is now a second variable "cutmove" used to pass the move    *
 *           back to eliminate race conditions.  Hash.c modified extensively   *
 *           to improve readability as well as to eliminate duplicated code.   *
 *           Internal iterative deepening code removed.  No measurable benefit *
 *           in real game testing led to removal since it is simpler without   *
 *           the code.  EvaluateMaterialDynamic() also removed.  This was code *
 *           that implemented ideas suggested by IM Larry Kaufman, but careful *
 *           testing showed absolutely no effect on game results.  Again, we   *
 *           chose "simpler is better" and removed it, as no tuning attempts   *
 *           helped for this code.  Nasty pawn hashing bug fix, something that *
 *           has been around for years.  This was essentially the same sort of *
 *           bug that the "lockless hashing algorithm" addressed for the main  *
 *           hash table, where out-of-order memory writes could produce a hash *
 *           signature and the 64 bit word with score and best move which did  *
 *           not "go together".  The same thing happens in pawn hashing,       *
 *           except that an entry is 32 bytes rather than 16, giving even      *
 *           higher probability of an entry that contains mismatched pieces.   *
 *           In the best case, we just got a bad score.  In the worst case,    *
 *           this could cause a program crash since some of the data might be  *
 *           invalid, yet it can be used in ways that produce impossible array *
 *           subscripts that would cause (very rarely) a segmentation fault.   *
 *           The solution was to do the same lockless hashing algorithm where  *
 *           the key is XORed with the other three 64 bit words when the entry *
 *           is stored, then XORed with them again when we try to match.  If   *
 *           the entry is mismatched, the signature will not match anything    *
 *           and we simply will not use the bad data and do a normal pawn      *
 *           evaluation to compute valid values.                               *
 *                                                                             *
royb
Posts: 536
Joined: Thu Mar 09, 2006 12:53 am

Re: Crafty-22.9 is available

Post by royb »

Is anyone else seeing something like the problem below with 22.9 ?

I compiled it with -DSKILL so I can set the skill to some low integer (so I can win sometimes).

With 22.8, everything compiles fine and works well. Time controls are obeyed for a fast game, etc.

With 22.9, things seem to compile fine. However when I start a game with skill=10, the first move out of book causes crafty to think forever without moving.

Anyone else seeing something similar?

Roy
Dann Corbit
Posts: 12541
Joined: Wed Mar 08, 2006 8:57 pm
Location: Redmond, WA USA

Re: Crafty-22.9 is available

Post by Dann Corbit »

Until Jim comes along and makes a faster one, here is a build with a 64 bit binary in it:
http://cap.connx.com/chess-engines/new- ... fty229.zip
Dann Corbit
Posts: 12541
Joined: Wed Mar 08, 2006 8:57 pm
Location: Redmond, WA USA

Re: Crafty-22.9 is available

Post by Dann Corbit »

The new crafty seems to be somewhat faster than older versions in terms of NPS.

I saw up to 15M NPS in opening positions.
That's 7.5% of Deep Blue.
:shock:
royb
Posts: 536
Joined: Thu Mar 09, 2006 12:53 am

Re: Crafty-22.9 is available

Post by royb »

I've learned a bit more about this. It appears to be an issue with the new Crafty and eboard. Xboard and Crafty 22.9 with skill level set works just fine as does command line Crafty 22.9.

Not a Crafty issue after all, thankfully.
bob
Posts: 20943
Joined: Mon Feb 27, 2006 7:30 pm
Location: Birmingham, AL

Re: Crafty-22.9 is available

Post by bob »

Dann Corbit wrote:The new crafty seems to be somewhat faster than older versions in terms of NPS.

I saw up to 15M NPS in opening positions.
That's 7.5% of Deep Blue.
:shock:
run it on a dual-chip I7.

:)
User avatar
Denis P. Mendoza
Posts: 415
Joined: Fri Dec 15, 2006 9:46 pm
Location: Philippines

Re: Crafty-22.9 is available

Post by Denis P. Mendoza »

Thanks Bob. Just can't avoid compiling this new Crafty.

Crafty 22.9 full (epd-skill-hashstats on)- 32 and 64-bit:
http://www.computerchess.info/tdbb/phpB ... =273#p1448

(Just wait for Jim's speed compiles...as usual :wink: !)
User avatar
Denis P. Mendoza
Posts: 415
Joined: Fri Dec 15, 2006 9:46 pm
Location: Philippines

Re: Crafty-22.9 is available

Post by Denis P. Mendoza »

I've added all-purpose (epd-skill-hashstats on) compiles - for old pc/OS.
bob
Posts: 20943
Joined: Mon Feb 27, 2006 7:30 pm
Location: Birmingham, AL

Re: Crafty-22.9 is available

Post by bob »

Denis P. Mendoza wrote:I've added all-purpose (epd-skill-hashstats on) compiles - for old pc/OS.
A couple of notes. The pawn hash bug was serious. I actually first saw it when making some test runs on a dual I7 box and saw a couple of crashes, but they were _impossible_ to reproduce. The Intel IDB debugger installed was not much help either, in that when this segfault happened, it would say "normal exit" and I could not see anything since it said "no program running..."

Finally saw a game on ICC on the normal 8-core box I use all the time that kept logging off and on. Turns out a position was triggering this bug and it was reproducible after a fashion and I tracked it down.

There are a few other speed tweaks and another 10+ Elo in eval tunings also. Still more to work on however...
User avatar
Denis P. Mendoza
Posts: 415
Joined: Fri Dec 15, 2006 9:46 pm
Location: Philippines

Re: Crafty-22.9 is available

Post by Denis P. Mendoza »

Thanks. I try to look into it.

The quick compiles are just a front to gain feedbacks from the Windows users.