Hello,
I want to add tablebase support for my 32-bit Visual Basic chess engine ChessbrainVB.
Are there any 32 bit Dlls to access tablebase files? May be for some older bitbases like Scorpio?
My current solution is using Fathom.exe output for root moves - so very slow and not usable for search.
Thank you, Roger
Looking for 32-bit dll to probe tablebases
Moderator: Ras
-
- Posts: 9
- Joined: Fri Sep 04, 2015 11:22 am
- Location: Germany
-
- Posts: 28353
- Joined: Fri Mar 10, 2006 10:06 am
- Location: Amsterdam
- Full name: H G Muller
Re: Looking for 32-bit dll to probe tablebases
For Scorpio bitbases that must exist. I remember interfacing WinBoard to it (and I always compiled WinBoard for 32 bit).
-
- Posts: 4186
- Joined: Tue Mar 14, 2006 11:34 am
- Location: Ethiopia
Re: Looking for 32-bit dll to probe tablebases
Yes, that is correct.
New exciting feature: You can now load and probe neural networks with it as well, both lc0 & scorpio format.
It uses Tensorflow and TensorRT backends with automatic multi-threaded batching and gets the same nps
as lc0. It is also very easy to add new network formats as the network structure is saved with the weights unlike lc0's.
All it cares about are the input planes and outputs (value+policy) match, you can use any operations within the body.
New exciting feature: You can now load and probe neural networks with it as well, both lc0 & scorpio format.
It uses Tensorflow and TensorRT backends with automatic multi-threaded batching and gets the same nps
as lc0. It is also very easy to add new network formats as the network structure is saved with the weights unlike lc0's.
All it cares about are the input planes and outputs (value+policy) match, you can use any operations within the body.
-
- Posts: 4624
- Joined: Tue Apr 03, 2012 4:28 pm
- Location: Midi-Pyrénées
- Full name: Christopher Whittington
Re: Looking for 32-bit dll to probe tablebases
Can a user define number of planes, number of auxiliary inputs? Can she define policy output space and value category space?Daniel Shawul wrote: ↑Mon Apr 01, 2019 3:32 pm Yes, that is correct.
New exciting feature: You can now load and probe neural networks with it as well, both lc0 & scorpio format.
It uses Tensorflow and TensorRT backends with automatic multi-threaded batching and gets the same nps
as lc0. It is also very easy to add new network formats as the network structure is saved with the weights unlike lc0's.
All it cares about are the input planes and outputs (value+policy) match, you can use any operations within the body.
-
- Posts: 4186
- Joined: Tue Mar 14, 2006 11:34 am
- Location: Ethiopia
Re: Looking for 32-bit dll to probe tablebases
It is not yet configurable like that but maybe i should do that if there is enough interest in it.
At the moment, you have to add code manually to make your network work with egbbdll, but it is not a lot of work.
Currently it supports the following input and output planes.
Inputs:
Outputs:
Value:
Policy:
Adding other move to index mappings should be possible with a little bit of work but probably no need.
If you tell me your input/output planes, i can quickly implement them for you.
I tested scorpio+using leela ID-32930 using V100 against stockfish-dev-single thread at 40 / 1min. The score was about 52% after 1000 games
for scorpio+leela. So it is pretty competitive implementation that can be used with any network format with much ease.
Daniel
At the moment, you have to add code manually to make your network work with egbbdll, but it is not a lot of work.
Currently it supports the following input and output planes.
Inputs:
Code: Select all
Simple format: 12 piece locations
Scorpio format: 12 piece + 12 attack planes
Lc0 format: 8 history planes of 13 planes, and other planes for castling, fifty etc
Value:
Code: Select all
Single value (lc0 30x nets use this)
WDL value (Scorpio uses this)
Code: Select all
A0 format: 73 convolutions for the policy head (~4000 policy outputs) -- scorpio uses this too
Lc0 format: 1858 policy outputs
If you tell me your input/output planes, i can quickly implement them for you.
I tested scorpio+using leela ID-32930 using V100 against stockfish-dev-single thread at 40 / 1min. The score was about 52% after 1000 games
for scorpio+leela. So it is pretty competitive implementation that can be used with any network format with much ease.
Daniel
-
- Posts: 4624
- Joined: Tue Apr 03, 2012 4:28 pm
- Location: Midi-Pyrénées
- Full name: Christopher Whittington
Re: Looking for 32-bit dll to probe tablebases
Oh, thanks! I’ve not yet tied down any of the final numbers, input planes are about 100, but that’s targeted to increase. Enhanced numeric inputs fed into the value head are 12, I think, but targeted to increase when I get round to it. Policy out is a wasteful 4096, and value out is 3, policy is targeted for efficiency reduction, and value is open to experiments, but none are at top of todo list. Right now everything is stable and learning gradual and consistent, so really, the next step upwards is search. The basics of UCT are straightforward, but I admit to being a bit unclear on how to parallelise, wait and find other useful things to do.Daniel Shawul wrote: ↑Mon Apr 01, 2019 9:40 pm It is not yet configurable like that but maybe i should do that if there is enough interest in it.
At the moment, you have to add code manually to make your network work with egbbdll, but it is not a lot of work.
Currently it supports the following input and output planes.
Inputs:Outputs:Code: Select all
Simple format: 12 piece locations Scorpio format: 12 piece + 12 attack planes Lc0 format: 8 history planes of 13 planes, and other planes for castling, fifty etc
Value:Policy:Code: Select all
Single value (lc0 30x nets use this) WDL value (Scorpio uses this)
Adding other move to index mappings should be possible with a little bit of work but probably no need.Code: Select all
A0 format: 73 convolutions for the policy head (~4000 policy outputs) -- scorpio uses this too Lc0 format: 1858 policy outputs
If you tell me your input/output planes, i can quickly implement them for you.
I tested scorpio+using leela ID-32930 using V100 against stockfish-dev-single thread at 40 / 1min. The score was about 52% after 1000 games
for scorpio+leela. So it is pretty competitive implementation that can be used with any network format with much ease.
Daniel