Computer Chess Club Archives


Search

Terms

Messages

Subject: the KRPP KR challenge. system limits.

Author: Vincent Diepeveen

Date: 11:40:47 08/11/99

Go up one level in this thread


On August 09, 1999 at 13:46:37, José de Jesús García Ruvalcaba wrote:

>	I finally sat down and make all the computations from scratch and then
>rechecked the results.
>Number of 5+1 tablebases: 40
>Number of 4+2 tablebases: 200
>Number of 3+3 tablebases: 120
>Total number of six men tablebases: 360
>	If there is interest I can explain how I got the results, they are simple
>combinatorics problems.
>José.

Most interesting for me and many chessplayers is the
KRPP KR  database.

We already have all 5 men.
For KRPP KR we need next 6 men:
       type
KRQQ KR a
KRQR KR a
KRQB KR c
KRQN KR c
KRQP KR b
KRRB KR a
KRRN KR a
KRRP KR d
KRBB KR a
KRBN KR c
KRBP KR b
KRNN KR a
KRNP KR b
KRPP KR e

type a: no pawns, and 2 pieces the same  ; 6x
type b: 1 pawn, all pieces different     ; 3x
type c: no pawns, all pieces different   ; 3x
type d: 1 pawn , 2 pieces the same       ; 1x
type e: 2 pawns                          ; 1x

My simple fast (and regrettably currently still buggy)
generator which needs 4096 positions for KK position
(but that's very fast then when generating, ask Urban Koistinen for further
info about why it can do 64 positions at the same time, and there are even
different methods to do it), further can use normal reductions for the
other pieces.

Of course i use 8 bits a tuple everywhere as that's faster,
though 7 bits would be sufficient as we need only (-mate
50..,unknown,empty,illegal,draw...+mate 50). And you go argue: that's
not DTM. Indeed it's not, but with DTC we can calculate a bound to the
maximum distance to mate, which is preferred above 50 move rule now and
then.

So 4 pieces left for type c: 10 * 64*64*64  (first piece 8 times mirrored)
this makes size of 1 database: 64^5 * 10 = 10.737.418.240 tuples or bytes

type a: 10 * 64 * 32*63          ( ===>  n/2 * (n-1) for the 2 same pieces which
is in a table). So size is

40960 * 64 * 32 * 63 = 5.284.823.040 bytes each 'file'

Now real problems start (pawns):

type b: 24 (pawn) * 64^3 leads to 25.769.803.776 bytes

type d: 24 * 64 * 32 * 63 leads to 12.683.575.296 bytes or tuples
type e: 24 * 48 * 64 * 64 gives to 19.327.352.832 (note that PP doesn't
get reduced in my prog as i don't take into account reductions for a
piece when the first piece must be taken into account, here pawn is
put first and mirrored, so reductions are a bit tougher here, and i don't
plan to waste time on that!)

Ok summarize the total (uncompressed) sizes:

First of all we have WTM and BTM, so we need the doubling of next:

6a x 5.284.823.040  = 6x5 gigs = 30 gigs
3b x 25.769.803.776 = 3x25 g   = 75 gigs
3c x 10.737.418.240 = 3x10 g   = 30 gigs
1d x 12.683.575.296 = 1x12 g   = 12 gigs
1e x 19.327.352.832 = 1x19 g   = 19 gigs

So suppose i just do CALCULATION using my format,
and lookup to older EGTB using Nalimov,
and after calculation of them i convert the results to
nalimov format (creating in fact a new format that has DTC)

then i need just for the 1 pawn databases
WTM+BTM = 50 gigs and for the bitmaps i need another 4 bitmaps
which together are 25 gigs, totalling

70 gigabytes free needed, JUST for calculation.

Lookup is done 1 database after each other, so one can delete
each looked up database after it's used and copy the next one,
the bitmaps don't exist by then, so 75 is definitely sufficient,
together with some dozens of DAT tapes.

However who has at least 75 gigs free, has dat-streamer that can
stream old databases, and then we still didn't talk about me
making a converter from my simple format to nalimov EGTB...
...in short my generator is fast. faster than anything i've seen
before (but no conversion to nalimov currently). It can do those 6
men very quickly at a fast CPU (PII500 should be more
than enough). For harddisk even an older LVD SCSI
is already enough, but there is about a gigabyte of RAM needed to
do those 6 men with pawns within 2 weeks. The other 6 men are done
within a few days each as less internal passes are needed.

Someone also has to write a converter for DIEP ==> nalimov
cuz i don't want to do it, then 6 men are possible if above
conditions are met.

5 men (with one side with pawns, but i don't have en passant in it
yet though but that's a plan for the future too)
about an hour at a system with a PII-450, 128 mb RAM and a SCSI harddisk
(my IDE harddisk plain sucks for it).

Longest time (about 20 minutes) is taken by the initialization passes where
it looks up things at other databases.

Greetings,
Vincent







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.