MP tablebase generator

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

Moderator: Ras

Omega-three

Re: MP tablebase generator

Post by Omega-three »

Dann Corbit wrote:
Omega-three wrote:
michiguel wrote:
Dr.Wael Deeb wrote:I am surprised that a skilled programmer like H.G.Muller is not aware of this fact....
Dr.D
I wonder if you are talking about 5 pc and he may be talking about 6 pc tablebases.

In my own 5-pc generator, when I use two cpus, the time for generation goes down to almost half. The whole calculation is done in Memory (less than 2 Gb needed).

If I develop a 6-pc generator the story will be totally different I guess.

Miguel

My quad has 4 Gb memory, but task manager says newTBGen.exe is using 575,808 k at 25% cpu wuth 74% system idle.
I guess you have a 4 CPU system and so 3 CPUs are idle.
Hi Dann

Yes its a 4 cpu system with 3 CPUs idle. Perhaps there is a newer version of TBGen for 5 man available somewhere. the version I am using is 1.0.0.1 copyright 1999.
Dann Corbit
Posts: 12792
Joined: Wed Mar 08, 2006 8:57 pm
Location: Redmond, WA USA

Re: MP tablebase generator

Post by Dann Corbit »

Omega-three wrote:
Dann Corbit wrote:
Omega-three wrote:
michiguel wrote:
Dr.Wael Deeb wrote:I am surprised that a skilled programmer like H.G.Muller is not aware of this fact....
Dr.D
I wonder if you are talking about 5 pc and he may be talking about 6 pc tablebases.

In my own 5-pc generator, when I use two cpus, the time for generation goes down to almost half. The whole calculation is done in Memory (less than 2 Gb needed).

If I develop a 6-pc generator the story will be totally different I guess.

Miguel

My quad has 4 Gb memory, but task manager says newTBGen.exe is using 575,808 k at 25% cpu wuth 74% system idle.
I guess you have a 4 CPU system and so 3 CPUs are idle.
Hi Dann

Yes its a 4 cpu system with 3 CPUs idle. Perhaps there is a newer version of TBGen for 5 man available somewhere. the version I am using is 1.0.0.1 copyright 1999.
I am not sure what generator you are using, but most can be run in parallel.

I guess that you can have 4 instances running, because you can specifically name the files you want to create with most generators.
Omega-three

Re: MP tablebase generator

Post by Omega-three »

Dann Corbit wrote:
Omega-three wrote:
Dann Corbit wrote:
Omega-three wrote:
michiguel wrote:
Dr.Wael Deeb wrote:I am surprised that a skilled programmer like H.G.Muller is not aware of this fact....
Dr.D
I wonder if you are talking about 5 pc and he may be talking about 6 pc tablebases.

In my own 5-pc generator, when I use two cpus, the time for generation goes down to almost half. The whole calculation is done in Memory (less than 2 Gb needed).

If I develop a 6-pc generator the story will be totally different I guess.

Miguel

My quad has 4 Gb memory, but task manager says newTBGen.exe is using 575,808 k at 25% cpu wuth 74% system idle.
I guess you have a 4 CPU system and so 3 CPUs are idle.
Hi Dann

Yes its a 4 cpu system with 3 CPUs idle. Perhaps there is a newer version of TBGen for 5 man available somewhere. the version I am using is 1.0.0.1 copyright 1999.
I am not sure what generator you are using, but most can be run in parallel.

