Page 3 of 30

Re: Introducing Igel chess engine

Posted: Thu Aug 20, 2020 1:53 pm
by Dokterchen
Great news, Volodymyr!

Re: Introducing Igel chess engine

Posted: Thu Aug 20, 2020 2:05 pm
by peter
voffka wrote: Thu Aug 20, 2020 10:57 am Hello peter,
peter wrote: Thu Aug 20, 2020 9:53 am At your github- site there's a Igel_2_7_0.nnue to be downloaded too. Works with SF NNUE also, is it for Igel only?
Technically Igel's NNUE implementation is compatible with SF networks in Igel 2.7.0 release, but due to the reasons above I recommend to use the network supplied with Igel release. This compatibility may change in the future versions.
3,5 points out of 4 games:

https://tcec-chess.com/

Go, Igel, go!
:)

Pity there's just avx2-compiles for download, I can use SSE4.2-popcnt at the utmost.
:oops:

Re: Introducing Igel chess engine

Posted: Thu Aug 20, 2020 2:09 pm
by voffka
Let me know which compiles you want to have, I put avx2 as it is most common, but I can do SSE and AVX512, etc.

Re: Introducing Igel chess engine

Posted: Thu Aug 20, 2020 4:44 pm
by Sam Watson
voffka wrote: Wed Aug 19, 2020 11:56 pmAs a starting point the NNUE implementation in Igel is compatible with networks used by Stockfish, however I would discourage use of Stockfish network in Igel due to the following reasons:

1. Training of network is a complicated work, some may call it an art, so work of those people spending time training networks for Stockfish cannot be just used in Igel without their permissions

2. Other networks may be not working so well with Igel because of Igel’s search algorithm pruning conditions and scaling of network may be different

3. In near future the NNUE architecture in Igel may change if I chose to experiment with different features

4. I am currently working on a NNUE learner that is based solely on Igel search and most of the search parameters are going to be adapted to Igel based networks
Interesting points. Individual engines each training a net also seems a little unhelpful, like a computing resource drain for one. May I suggest thought is given to combining resources with other developers by creating some sort of net development similar to OpenBench which I know you are a supporter of.

Re: Introducing Igel chess engine

Posted: Thu Aug 20, 2020 5:04 pm
by peter
voffka wrote: Thu Aug 20, 2020 2:09 pm Let me know which compiles you want to have, I put avx2 as it is most common, but I can do SSE and AVX512, etc.
SSE4.2-popcnt, if your compiler has flags for that, which I don't think there are any, so SSE4.1- popcnt for example or anything like this. The popcnt-avx2- compile even gets started in console but doesn't get loaded in GUI, at least not in Fritz.
My CPU is Intel Xeon X5670 x 12.
Thankful regards

Re: Introducing Igel chess engine

Posted: Thu Aug 20, 2020 5:44 pm
by dkappe
Sam Watson wrote: Thu Aug 20, 2020 4:44 pm
voffka wrote: Wed Aug 19, 2020 11:56 pmAs a starting point the NNUE implementation in Igel is compatible with networks used by Stockfish, however I would discourage use of Stockfish network in Igel due to the following reasons:

1. Training of network is a complicated work, some may call it an art, so work of those people spending time training networks for Stockfish cannot be just used in Igel without their permissions

2. Other networks may be not working so well with Igel because of Igel’s search algorithm pruning conditions and scaling of network may be different

3. In near future the NNUE architecture in Igel may change if I chose to experiment with different features

4. I am currently working on a NNUE learner that is based solely on Igel search and most of the search parameters are going to be adapted to Igel based networks
Interesting points. Individual engines each training a net also seems a little unhelpful, like a computing resource drain for one. May I suggest thought is given to combining resources with other developers by creating some sort of net development similar to OpenBench which I know you are a supporter of.
These nets can have very different playing styles. Check out the toga, ice, Komodo and Bad Gyal derived nnue. Each a style of its own.

Re: Introducing Igel chess engine

Posted: Thu Aug 20, 2020 6:43 pm
by Werner
Inside Arena the engine uses always the default network - even when there is an eval folder with an nn.bin.

NN.bin is only used when I manually config the engine with ok.

So maybe the uci option is not correct configured?

edit
Found an easy solution: use another name for the net, e.g. ninu-0.2.bin

Re: Introducing Igel chess engine

Posted: Thu Aug 20, 2020 7:46 pm
by voffka
Hello Sam,
Sam Watson wrote: Thu Aug 20, 2020 4:44 pm Interesting points. Individual engines each training a net also seems a little unhelpful, like a computing resource drain for one. May I suggest thought is given to combining resources with other developers by creating some sort of net development similar to OpenBench which I know you are a supporter of.
Using OpenBench as a training facility is an interesting idea. In my opinion, two major factors must align for this to happen:

1. Wide adoption of NNUE among OpenBench engines family (so far only Igel uses it)

2. Andrew Grant must agree it is a good idea :)

Either choices will take some time, so it is unlikely to happen in the near future. But as a training resource in my opinion OpenBench has enormous capabilities to produce strong networks that could be even stronger than SV nets (that is unless fishtest develops their distributed network for training which is likely to happen).

Re: Introducing Igel chess engine

Posted: Thu Aug 20, 2020 7:57 pm
by voffka
Werner wrote: Thu Aug 20, 2020 6:43 pm Inside Arena the engine uses always the default network - even when there is an eval folder with an nn.bin.
edit
Found an easy solution: use another name for the net, e.g. ninu-0.2.bin
This small glitch is fine with me as I advocate the use of default network in Igel :D

Re: Introducing Igel chess engine

Posted: Thu Aug 20, 2020 7:58 pm
by voffka
peter wrote: Thu Aug 20, 2020 5:04 pm SSE4.2-popcnt
Thanks, I'll check and let you know.