ZCT 0.3.2500 released

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

Moderators: hgm, Rebel, chrisw

User avatar
Zach Wegner
Posts: 1922
Joined: Thu Mar 09, 2006 12:51 am
Location: Earth

ZCT 0.3.2500 released

Post by Zach Wegner »

ZCT 2500 is now up on sourceforge. Source only right now, I'm sure someone will make compiles soon. Sorry.

I decided to do a release because, first, the version number was 2500 (finally), and second, because today, June 1, (or yesterday depending on your location) is (was) the 4th anniversary of ZCT. I started it on 06-01-2005. I really have no idea about the strength.

Unfortunately, this is probably the last ZCT release. Most of the work in the past 6 months has been very sporadic, usually around the time of tournaments, or when somebody bugs me about it. It has really been just a side project when I get bored. However, I want to assure everyone in the CC community that my time is being well spent on a new project. ZCT will of course live forever as a GPL engine, so anyone can feel free to do whatever with it (legally :)). It shouldn't be too hard to make it play decently, just rewrite the evaluation, search, and make SMP scale better.

There are most likely some little bugs here and there, and I will do my best to fix them as I get time. SMP working is really a hit or miss. I think it should work, but I fixed the last bug earlier today, and I've only run a small number of test games to confirm. It hasn't crashed after doing plenty of benchmarking on an 8 core machine either.

As far as changes, far too many to remember, but here are some:

1. SMP probably working.
2. EGBBs removed.
3. New book format (this was a while back, around the 247x times, but after the last public release 2451).
4. Command line arguments. I did this as a request, but it's pretty cool. It's just a proxy for normal commands, so you can do anything that you would do on the command line. Each command starts with --. So you can do "./zct --force --e4 --display --perft 5 --analyze" or even "./zct --uci --go depth 15". Not that you'd want to, but I think it's cool.
5. You can specify the path to a configuration file with ./zct --config ZCT.ini. This was actually the reason for 4.
6. Evaluation parameters given names, and parsing made a bit easier. Look at ZCT.ini, and it shows every parameter for ZCT's eval in an almost-easy-to-edit way.
7. Auxiliary name for ZCT can be set with the "setname" command (usually in the ZCT.ini file, or on the command line). This is for creating personality names! The names are then sent to your favorite xboard/UCI compatible GUI. So you can create your very own "ZCTx64MP-0.3.2500-RybkaKiller", or, more realistically, "ZCTx64MP-0.3.2500234-RybkaVictim"

I suppose that's just about it. Big thanks to Kenny Dail, who has been annoying me about working on ZCT for quite a while, requesting new features, and discovering just how badly ZCT scales on 8 cores. Also thanks to Fonzy Bluemers, who does a lot of the same stuff, but has been taking a break for a while, and everyone else who has helped in ZCT's lifetime: Teemu Pudas, Swami, Wael Deeb for the book, the various testers, etc. Thanks to the users who have used ZCT too. I hope the next release you get from me will make you much happier than this.

:)

Zach
User avatar
Graham Banks
Posts: 41415
Joined: Sun Feb 26, 2006 10:52 am
Location: Auckland, NZ

Re: ZCT 0.3.2500 released

Post by Graham Banks »

Thanks Zach. :)
gbanksnz at gmail.com
F. Bluemers
Posts: 868
Joined: Thu Mar 09, 2006 11:21 pm
Location: Nederland

Re: ZCT 0.3.2500 released

Post by F. Bluemers »

Hi Zach
Thanks for the release.
Sorry to hear that you got fed up with it a bit
Last couple of days i was busy compiling and testing 2496.
I did manage to find some microsoft quirks again :lol:
There are some files missing from the Repositories
bit.h stats.h epd.c evaleq.c evalinit.c evalks.c evalpawns.c evalpieces.c
Can you upload them?

Best
Fonzy
swami
Posts: 6640
Joined: Thu Mar 09, 2006 4:21 am

Re: ZCT 0.3.2500 released

Post by swami »

Thanks, Zach. I can't wait to test this. 8-)

Waiting for Jim Ablett's fast compile!
kranium
Posts: 2129
Joined: Thu May 29, 2008 10:43 am

Re: ZCT 0.3.2500 released

Post by kranium »

hi Zach-

thanks very much for this engine...
i've actually been looking at the source alot (along with crafty, glaurung, and others) for smp implementation guidance/details...

i wish your next project much success!

PS -
i hope you are working on a new engine? or is it something else?

Norm
User avatar
Zach Wegner
Posts: 1922
Joined: Thu Mar 09, 2006 12:51 am
Location: Earth

Re: ZCT 0.3.2500 released

Post by Zach Wegner »

F. Bluemers wrote:There are some files missing from the Repositories
bit.h stats.h epd.c evaleq.c evalinit.c evalks.c evalpawns.c evalpieces.c
Can you upload them?
Oops. Fixed. Sorry guys!! Thanks Fonzy.
krazyken

Re: ZCT 0.3.2500 released

Post by krazyken »

I've added a Mac build to my site. (intel 64-bit)
F. Bluemers
Posts: 868
Joined: Thu Mar 09, 2006 11:21 pm
Location: Nederland

Re: ZCT 0.3.2500 released

Post by F. Bluemers »

Thanks,Just today i got a 2496 running with smp on windows here.
I'll now try my newly developed skills on 2500.
:D
Best
Fonzy
User avatar
Dr.Wael Deeb
Posts: 9773
Joined: Wed Mar 08, 2006 8:44 pm
Location: Amman,Jordan

Re: ZCT 0.3.2500 released

Post by Dr.Wael Deeb »

Thanks Zach and good luck with your new project....Oh,you will be annoyed to release it as soon as possible :mrgreen:
Dr.D
_No one can hit as hard as life.But it ain’t about how hard you can hit.It’s about how hard you can get hit and keep moving forward.How much you can take and keep moving forward….
User avatar
Zach Wegner
Posts: 1922
Joined: Thu Mar 09, 2006 12:51 am
Location: Earth

Re: ZCT 0.3.2500 released

Post by Zach Wegner »

I was working a bit on a Windows build. I uploaded some fixes for Windows compatibility, now all that the source needs to compile is to comment out #define ZCT_POSIX and uncomment #define ZCT_WINDOWS. Also, since MSVC doesn't support inline assembly, it needs some intrinsics (BitScanForward64, etc) to run quickly.