Using Neural Network or Syzygy tables

Discussion of chess software programming and technical issues.

Moderator: Ras

OliverBr
Posts: 794
Joined: Tue Dec 18, 2007 9:38 pm
Location: Munich, Germany
Full name: Dr. Oliver Brausch

Re: Using Neural Network or Syzygy tables

Post by OliverBr »

op12no2 wrote: Fri Jun 06, 2025 9:59 pm I have to admit though, that I would like to see more classification within the rating lists, but when you start thinking about it, it's a can of worms...
So it's a can of worms, too, that in sport competitions there a different ratings for young and old, women and men.. Oh no, I didn't say this ;)
Chess Engine OliThink: http://brausch.org/home/chess
OliThink GitHub:https://github.com/olithink
OliverBr
Posts: 794
Joined: Tue Dec 18, 2007 9:38 pm
Location: Munich, Germany
Full name: Dr. Oliver Brausch

Re: Using Neural Network or Syzygy tables

Post by OliverBr »

JacquesRW wrote: Fri Jun 06, 2025 9:56 pm
op12no2 wrote: Fri Jun 06, 2025 9:32 pm I agree; bullet turns ideas into reality, just like a compiler does;
Part of bullet is an optimising ML compiler :), albeit a little lacking in the codegen department at the moment (mostly network graph-level optimisations).
Shortly I'll acquire a lot more free time (finishing uni) and I aim to improve that aspect much further.
Hi JacquesRW,

is actually a brand new linux system a good system for your software to help create a fine neural network based on a existing chess engine with evaluation?

Surely there is some documentation and/or tutorial for this? What can you recommend?
Thank you!
Chess Engine OliThink: http://brausch.org/home/chess
OliThink GitHub:https://github.com/olithink
JacquesRW
Posts: 127
Joined: Sat Jul 30, 2022 12:12 pm
Full name: Jamie Whiting

Re: Using Neural Network or Syzygy tables

Post by JacquesRW »

OliverBr wrote: Fri Jun 13, 2025 8:21 am Hi JacquesRW,

is actually a brand new linux system a good system for your software to help create a fine neural network based on a existing chess engine with evaluation?
Yes, if it has a GPU. I assume by brand new you are referring to the hardware, but if you're using a bleeding-edge distro you might need to be aware of CUDA/HIP compatibility restrictions with things like the latest GCC/Clang.
OliverBr wrote: Fri Jun 13, 2025 8:21 am Surely there is some documentation and/or tutorial for this? What can you recommend?
Thank you!
https://github.com/jw1912/bullet/blob/m ... ontents.md
https://github.com/jw1912/bullet/blob/m ... _simple.rs
OliverBr
Posts: 794
Joined: Tue Dec 18, 2007 9:38 pm
Location: Munich, Germany
Full name: Dr. Oliver Brausch

Re: Using Neural Network or Syzygy tables

Post by OliverBr »

JacquesRW wrote: Fri Jun 13, 2025 3:18 pm
OliverBr wrote: Fri Jun 13, 2025 8:21 am Hi JacquesRW,

is actually a brand new linux system a good system for your software to help create a fine neural network based on a existing chess engine with evaluation?
Yes, if it has a GPU.
Ah no, it has not, because it's just a dedicated Linux Server with a great CPU. I should haven know from my experiences with Leela many years ago that a GPU could be a must.
So either I order a GPU-Server (which is no low cost by design) or I do it with my notebook.
I assume by brand new you are referring to the hardware, but if you're using a bleeding-edge distro you might need to be aware of CUDA/HIP compatibility restrictions with things like the latest GCC/Clang.
Can it be done with an MxUltra MacBook Pro? Do you know experiences with it? CUDA is probably a must?! And it would be MacOSX which it sometimes a pain.i.t...s compiling software.
EDIT: Of course CUDA ist only Nvidia, thus all those "fantastic" GPU Power in a Mx Mac was for nothing, if CUDA is a must.

Alternatively I could eGPU a strong NVidia GPU to an Intel MacBook. I have done it with Leela and worked fine.. a long time ago. But for anything later than Pascal only Windows is possible. But it would be much more sensible using those 40+ GPU Cores in a MacBoox MxUltra, wouldn't it?
Chess Engine OliThink: http://brausch.org/home/chess
OliThink GitHub:https://github.com/olithink
JacquesRW
Posts: 127
Joined: Sat Jul 30, 2022 12:12 pm
Full name: Jamie Whiting

Re: Using Neural Network or Syzygy tables

Post by JacquesRW »

OliverBr wrote: Sat Jun 14, 2025 7:37 pm Can it be done with an MxUltra MacBook Pro? Do you know experiences with it? CUDA is probably a must?! And it would be MacOSX which it sometimes a pain.i.t...s compiling software.
EDIT: Of course CUDA ist only Nvidia, thus all those "fantastic" GPU Power in a Mx Mac was for nothing, if CUDA is a must.

Alternatively I could eGPU a strong NVidia GPU to an Intel MacBook. I have done it with Leela and worked fine.. a long time ago. But for anything later than Pascal only Windows is possible. But it would be much more sensible using those 40+ GPU Cores in a MacBoox MxUltra, wouldn't it?
There isn't currently a metal (for the macbook) backend in bullet. There is a HIP backend though so an AMD gpu would also suffice.
I can't make any particular recommendations but you don't actually need a strong GPU for acceptable training speeds (and at the start even with a very old/cheap GPU the networks will be done in minutes anyway) - I myself have a GTX 1660 Super.
OliverBr
Posts: 794
Joined: Tue Dec 18, 2007 9:38 pm
Location: Munich, Germany
Full name: Dr. Oliver Brausch

