New 6-piece tablebases

Discussion of chess software programming and technical issues.

Moderators: hgm, Rebel, chrisw

syzygy
Posts: 5557
Joined: Tue Feb 28, 2012 11:56 pm

Re: New 6-piece tablebases

Post by syzygy »

Kirill Kryukov wrote:
syzygy wrote:
Kirill Kryukov wrote:You mention Stockfish integration on your page, is the complete source or Windows binary of this engine available?
Jean-Francois Romang compiled a binary and has the source on github (see earlier in this thread), but I don't think this is the latest version.

I recently created a github repository with the complete Stockfish source and integrated probing code:
https://github.com/syzygy1/Stockfish

It requires the setting of environment variables RTBWDIR and RTBZDIR with the paths to .rtbw and .rtbz files. I suppose it would be nicer if uci options were used instead.

The present version uses the WDL tables during the search. Once the game has reached a tablebase position, it uses the DTZ tables to select "good moves" (that preserve the win under the 50-move rule or preserve the draw or might convert a loss into a 50-move draw with suboptimal play from the opponent) and lets the engine do a search on those without acccessing the tables. The resulting game play is much nicer than when playing "DTZ-optimal". It also has a better chance of converting a draw into a win.

I do not exclude that some bugs are left, so if anyone tests this and has problems, just let me know.

The present version is not very suitable for simply probing the tables from the GUI to see if a position is a win or loss. Once you give the engine a tablebase position, it will do a search on the "good moves" and report a score found by searching. To solve this I could make an option to switch between DTZ-optimal play and the present approach, but it is not a very nice solution.
Hi Ronald,

Can you integrate your TB code with Stockfish 4? I am thinking to run some tests to compare it with regular Stockfish 4, because I suspect the Elo gain may be larger than that from Nalimov's or other tablebases (which is hardly measurable).

Thanks,
Kirill
I've updated to the latest sources and created a tag "sf_4_tb".
To get Stockfish 4 with my changes the following should work:

Code: Select all

$ git clone https://github.com/syzygy1/Stockfish.git
$ cd Stockfish
$ git checkout sf_4_tb
or just use this link: https://github.com/syzygy1/Stockfish/ar ... f_4_tb.zip

Note that this is unsupported.
User avatar
jshriver
Posts: 1342
Joined: Wed Mar 08, 2006 9:41 pm
Location: Morgantown, WV, USA

Re: New 6-piece tablebases

Post by jshriver »

I finished generating the full 3-4-5-6 men set in both WDL and DTZ. With an i7-3770 with 32gigs RAM it took 14 days, followed by just under 4 days to do a verify.

Here is a 3-4-5-6 md5sum for the full set.
http://olympuschess.com/egtb/sbases/3-4-5-6.md5

You can download all of the 3-4-5 individually from here:
http://olympuschess.com/egtb/sbases/

To download the complete 3-4-5 as a single file use this:
http://olympuschess.com/egtb/sbases/sbases345.tar.bz2

The associated statistics text files can be found here:
http://olympuschess.com/egtb/sbases/txt/


Going to try and host the complete set which is 151gigs (at least for a short while).

-Josh
Sharaf_DG
Posts: 30
Joined: Fri Aug 02, 2013 11:03 am

Re: New 6-piece tablebases

Post by Sharaf_DG »

Thanks for the update....Is the current counter accurate when using multiple threads?
IQ
Posts: 162
Joined: Thu Dec 17, 2009 10:46 am

Re: New 6-piece tablebases

Post by IQ »

Great! A 6 men set to download would be fantastic! With 100mbit+ it would only take 4-6 hours.
Going to try and host the complete set which is 151gigs (at least for a short while).

-Josh
Last edited by IQ on Tue Sep 03, 2013 7:47 pm, edited 2 times in total.
kranium
Posts: 2129
Joined: Thu May 29, 2008 10:43 am

Re: New 6-piece tablebases

Post by kranium »

jshriver wrote:I finished generating the full 3-4-5-6 men set in both WDL and DTZ. With an i7-3770 with 32gigs RAM it took 14 days, followed by just under 4 days to do a verify.

Here is a 3-4-5-6 md5sum for the full set.
http://olympuschess.com/egtb/sbases/3-4-5-6.md5

You can download all of the 3-4-5 individually from here:
http://olympuschess.com/egtb/sbases/

To download the complete 3-4-5 as a single file use this:
http://olympuschess.com/egtb/sbases/sbases345.tar.bz2

The associated statistics text files can be found here:
http://olympuschess.com/egtb/sbases/txt/


Going to try and host the complete set which is 151gigs (at least for a short while).

-Josh
wow thx joshua
i'm surprised it took only 2 weeks...
just goes to show how much more powerful PCs are today, as compared to just a few years ago
Sharaf_DG
Posts: 30
Joined: Fri Aug 02, 2013 11:03 am

Re: New 6-piece tablebases

Post by Sharaf_DG »

btw mine took 2 days on 48 core Ivy Bridge E2697
kranium
Posts: 2129
Joined: Thu May 29, 2008 10:43 am

Re: New 6-piece tablebases

Post by kranium »

Sharaf_DG wrote:btw mine took 2 days on 48 core Ivy Bridge E2697
hi Ahmed-
wow that's some significant processing power...

i notice you are credited on Houdini's web page:

"The Houdini 3 development was greatly aided by the kind support of Mr. Ahmed Mansoor"

if i may ask:
why are you helping him (instead of Stockfish for ex)?
i.e. is there a business arrangement?

exactly what was/is the extent of your support?

kind regards-
Norm
User avatar
Kirill Kryukov
Posts: 492
Joined: Sun Mar 19, 2006 4:12 am

Re: New 6-piece tablebases

Post by Kirill Kryukov »

syzygy wrote:I've updated to the latest sources and created a tag "sf_4_tb".
To get Stockfish 4 with my changes the following should work:

Code: Select all

$ git clone https://github.com/syzygy1/Stockfish.git
$ cd Stockfish
$ git checkout sf_4_tb
or just use this link: https://github.com/syzygy1/Stockfish/ar ... f_4_tb.zip

Note that this is unsupported.
Great, thanks a lot! I will give it a try in a day or two.
User avatar
Kirill Kryukov
Posts: 492
Joined: Sun Mar 19, 2006 4:12 am

Re: New 6-piece tablebases

Post by Kirill Kryukov »

kranium wrote:i'm surprised it took only 2 weeks...
just goes to show how much more powerful PCs are today, as compared to just a few years ago
What it goes to show is what a fine piece of work Ronald's generator is compared to generators just a few years ago.
User avatar
jshriver
Posts: 1342
Joined: Wed Mar 08, 2006 9:41 pm
Location: Morgantown, WV, USA

Re: New 6-piece tablebases

Post by jshriver »

Sharaf_DG wrote:Thanks for the update....Is the current counter accurate when using multiple threads?
My CPU is 4 cores, unlike Ronalds which is 8. He was using 16 threads, and I was using 8.

I probably could have shaved a day or two off by not doing the verify after each generation. In fact after day 4-5 I did stop it and went on without the verification instead relying on it in post-generation.

Not sure why the verifier takes so long on my system (perhaps slow disc?). Anyway that's why I made the md5sum as a quick and dirty test for validity.

I created the md5sum list, then did the fresh verify on the full set using the built-in tools (with no errors) then did a md5sum -c against it again and 0 errors.

-Josh