Final Release of Ethereal, V12.75

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

Moderators: hgm, Rebel, chrisw

User avatar
maksimKorzh
Posts: 771
Joined: Sat Sep 08, 2018 5:37 pm
Location: Ukraine
Full name: Maksim Korzh

Re: Final Release of Ethereal, V12.75

Post by maksimKorzh »

Just curious what you gonna pick up next to compete within?
User avatar
Rebel
Posts: 6991
Joined: Thu Aug 18, 2011 12:04 pm

Re: Final Release of Ethereal, V12.75

Post by Rebel »

nabildanial wrote: Sat Oct 10, 2020 7:18 pm
Rebel wrote: Sat Oct 10, 2020 4:58 pm
AndrewGrant wrote: Sat Oct 10, 2020 11:50 am https://github.com/AndyGrant/Ethereal/tree/nnue
Pushed NNUE support to a branch. You can load in a file. Stockfish weights are preferred.
If anyone tests this for a rating list, it should be called "Ethereal 12.75 SF-NNUE".
That branch actually works, unlike the Etherlito crap which broke due to memory alignments on POSIX.
Anyone who is willing to share an x64-popcount version?
Here is a compile using the "make release" flag.

Thank you.
90% of coding is debugging, the other 10% is writing bugs.
syzygy
Posts: 5557
Joined: Tue Feb 28, 2012 11:56 pm

Re: Final Release of Ethereal, V12.75

Post by syzygy »

Albert Silver wrote: Sat Oct 10, 2020 5:09 pm In fact, the actual NNUE codebase in SF that was added is of complex status concerning the GPL. I speak specifically of the learning/training code. Sure, it is licensed under GPL, and I am not arguing that, but who's GPL license is the real question.
As long as it is GPLv3, there is no question whatsoever. Dozens if not hundreds of people have copyrights in SF. This is the whole point I am making, there is no closed team of developers. If some code of you is in Stockfish, you can ask that your name be added to the AUTHORS list. The whole point of the Stockfish project is that everybody can join in.
There is a reason the code is full of internal comments that bear no resemblance to chess, and these are not just because of a translation gone bad.
First of all, what is the problem exactly?
Second, can you give an example? I don't quite recognise what you are saying.
https://github.com/official-stockfish/S ... r/src/nnue
AndrewGrant
Posts: 1752
Joined: Tue Apr 19, 2016 6:08 am
Location: U.S.A
Full name: Andrew Grant

Re: Final Release of Ethereal, V12.75

Post by AndrewGrant »

Alright, I've watched like 4 people now compile things wrong. Here are compiles for Intel and AMD.
If you have a modern Intel box, the PEXT compiles will beat the POPCNT compiles.
If you have a machine which supports them: AVX2 >>> SSE4.1 >>>>>>>>>>> SSSE3. This makes a massive difference.

To give you an idea of the difference: Ethereal beats SF 12 (if SF 12 does not use an NNUE) when using the AVX2 compile on my machine. That is not true for the SSE4.1 compile. It is very untrue for the SSSE3 compile.

If you downloaded a compile from someone else, or even made your own, please delete your binary and download one of mine, or pull down the fix I just made and again use "make", "make popcnt", or "make pext". This is my fault for not adding the optimized Instruction Sets to anything other than the "for my own PC" targets.



If you have a BMI2 / PEXT supported (Intel) Machine:
Best download is Ethereal-x64-pext-avx2.exe
Next best download is Ethereal-x64-pext-sse41.exe
Worst possible download is Ethereal-x64-pext-ssse3.exe

If you have an AMD Machine, or an non BMI2/PEXT Intel Machine:
Best download is Ethereal-x64-popcnt-avx2.exe
Next best download is Ethereal-x64-popcnt-sse41.exe
Worst possible download is Ethereal-x64-popcnt-ssse3.exe

In that google drive is an NNUE Weights File. It is one used by Stockfish. It is the official Network for "Ethereal 12.75 SF-NNUE". ANYONE WHO USES ETHEREAL AND POSTS ITS RESULTS USING THIS NNUE FILE, PLEASE NAME IT AS "Ethereal 12.75 SF-NNUE"
Last edited by AndrewGrant on Sat Oct 10, 2020 11:47 pm, edited 1 time in total.
#WeAreAllDraude #JusticeForDraude #RememberDraude #LeptirBigUltra
"Those who can't do, clone instead" - Eduard ( A real life friend, not this forum's Eduard )
syzygy
Posts: 5557
Joined: Tue Feb 28, 2012 11:56 pm

Re: Final Release of Ethereal, V12.75

Post by syzygy »

Albert Silver wrote: Sat Oct 10, 2020 5:09 pm
syzygy wrote: Sat Oct 10, 2020 1:04 pm Btw, if I am not mistaken, the original Shogi NNUE engine was based on Stockfish.
Apparently what I wrote, which was also not complex, is not understood at all since literally nothing what you wrote above corresponds to what I stated in any way or form. And yes, you are mistaken about the Shogi NNUE engine. There are many engines in Shogi, almost all of which have NNUE support (all that I know of, but maybe not all), and they are not a list of 'SF clones'. They borrowed ideas, not copy-and-pasted code.
Well, I guess we again have a very different understanding.
https://github.com/ynasu87/nnue/blob/ma ... picker.cpp
This is straight out of Stockfish, which is fine.
User avatar
MikeB
Posts: 4889
Joined: Thu Mar 09, 2006 6:34 am
Location: Pen Argyl, Pennsylvania

Re: Final Release of Ethereal, V12.75

Post by MikeB »

Thanks Andrew. Cleary the top individual chess programmer over the last 6 years. You will be missed. God Bless.
Image
User avatar
Guenther
Posts: 4605
Joined: Wed Oct 01, 2008 6:33 am
Location: Regensburg, Germany
Full name: Guenther Simon

Re: Final Release of Ethereal, V12.75

Post by Guenther »

AndrewGrant wrote: Sat Oct 10, 2020 11:27 pm ...
Worst possible download is Ethereal-x64-popcnt-ssse3.exe
...
I think I can compile an even worse (nps-wise) one, but running on my hardware ;-)

