Crafty 24.0

Discussion of chess software programming and technical issues.

Moderators: bob, hgm, Harvey Williamson

Forum rules
This textbox is used to restore diagrams posted with the [d] tag before the upgrade.
ibid
Posts: 88
Joined: Mon Jun 13, 2011 10:09 am

Re: Crafty 24.0

Post by ibid » Thu May 29, 2014 1:32 am

Peter Skinner wrote:Can you both try this version for me?

http://www.kikrtech.com/crafty-23.9-winxpx64.exe.zip

Peter
Same error message...

User avatar
Peter Skinner
Posts: 1760
Joined: Sun Feb 26, 2006 12:49 pm
Location: Edmonton, Alberta, Canada
Full name: Peter Skinner
Contact:

Re: Crafty 24.0

Post by Peter Skinner » Thu May 29, 2014 1:35 am

ibid wrote:
Peter Skinner wrote:Can you both try this version for me?

http://www.kikrtech.com/crafty-23.9-winxpx64.exe.zip

Peter
Same error message...
Ok then I suspect that MS has broken something, or is doing something fishy. That build was built the _identical_ way that 23.8 was built, and that works for Ray.

I will figure this out. Something has changed...

Peter
I got kicked out of Chapters because I moved all the Bible's to the fiction section.

Modern Times
Posts: 2477
Joined: Thu Jun 07, 2012 9:02 pm

Re: Crafty 24.0

Post by Modern Times » Thu May 29, 2014 4:30 am

Peter Skinner wrote:
ibid wrote:For what it's worth, I get the same error message as you with both exes on a Phenom II X6 1090T and Windows 7...
Can you both try this version for me?

http://www.kikrtech.com/crafty-23.9-winxpx64.exe.zip

Peter
Same error message here with that one too.

Modern Times
Posts: 2477
Joined: Thu Jun 07, 2012 9:02 pm

Re: Crafty 24.0

Post by Modern Times » Thu May 29, 2014 5:05 am

Peter Skinner wrote:
ibid wrote:
Peter Skinner wrote:Can you both try this version for me?

http://www.kikrtech.com/crafty-23.9-winxpx64.exe.zip

Peter
Same error message...
Ok then I suspect that MS has broken something, or is doing something fishy. That build was built the _identical_ way that 23.8 was built, and that works for Ray.

I will figure this out. Something has changed...

Peter
Thanks. I was sure it wasn't just me...

The 23.8 version that works is called crafty-23.8-x64-sse3.exe

Cardoso
Posts: 295
Joined: Thu Mar 16, 2006 6:39 pm

Re: Crafty 24.0

Post by Cardoso » Thu May 29, 2014 2:49 pm

Hi Bob,
many thanks for the update.
There is one thing I've been wanting to mention for quite a long time.
Just a suggestion, I'm all forward for simplicity and readability.
IMHO crafty should keep the root search in a separate search, like it was in older versions.
Including it in the main search just complicates the main search. Too many "ply == 1" and "ply > 1" testing conditions.
I know other engines also merge the root and the main search, but it should be different in crafty since crafty is a teaching source engine.
Since this doesn't affect performance, I would like you to consider this comming back to an old idea.
Not all things we do in the past are that bad :)
I understand this is subjective, and a question of personal preference, but please take my comment into consideration.

best regards,
Alvaro

bob
Posts: 20795
Joined: Mon Feb 27, 2006 6:30 pm
Location: Birmingham, AL

Re: Crafty 24.0

Post by bob » Thu May 29, 2014 6:33 pm

Cardoso wrote:Hi Bob,
many thanks for the update.
There is one thing I've been wanting to mention for quite a long time.
Just a suggestion, I'm all forward for simplicity and readability.
IMHO crafty should keep the root search in a separate search, like it was in older versions.
Including it in the main search just complicates the main search. Too many "ply == 1" and "ply > 1" testing conditions.
I know other engines also merge the root and the main search, but it should be different in crafty since crafty is a teaching source engine.
Since this doesn't affect performance, I would like you to consider this comming back to an old idea.
Not all things we do in the past are that bad :)
I understand this is subjective, and a question of personal preference, but please take my comment into consideration.

best regards,
Alvaro
Here's why I got rid of the root search function. I currently STILL have two search functions, one the full search, and one is just the "inner loop of the full search" that is used in the parallel search. That is a real PITA, because the "inner loop" is the most interesting part of the search, with extensions, reductions, re-searches, etc. Having two leads to problems because if you change one you have to change both, giving me twice the probability of screwing up because I can't cut and paste due to the differences in the two. With the old SearchRoot() I had THREE places to change things... I have worked on cleaning up search, and am still studying to develop a way to eliminate the above duplication. Perhaps a SearchLoop() function that is called both from Search() and SearchParallel() would do the trick.

From too many years of doing this, duplicated code is a pain. The old black/white duplication was a pain as well, and while it was a pain to get rid of it, getting rid of it eliminated an even bigger pain...

Cardoso
Posts: 295
Joined: Thu Mar 16, 2006 6:39 pm

Re: Crafty 24.0

Post by Cardoso » Fri May 30, 2014 9:40 am

I see now, I guess we can't have it all.
It's a real challenge to have both simplicity/readability while keeping the engine strong and feature rich.
Thanks for your amazing contribution.

Alvaro

User avatar
Graham Banks
Posts: 33686
Joined: Sun Feb 26, 2006 9:52 am
Location: Auckland, NZ

Re: Crafty 24.0

Post by Graham Banks » Fri May 30, 2014 11:20 pm

Hi Pete,

would you be able to make a 32-bit compile as well?
There are some enthusiasts who still use 32-bit OS.

Cheers,
Graham.
My email addresses:
gbanksnz at gmail.com
gbanksnz at yahoo.co.nz

Jimbo I
Posts: 148
Joined: Thu Feb 15, 2007 3:34 am
Location: USA

Re: Crafty 24.0

Post by Jimbo I » Sat May 31, 2014 1:42 pm

bob wrote:
Jimbo I wrote:
Peter Skinner wrote:
Jimbo I wrote:Hi Peter,

Thanks for the compile! Could you also possibly make a full-featured compiled version with the skill switch?

(I still haven't learned how to compile engines myself. How hard would it be for a non-programmer to learn how to do this?)
If you have Visual Studio 2008 or greater, I can upload my makefiles and instructions for you to download. Then isn't just 4 minutes of your time.

Also I am recompiling the previous 24.0 release with the /DSKILL option. I simply had forgotten to re-add it to my makefiles as I don't use it internally for testing.

Peter
I'd love to give it a try. I have Microsoft Visual C++ 2010 Express installed (but never used). Is that what I'd need to do the compile? How would I download the makefiles and instructions? From your web site?

And thanks for recompiling with the /DSKILL option!
I don't think that will work. I use the stdint.h include file and I have heard complaints that this is not included in vs express 2010. I think there is a 2013 express now but I do not know if it includes the stdint.h stuff either...
I'm hoping that this isn't a problem? I did a little Googling and came across a post where someone said Microsoft finally added stdint.h to 2010 Express. (I checked, and it is in one of my Express folders.) So maybe it would work?

Also, I have some bad news for you, Bob. I tried Peter's Crafty 24.0 with Skill=1, and it's doing the same thing that all versions since 23.6 have done: It uses up most of it's time very early in the game, then has just a second or two for a number of moves. It'll forfeit on time for a significant portion of its games (maybe 1 in 6 when using Arena, and even more than that in ChessGui). It's not a big deal for me, since I can still use version 23.5 to play against, but I just hate to see it still be broken in the later versions.

bob
Posts: 20795
Joined: Mon Feb 27, 2006 6:30 pm
Location: Birmingham, AL

Re: Crafty 24.0

Post by bob » Sat May 31, 2014 2:44 pm

Jimbo I wrote:
bob wrote:
Jimbo I wrote:
Peter Skinner wrote:
Jimbo I wrote:Hi Peter,

Thanks for the compile! Could you also possibly make a full-featured compiled version with the skill switch?

(I still haven't learned how to compile engines myself. How hard would it be for a non-programmer to learn how to do this?)
If you have Visual Studio 2008 or greater, I can upload my makefiles and instructions for you to download. Then isn't just 4 minutes of your time.

Also I am recompiling the previous 24.0 release with the /DSKILL option. I simply had forgotten to re-add it to my makefiles as I don't use it internally for testing.

Peter
I'd love to give it a try. I have Microsoft Visual C++ 2010 Express installed (but never used). Is that what I'd need to do the compile? How would I download the makefiles and instructions? From your web site?

And thanks for recompiling with the /DSKILL option!
I don't think that will work. I use the stdint.h include file and I have heard complaints that this is not included in vs express 2010. I think there is a 2013 express now but I do not know if it includes the stdint.h stuff either...
I'm hoping that this isn't a problem? I did a little Googling and came across a post where someone said Microsoft finally added stdint.h to 2010 Express. (I checked, and it is in one of my Express folders.) So maybe it would work?

Also, I have some bad news for you, Bob. I tried Peter's Crafty 24.0 with Skill=1, and it's doing the same thing that all versions since 23.6 have done: It uses up most of it's time very early in the game, then has just a second or two for a number of moves. It'll forfeit on time for a significant portion of its games (maybe 1 in 6 when using Arena, and even more than that in ChessGui). It's not a big deal for me, since I can still use version 23.5 to play against, but I just hate to see it still be broken in the later versions.
Can you tell me what time control you use? skill=1 is really not for an experienced player, and new players are not going to play bullet-level speeds. It is likely there would be a problem at very fast time controls. One of the intents of skill=small-number is to still use a "normal" amount of time... it feels unnatural (as a beginner) if your opponent moves instantly.

Post Reply