Computer Chess Club Archives


Search

Terms

Messages

Subject: Tablebases for 6 and 7 man classes

Author: Steven J. Edwards

Date: 09:31:18 11/18/97


A six man tablebase for a pawnless class has 64 times as many entries as
a pawnless five man class.  Each pawnless five man class file (two
files, WTM and BTM, per class) requires 160 Mbyte with one byte per
entry; so a pawnless six man class needs 10 Gbyte, BUT only if each
entry requires a single byte.  If, say, two bytes were used then 20
Gbyte is needed.  The problem is that the number of bits required is
based on the logarithms of the maximal mate/loss distances and these
aren't known until after the calculation is over.  I have no doubt that
many of the six man classes are going to need more than one byte per
entry.

Similar comments go for six man classes with pawns: at one byte per
entry, each of the files needs 32 Gbyte of storage.

For each extra man, multiple the respective (pawn/pawnless) numbers by
sixty four.  This means Tbyte (terabyte) sizes.

In addition to entry size, another difficulty is the indexing needed for
large file access.  Most consumer systems support, at best, 31 bits of
file indexing.  This is 2 Gbyte which is big enough for most purposes,
but not for six man classes.  There are a number of ways of handling
this, the obvious one being the use of multiple files for a single
tablebase class side-to-move.

The program tbgen was designed from the start to allow generation of
classes with more than five men.  It does not require RAM storage
proportional to the class size, but instead uses disk resources so it
can run on modest machines as long as they have enough mass storage.
Of course, the index type used in tbgen (indexT, a long int) needs to be
redefined to handle extra long indexing.  Another feature of the tbgen
program is that none of the files it uses are accessed randomly (e.g.,
fseek()), but instead only sequentially.  This means that tape drives
can be used for some or all of the files.  Some minor recoding might be
needed depending on the tape interface, but nothing very significant.

I have spent some time working on estimation of running times for
different classes.  There are many factors involved including piece
count, type, distribution, etc.  The truth is that the only way to find
out how long a class might take is to go ahead and generate it.

But before starting anything with six man classes, I would first propose
that work be continued on completing the en passant implementation.
This would allow a full KPKP (very handy) and eventually a full KPPKP
(which would be extremely useful).

(tbgen.tar.gz and tbgen.zip are available from the chess.onenet.net ftp
site in the pub/chess/uploads/TB directory.)

-- Steven (sje@mv.mv.com)



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.