nopopcount/SSE4.1
https://rwbc-chess.de

trollwatch:
Chessqueen + chessica + AlexChess + Eduard + Sylwy
User avatar
Rebel
Posts: 6991
Joined: Thu Aug 18, 2011 12:04 pm

Re: Final Release of Ethereal, V12.75

Post by Rebel »

AndrewGrant wrote: Sat Oct 10, 2020 11:27 pm Alright, I've watched like 4 people now compile things wrong. Here are compiles for Intel and AMD.
If you have a modern Intel box, the PEXT compiles will beat the POPCNT compiles.
If you have a machine which supports them: AVX2 >>> SSE4.1 >>>>>>>>>>> SSSE3. This makes a massive difference.

To give you an idea of the difference: Ethereal beats SF 12 (if SF 12 does not use an NNUE) when using the AVX2 compile on my machine. That is not true for the SSE4.1 compile. It is very untrue for the SSSE3 compile.

If you downloaded a compile from someone else, or even made your own, please delete your binary and download one of mine, or pull down the fix I just made and again use "make", "make popcnt", or "make pext". This is my fault for not adding the optimized Instruction Sets to anything other than the "for my own PC" targets.



If you have a BMI2 / PEXT supported (Intel) Machine:
Best download is Ethereal-x64-pext-avx2.exe
Next best download is Ethereal-x64-pext-sse41.exe
Worst possible download is Ethereal-x64-pext-ssse3.exe

If you have an AMD Machine, or an non BMI2/PEXT Intel Machine:
Best download is Ethereal-x64-popcnt-avx2.exe
Next best download is Ethereal-x64-popcnt-sse41.exe
Worst possible download is Ethereal-x64-popcnt-ssse3.exe

In that google drive is an NNUE Weights File. It is one used by Stockfish. It is the official Network for "Ethereal 12.75 SF-NNUE". ANYONE WHO USES ETHEREAL AND POSTS ITS RESULTS USING THIS NNUE FILE, PLEASE NAME IT AS "Ethereal 12.75 SF-NNUE"
Ethereal 12.75 SF-NNUE +172

http://rebel13.nl/dump/mrl-lcx.html
90% of coding is debugging, the other 10% is writing bugs.
AndrewGrant
Posts: 1752
Joined: Tue Apr 19, 2016 6:08 am
Location: U.S.A
Full name: Andrew Grant

Re: Final Release of Ethereal, V12.75

Post by AndrewGrant »

Rebel wrote: Sun Oct 11, 2020 12:31 am Ethereal 12.75 SF-NNUE +172

http://rebel13.nl/dump/mrl-lcx.html
Would you be interested in adding Stockfish 12 Classical to your list? I'm interested in that Ethereal without NNUE actually beats out Komodo and Houdini. Maybe an indicator that Ethereal's evaluation is very solid? I would not be surprised if it beats Komodo's. They've got more knowledge, but I'm confident mine is tuned better.
#WeAreAllDraude #JusticeForDraude #RememberDraude #LeptirBigUltra
"Those who can't do, clone instead" - Eduard ( A real life friend, not this forum's Eduard )
perejaslav
Posts: 240
Joined: Sat Mar 18, 2006 4:01 am
Location: Cold

Re: Final Release of Ethereal, V12.75

Post by perejaslav »

Code: Select all

Result:
----------------------------------------------------------------------------------------
  #  name                        games    wins   draws  losses   score    los%  elo+/-
  1. Ethereal 12.75 NNUE (PEXT)   1000     575     341      84   745.5   100.0   186.7
  2. Ethereal 12.75 (PEXT)        1000      84     341     575   254.5     0.0  -186.7

Tech:
----------------------------------------------------------------------------------------

Tech (average nodes, depths, time/m per move, others per game), counted for computing moves only, ignored moves with zero nodes:
  #  name                          nodes/m         NPS  depth/m   time/m    moves     time
  1. Ethereal 12.75 NNUE (PEXT)       141K      543227     14.5      0.3     58.7     15.2
  2. Ethereal 12.75 (PEXT)            244K      935722     15.6      0.3     58.9     15.4
STC=10"+0.1" :roll: