You are correct in all accounts. I have not much to add.mvanthoor wrote: ↑Thu Nov 19, 2020 11:16 amThe fact that NNUE gains you 1000 Elo just means that your search is quite good, and your evaluation was junk. If I have this correct, Stockfish 12 has NNUE built in. Between 11 and 12, SF gained somewhere along the lines of 30-35 Elo. It means that its handcrafted evaluation was about as perfect as humans can make/tune it.JohnWoe wrote: ↑Fri Nov 13, 2020 12:18 am Nice to see others testing Mayhem too. I'm curious of the level. Since in my tests Mayhem performs better than Crafty 25.6 which is 2950 Elo.
With Sapeli I was struggling against 1900 Elo FairyMax. Now I'm in the big boys league. 60% score against 2953 Elo Crafty 25.6.![]()
More strange is Mayhem is 1200 sloc. Sapeli is 1700 lines. I took 500 sloc out and gained 1000 Elo.
To be honest credits for the 1000 Elo boost go to the SF NNUE evaluation. Without it Mayhem is probably 1800 Elo.![]()
In short: if you write a decent search, *EVERYBODY* is in the "big boys" league as soon as they implement SF's NNUE. Why? Because a basic engine with no features is somewhere around 1600 Elo. (Such as my current engine.) Engines with some features, such as VICE, BBC, and yes, Sapeli, are somehwere around 2000 Elo. And as soon as you stick a NNUE on top of them, they gain 800-1000 Elo (more Elo if the search is faster).
So it's no wonder that a small engine with a few features + NNUE is at least 2950 as soon as you stick a NNUE on top of it.
That is the entire reason why so many people have an aversion against using the NNUE tech from another engine. It's a cheapskate way to rocket yourself into the big boys league. You can basically do it by cloning any +/- 2000 Elo engine you want, renaming it, and attaching someone else's NNUE to it.
Have fun; I'd have rather tested my engine against Sapeli, and then have it creep up the rating ladder version by version, and actually have an engine I at least know what it's doing.
But Sapeli was ok in tactics. It scored 286/300 in WAC. It lacked good evaluation.
My goal wasn't to clone a little bit and leave all sub-2500 engines bite the dust ( Or maybe it was

I wanted to get rid of the horrible HCE and replace it with something simple.
This is the only place I use NNUE library: https://github.com/SamuraiDangyo/mayhem ... m.hpp#L926
Mayhem is super modular. NNUE is just a library.
A few corrections. I took the code from Maksim. Which is Dr. Shawful's NNUE library code. (I believe). I'm not sure.Madeleine Birchfield wrote: ↑Thu Nov 19, 2020 11:36 am ..
Agreed. If Sapeli were to go NNUE I would prefer it to be implemented from scratch, not copied directly from the Stockfish codebase, and trained on Sapeli evaluations. Do what the Komodo developers did.
Otherwise be honest and call the engine Mayhem Stockfish NNUE, like what the BBC author did. And TCEC would never accept such an engine in the first place if it ends up having a copy of Stockfish evaluation.
I use Stockfish's EvalFile.
I have done some trivial cleanups on the NNUE lib. Ok. I fixed one leak. So Mayhem 1.1 is leak proof.