I guess that you can have 4 instances running, because you can specifically name the files you want to create with most generators.
Its a chessbase generator from 1999 I think, If I try to run more than one instance it will start generatingthe same tbs. I tried to select a different tbs for each instance to have a go at, but no dice :-(
Dann Corbit
Posts: 12792
Joined: Wed Mar 08, 2006 8:57 pm
Location: Redmond, WA USA

Re: MP tablebase generator

Post by Dann Corbit »

Omega-three wrote:
Dann Corbit wrote:
Omega-three wrote:
Dann Corbit wrote:
Omega-three wrote:
michiguel wrote:
Dr.Wael Deeb wrote:I am surprised that a skilled programmer like H.G.Muller is not aware of this fact....
Dr.D
I wonder if you are talking about 5 pc and he may be talking about 6 pc tablebases.

In my own 5-pc generator, when I use two cpus, the time for generation goes down to almost half. The whole calculation is done in Memory (less than 2 Gb needed).

If I develop a 6-pc generator the story will be totally different I guess.

Miguel

My quad has 4 Gb memory, but task manager says newTBGen.exe is using 575,808 k at 25% cpu wuth 74% system idle.
I guess you have a 4 CPU system and so 3 CPUs are idle.
Hi Dann

Yes its a 4 cpu system with 3 CPUs idle. Perhaps there is a newer version of TBGen for 5 man available somewhere. the version I am using is 1.0.0.1 copyright 1999.
I am not sure what generator you are using, but most can be run in parallel.

I guess that you can have 4 instances running, because you can specifically name the files you want to create with most generators.
Its a chessbase generator from 1999 I think, If I try to run more than one instance it will start generatingthe same tbs. I tried to select a different tbs for each instance to have a go at, but no dice :-(
Is it for Nalimov format tablebase files or some other format?
Omega-three

Re: MP tablebase generator

Post by Omega-three »

Dann Corbit wrote:
Omega-three wrote:
Dann Corbit wrote:
Omega-three wrote:
Dann Corbit wrote:
Omega-three wrote:
michiguel wrote:
Dr.Wael Deeb wrote:I am surprised that a skilled programmer like H.G.Muller is not aware of this fact....
Dr.D
I wonder if you are talking about 5 pc and he may be talking about 6 pc tablebases.

In my own 5-pc generator, when I use two cpus, the time for generation goes down to almost half. The whole calculation is done in Memory (less than 2 Gb needed).

If I develop a 6-pc generator the story will be totally different I guess.

Miguel

My quad has 4 Gb memory, but task manager says newTBGen.exe is using 575,808 k at 25% cpu wuth 74% system idle.
I guess you have a 4 CPU system and so 3 CPUs are idle.
Hi Dann

Yes its a 4 cpu system with 3 CPUs idle. Perhaps there is a newer version of TBGen for 5 man available somewhere. the version I am using is 1.0.0.1 copyright 1999.
I am not sure what generator you are using, but most can be run in parallel.

I guess that you can have 4 instances running, because you can specifically name the files you want to create with most generators.
Its a chessbase generator from 1999 I think, If I try to run more than one instance it will start generatingthe same tbs. I tried to select a different tbs for each instance to have a go at, but no dice :-(
Is it for Nalimov format tablebase files or some other format?
Nalimov.
Charles B.

Re: MP tablebase generator

Post by Charles B. »

I've wanted to ask this question for a while, so hoping Mr. Hurd doesn't mind me asking in this thread.

Mr. Corbit,

On your website at this link the source code for the commandline Nalimov tablebase generator is available.

http://cap.connx.com/chess-engines/new- ... /TBGEN.ZIP

The read me file included in the zip file says this for compiling with GNU:
If you are using GNU C, use
gcc -O2 -o tbgen tbgen.cpp

When compiling with Cygwin these errors show up:

Code: Select all

$ gcc -O2 -o tbgen tbgen.cpp
In file included from tbgen.cpp:321:
tbindex.cpp: In function `int FCheckExistance(char*, int, color)':
tbindex.cpp:4093: error: invalid conversion from `const char*' to `char*'
tbgen.cpp: In function `void VCreateTable(int, int)':
tbgen.cpp:2446: error: invalid conversion from `const char*' to `char*'

Is it possible that earlier versions of Cygwin could compile the sources error free, and that today's versions somehow can't? Not a stupid question I hope. I have reasons for wanting to compile it, that's why I ask.
Dann Corbit
Posts: 12792
Joined: Wed Mar 08, 2006 8:57 pm
Location: Redmond, WA USA

Re: MP tablebase generator

Post by Dann Corbit »

Charles B. wrote:I've wanted to ask this question for a while, so hoping Mr. Hurd doesn't mind me asking in this thread.

Mr. Corbit,

On your website at this link the source code for the commandline Nalimov tablebase generator is available.

http://cap.connx.com/chess-engines/new- ... /TBGEN.ZIP

The read me file included in the zip file says this for compiling with GNU:
If you are using GNU C, use
gcc -O2 -o tbgen tbgen.cpp

When compiling with Cygwin these errors show up:

Code: Select all

$ gcc -O2 -o tbgen tbgen.cpp
In file included from tbgen.cpp:321:
tbindex.cpp: In function `int FCheckExistance(char*, int, color)':
tbindex.cpp:4093: error: invalid conversion from `const char*' to `char*'
tbgen.cpp: In function `void VCreateTable(int, int)':
tbgen.cpp:2446: error: invalid conversion from `const char*' to `char*'

Is it possible that earlier versions of Cygwin could compile the sources error free, and that today's versions somehow can't? Not a stupid question I hope. I have reasons for wanting to compile it, that's why I ask.
The two instances above both need a cast.
Here is what I am currently using:
http://cap.connx.com/chess-engines/new- ... v_code.zip

Not sure if those problems are cured or not, but I know that the above code does work properly for the 6 man files.
Dann Corbit
Posts: 12792
Joined: Wed Mar 08, 2006 8:57 pm
Location: Redmond, WA USA

Re: MP tablebase generator

Post by Dann Corbit »

Dann Corbit wrote:
Charles B. wrote:I've wanted to ask this question for a while, so hoping Mr. Hurd doesn't mind me asking in this thread.

Mr. Corbit,

On your website at this link the source code for the commandline Nalimov tablebase generator is available.

http://cap.connx.com/chess-engines/new- ... /TBGEN.ZIP

The read me file included in the zip file says this for compiling with GNU:
If you are using GNU C, use
gcc -O2 -o tbgen tbgen.cpp

When compiling with Cygwin these errors show up:

Code: Select all

$ gcc -O2 -o tbgen tbgen.cpp
In file included from tbgen.cpp:321:
tbindex.cpp: In function `int FCheckExistance(char*, int, color)':
tbindex.cpp:4093: error: invalid conversion from `const char*' to `char*'
tbgen.cpp: In function `void VCreateTable(int, int)':
tbgen.cpp:2446: error: invalid conversion from `const char*' to `char*'

Is it possible that earlier versions of Cygwin could compile the sources error free, and that today's versions somehow can't? Not a stupid question I hope. I have reasons for wanting to compile it, that's why I ask.
The two instances above both need a cast.
Here is what I am currently using:
http://cap.connx.com/chess-engines/new- ... v_code.zip

Not sure if those problems are cured or not, but I know that the above code does work properly for the 6 man files.
This version will work with mingw:
http://cap.connx.com/chess-engines/new- ... wtbgen.zip

Also, here are 64 bit windows binaries:

Tablebase compressor program:
http://cap.connx.com/chess-engines/new- ... MP.EXE.bz2

Tablebase comparison function:
http://cap.connx.com/chess-engines/new- ... MP.EXE.bz2

Tablebase generator:
http://cap.connx.com/chess-engines/new- ... EN.EXE.bz2

Tablebase statistics calculator:
http://cap.connx.com/chess-engines/new- ... AT.EXE.bz2
Dann Corbit
Posts: 12792
Joined: Wed Mar 08, 2006 8:57 pm
Location: Redmond, WA USA

Re: MP tablebase generator

Post by Dann Corbit »

Omega-three wrote:
Dann Corbit wrote:
Omega-three wrote:
Dann Corbit wrote:
Omega-three wrote:
Dann Corbit wrote:
Omega-three wrote:
michiguel wrote:
Dr.Wael Deeb wrote:I am surprised that a skilled programmer like H.G.Muller is not aware of this fact....
Dr.D
I wonder if you are talking about 5 pc and he may be talking about 6 pc tablebases.

In my own 5-pc generator, when I use two cpus, the time for generation goes down to almost half. The whole calculation is done in Memory (less than 2 Gb needed).

If I develop a 6-pc generator the story will be totally different I guess.

Miguel

My quad has 4 Gb memory, but task manager says newTBGen.exe is using 575,808 k at 25% cpu wuth 74% system idle.
I guess you have a 4 CPU system and so 3 CPUs are idle.
Hi Dann

Yes its a 4 cpu system with 3 CPUs idle. Perhaps there is a newer version of TBGen for 5 man available somewhere. the version I am using is 1.0.0.1 copyright 1999.
I am not sure what generator you are using, but most can be run in parallel.

I guess that you can have 4 instances running, because you can specifically name the files you want to create with most generators.
Its a chessbase generator from 1999 I think, If I try to run more than one instance it will start generatingthe same tbs. I tried to select a different tbs for each instance to have a go at, but no dice :-(
Is it for Nalimov format tablebase files or some other format?
Nalimov.
The nalimov generator will build individual files as you choose. For instance:

Code: Select all

C:\chess\winboard\Nalimov>tbgen
Usage: tbgen options tablebases

Valid options:
  -m number - specify memory size (in Mb)
  -c number - specify TB cache size (in Mb)
  -d dirs   - search TBs in the specified directories
  -p        - use file mapping (Win32 only) or virtual memory
              (do not use -p together with -c when creating tablebase)
  -e        - verify existing tablebases
              (you must to specify -c when verifying tablebase)
  -v        - verbose mode
  -q        - query tablebases
  -i        - generator will run with low priority

Example: tbgen -m 570 -p -d c:\tb;d:\tb kbpkb

C:\chess\winboard\Nalimov>tbgen -m 1024 -c 64 -d . kqqqk
Starting kqqqk
  All minor for kqqqk exists, generating it
  kqqqk wtm: Determining file size
  kqqqk wtm: File size: 12479974 bytes
  kqqqk btm: Determining file size
  kqqqk btm: File size: 17472840 bytes
  kqqqk wtm: Creating file
  kqqqk btm: Creating file
  kqqqk wtm: Starting major iteration 1
  kqqqk btm: Starting major iteration 1
  kqqqk wtm: Starting major iteration 2
  kqqqk btm: Starting major iteration 2
  kqqqk wtm: Starting major iteration 3
  kqqqk btm: Starting major iteration 3
  kqqqk wtm: Starting major iteration 4
  kqqqk btm: Starting major iteration 4
  kqqqk btm: Done
kqqqk done in 3 minutes 23 seconds

All done in 3 minutes 23 seconds

C:\chess\winboard\Nalimov>
Charles B.

Re: MP tablebase generator

Post by Charles B. »

Dann Corbit wrote:The two instances above both need a cast.
Here is what I am currently using:
http://cap.connx.com/chess-engines/new- ... v_code.zip

Not sure if those problems are cured or not, but I know that the above code does work properly for the 6 man files.
The source code in the nalimov_code zip file produced the same errors while compiling that I posted above.

But that is good. I do not know much about programming language but with your lead of "The two instances above both need a cast." it will give me motivation to learn a little. Hopefully no more compiling errors will appear after those two are fixed.



Dann Corbit wrote:This version will work with mingw:
http://cap.connx.com/chess-engines/new- ... wtbgen.zip
This one compiled without error with MinGW in Cygwin.


Thank you for the explanation and the other links you posted also.