Re: Using Neural Network or Syzygy tables

Post by OliverBr »

JacquesRW wrote: Sat Jun 14, 2025 8:27 pm There isn't currently a metal (for the macbook) backend in bullet. There is a HIP backend though so an AMD gpu would also suffice.
This is interesting info, because the AMD gpu in my macbook is capable.
Also, a MacBook with AMD gpu has an Intel Chip which is necessary for an eGPU to be plugged in. Only, that newer nVidia Chips are not supported under MacOSX, but in Windows (Bootcamp) they are.

Last question and thank you a lot:
Do you have reliable information about the OS your software is able to run? Linux, Windows, MacOSX? What is recommended in which version?
Chess Engine OliThink: http://brausch.org/home/chess
OliThink GitHub:https://github.com/olithink
JacquesRW
Posts: 127
Joined: Sat Jul 30, 2022 12:12 pm
Full name: Jamie Whiting

Re: Using Neural Network or Syzygy tables

Post by JacquesRW »

OliverBr wrote: Sat Jun 14, 2025 10:06 pm This is interesting info, because the AMD gpu in my macbook is capable.
Also, a MacBook with AMD gpu has an Intel Chip which is necessary for an eGPU to be plugged in. Only, that newer nVidia Chips are not supported under MacOSX, but in Windows (Bootcamp) they are.
There is a good chance that the AMD gpu does not have (official) support for HIP unless it is quite recent.
OliverBr wrote: Sat Jun 14, 2025 10:06 pm Last question and thank you a lot:
Do you have reliable information about the OS your software is able to run? Linux, Windows, MacOSX? What is recommended in which version?
It can run on all of them, it is just a case of the hardware and gpu software support, e.g. MacOSX might not support HIP, so the HIP backend would be unavailable. There are instructions on how to compile for Linux and Windows in the docs.
There is a very simple single-threaded CPU backend that would be suitable only for training the simplest of networks (it exists mainly to verify the other backends against), and this can definitely run on everything that rust supports as a compilation target (which is like everything relevant).

Btw it is easier to get help through the discord servers listed in https://github.com/jw1912/bullet?tab=re ... lpfeedback
jp
Posts: 1480
Joined: Mon Apr 23, 2018 7:54 am

Re: Using Neural Network or Syzygy tables

Post by jp »

AndrewGrant wrote: Mon May 26, 2025 12:03 am I'll just chime in at least to say that Syzygy tablebases are worth almost 0 elo now in the top engines.
So that aspect of "outsourc[ing]" is not really relevant.
OliverBr wrote: Wed May 28, 2025 11:13 pm It may be so for "Top" engines, especially with a neural net.
But: If you consider a "normal" engine, everything hand-crafted, own ideas, no neural network, I really do think, that Syzygy tablebases increase the ELO of such an engine.
Andrew, do you just mean that in practice top engines do not score better with TBs than without? Or do you also mean the much bigger claim that top engines are almost tablebase-like in precision in almost all endgames? (Is Lc0 good at endgames without TBs? That was not the case for a long time in the beginning.)
OliverBr
Posts: 794
Joined: Tue Dec 18, 2007 9:38 pm
Location: Munich, Germany
Full name: Dr. Oliver Brausch

Re: Using Neural Network or Syzygy tables

Post by OliverBr »

jp wrote: Mon Jun 16, 2025 10:28 am
AndrewGrant wrote: Mon May 26, 2025 12:03 am I'll just chime in at least to say that Syzygy tablebases are worth almost 0 elo now in the top engines.
So that aspect of "outsourc[ing]" is not really relevant.
OliverBr wrote: Wed May 28, 2025 11:13 pm It may be so for "Top" engines, especially with a neural net.
But: If you consider a "normal" engine, everything hand-crafted, own ideas, no neural network, I really do think, that Syzygy tablebases increase the ELO of such an engine.
Andrew, do you just mean that in practice top engines do not score better with TBs than without? Or do you also mean the much bigger claim that top engines are almost tablebase-like in precision in almost all endgames? (Is Lc0 good at endgames without TBs? That was not the case for a long time in the beginning.)
Thank you. He won't answer this, because he didn't even have the respect to answer to mine.
Chess Engine OliThink: http://brausch.org/home/chess
OliThink GitHub:https://github.com/olithink
AndrewGrant
Posts: 1955
Joined: Tue Apr 19, 2016 6:08 am
Location: U.S.A
Full name: Andrew Grant

Re: Using Neural Network or Syzygy tables

Post by AndrewGrant »

jp wrote: Mon Jun 16, 2025 10:28 am
AndrewGrant wrote: Mon May 26, 2025 12:03 am I'll just chime in at least to say that Syzygy tablebases are worth almost 0 elo now in the top engines.
So that aspect of "outsourc[ing]" is not really relevant.
OliverBr wrote: Wed May 28, 2025 11:13 pm It may be so for "Top" engines, especially with a neural net.
But: If you consider a "normal" engine, everything hand-crafted, own ideas, no neural network, I really do think, that Syzygy tablebases increase the ELO of such an engine.
Andrew, do you just mean that in practice top engines do not score better with TBs than without? Or do you also mean the much bigger claim that top engines are almost tablebase-like in precision in almost all endgames? (Is Lc0 good at endgames without TBs? That was not the case for a long time in the beginning.)
Can refer to this data from the Stockfish team:
https://github.com/official-stockfish/S ... ing-syzygy
I believe the effect has continued to grow. Diminishing the value of the tablebases even further.