New Engine: Mantissa

Questions and comments related to CCRL testing study
Post Reply
metlwing
Posts: 10
Joined: Sun Sep 19, 2021 4:50 am
Sign-up code: 10159

New Engine: Mantissa

Post by metlwing »

Hi all, my name is Jeremy. On and off since March I've been working to develop my engine, Mantissa. Up until now I had been primarily testing it out on lichess (https://lichess.org/@/AKS-Mantissa), but I would really appreciate the chance to get it tested here on CCRL! I'm actively working to improve its playing strength and would love to see how it measures up and where it can be strengthened.

It's an open source, UCI compatible engine and you can find the code here: https://github.com/jtheardw/mantissa

I've also used the release feature on github for the first time so you can get a windows executable (or linux if you prefer): https://github.com/jtheardw/mantissa/releases/tag/v2.1 (mantissa-x86_64.exe is the one you want).

It defaults to 64mb hash and 1 thread, but can support multithreading (via the `Threads` option) and can have the hash table resized provided it's not mid-search.

Thank you all for your time and let me know what you think or if there's any other info you need.
User avatar
Gabor Szots
Posts: 12833
Joined: Sat Dec 09, 2006 6:30 am
Sign-up code: 10159
Location: Szentendre, Hungary

Re: New Engine: Mantissa

Post by Gabor Szots »

Hi Jeremy,

I've put it in my testing queue. I would have done it earlier but waited for a public release.

May I ask you what country you are from?

EDIT: I tried to compile it via 'cargo build --release' but it was unsuccessful. The error I got was:
Compiling mantissa v2.1.0 (E:\Sakk\compiles\Mantissa (Rust)\mantissa-2.1)
error[E0554]: `#![feature]` may not be used on the stable release channel
--> src\main.rs:4:1
|
4 | #![feature(exclusive_range_pattern)]
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

For more information about this error, try `rustc --explain E0554`.
error: could not compile `mantissa` due to previous error
So it may require a nightly version?

EDIT2: I was successful with nightly but your compile is faster anyway.

BTW, the version it displays is 2.1.1.
metlwing
Posts: 10
Joined: Sun Sep 19, 2021 4:50 am
Sign-up code: 10159

Re: New Engine: Mantissa

Post by metlwing »

Ah, thanks for catching that! I'll update my readme with all that info.

Also, re: country, I'm from the United States. Thank again for setting up testing!
User avatar
Gabor Szots
Posts: 12833
Joined: Sat Dec 09, 2006 6:30 am
Sign-up code: 10159
Location: Szentendre, Hungary

Re: New Engine: Mantissa

Post by Gabor Szots »

metlwing wrote: Sun Sep 19, 2021 1:13 pm Ah, thanks for catching that! I'll update my readme with all that info.

Also, re: country, I'm from the United States. Thank again for setting up testing!
In fact I have just started a gauntlet with it.
Guenther
Posts: 24
Joined: Wed Nov 25, 2020 10:55 am
Sign-up code: 10159

Re: New Engine: Mantissa

Post by Guenther »

metlwing wrote: Sun Sep 19, 2021 1:13 pm Ah, thanks for catching that! I'll update my readme with all that info.

Also, re: country, I'm from the United States. Thank again for setting up testing!
I ran into the same error (independently from Gabor, as I was following Mantissa already for a while before).

This is quite unfortunate, because I cannot use a nightly version when compiling under Msys2.
They just had updated the mingw rust package a few days ago to 1.55.01 BTW.
As I am still on a hardware w/o popcount your compilation crashes always after sending any go command here.
May be you can compile a binary with ssse3 only support (this will cover even some older 64-bit hardware than mine)?

Six days ago I built your 20210905 version w/o problem on even an older rust version, so I guess you just recently
added code using this feature, I didn't check it myself.
User avatar
Gabor Szots
Posts: 12833
Joined: Sat Dec 09, 2006 6:30 am
Sign-up code: 10159
Location: Szentendre, Hungary

Re: New Engine: Mantissa

Post by Gabor Szots »

Guenther wrote: Sun Sep 19, 2021 1:37 pm I cannot use a nightly version when compiling under Msys2.
I was quite ignorant, I did not know I could do it so I installed rust independently of MSYS2.
metlwing
Posts: 10
Joined: Sun Sep 19, 2021 4:50 am
Sign-up code: 10159

Re: New Engine: Mantissa

Post by metlwing »

Oh no!

I'll work to make Mantissa more portable for people who don't have popcnt or the nightly toolchain. I'll post again when I think I've got it set up.

Thanks for bringing this to my attention.
metlwing
Posts: 10
Joined: Sun Sep 19, 2021 4:50 am
Sign-up code: 10159

Re: New Engine: Mantissa

Post by metlwing »

Guenther, I believe I've fixed the dependency on nightly (it's part of my tuning code so it was unnecessary to include it as a mod in the distributed engine). I've also added a script `build_portable` which should do the windows builds without requiring any specific features.

Sorry again for the inconvenience. I'll try to add a new executable to the release within the next few minutes as well which doesn't use the popcnt optimization.
User avatar
Gabor Szots
Posts: 12833
Joined: Sat Dec 09, 2006 6:30 am
Sign-up code: 10159
Location: Szentendre, Hungary

Re: New Engine: Mantissa

Post by Gabor Szots »

Jeremy, can you explain briefly how to use a script file together with cargo? I have read something about having to create environment variables but I would not want to use them.
Don't bother if it's not straightforward.
metlwing
Posts: 10
Joined: Sun Sep 19, 2021 4:50 am
Sign-up code: 10159

Re: New Engine: Mantissa

Post by metlwing »

Yeah, I can explain. Scripts like this are meant to be used in the command prompt. To my knowledge, you shouldn't need to set any environment variables for a typical build. You should just be able to navigate to the mantissa directory and run `cargo build --release`. The build scripts were mostly made for making use of certain optimizations and cross-compiling from my machine to windows, but you don't need to use them to build.

But I'll also explain my build scripts and env variables. Feel free to stop reading here if the above covered it.

I'll admit that I do all of my development on Linux so I haven't tested my build scripts on Windows. Though I do have a Windows machine at home too so going forward I'll also test there to make sure my stuff works for as many people as possible.

The shell scripts `build` and `build_windows` (ironically) are written for unix-like shells, and the environment variable syntax there is specific to it... Luckily, I don't think the `build_portable` script has any specific syntax that should limit the system it can run on. I'll be adding a batch file for Windows soon, but from my brief reading, I think the equivalent windows cmd line to the `build_windows` script should be:

```
set "RUSTFLAGS=-C target-feature=+popcnt"
cargo rustc --target=x86_64-pc-windows-gnu
cargo rustc --release --target=x86_64-pc-windows-gnu
```

That being said, you should be able to just use the normal cargo build method now to build on your machine. While having things like popcnt are nice, they aren't necessary for Mantissa to function or be competitive.
metlwing
Posts: 10
Joined: Sun Sep 19, 2021 4:50 am
Sign-up code: 10159

Re: New Engine: Mantissa

Post by metlwing »

Also, I've set up a new release with an executable that should work on any 64-bit Windows machine (https://github.com/jtheardw/mantissa/re ... .1.1compat)

I'll continue to improve the build scripts for people who prefer to use those by also testing the windows based ones on my windows machine (rather than just cross-compiling).
User avatar
Gabor Szots
Posts: 12833
Joined: Sat Dec 09, 2006 6:30 am
Sign-up code: 10159
Location: Szentendre, Hungary

Re: New Engine: Mantissa

Post by Gabor Szots »

metlwing wrote: Sun Sep 19, 2021 2:14 pm Yeah, I can explain. Scripts like this are meant to be used in the command prompt. To my knowledge, you shouldn't need to set any environment variables for a typical build. You should just be able to navigate to the mantissa directory and run `cargo build --release`. The build scripts were mostly made for making use of certain optimizations and cross-compiling from my machine to windows, but you don't need to use them to build.

But I'll also explain my build scripts and env variables. Feel free to stop reading here if the above covered it.

I'll admit that I do all of my development on Linux so I haven't tested my build scripts on Windows. Though I do have a Windows machine at home too so going forward I'll also test there to make sure my stuff works for as many people as possible.

The shell scripts `build` and `build_windows` (ironically) are written for unix-like shells, and the environment variable syntax there is specific to it... Luckily, I don't think the `build_portable` script has any specific syntax that should limit the system it can run on. I'll be adding a batch file for Windows soon, but from my brief reading, I think the equivalent windows cmd line to the `build_windows` script should be:

```
set "RUSTFLAGS=-C target-feature=+popcnt"
cargo rustc --target=x86_64-pc-windows-gnu
cargo rustc --release --target=x86_64-pc-windows-gnu
```

That being said, you should be able to just use the normal cargo build method now to build on your machine. While having things like popcnt are nice, they aren't necessary for Mantissa to function or be competitive.
Thank you very much.
Guenther
Posts: 24
Joined: Wed Nov 25, 2020 10:55 am
Sign-up code: 10159

Re: New Engine: Mantissa

Post by Guenther »

metlwing wrote: Sun Sep 19, 2021 2:30 pm Also, I've set up a new release with an executable that should work on any 64-bit Windows machine (https://github.com/jtheardw/mantissa/re ... .1.1compat)

I'll continue to improve the build scripts for people who prefer to use those by also testing the windows based ones on my windows machine (rather than just cross-compiling).
I can confirm that the so called portable win binary now works here and also that I can compile the current source w/o problems, thanks!

It seems you have changed the search quite a lot, as I noticed that the previous compilation I succeeded to build (version 20210905) has
over 740 kn/s here on my old hardware, while the new one is around 320 kn/s, but as time to depth is now better it looks as desired.
I also noticed that the new version now produces repeatable pvs and evals and number of nodes per depth, which the previous version didn't despite running with one thread for those measurements.

Code: Select all

(all runs were executed independently with closing Mantissa inbetween)

run 1
------

uci
id name Mantissa v20210905
id author jtwright
option name Hash type spin default 64 min 1 max 32768
option name Threads type spin default 1 min 1 max 64
option name Move Overhead type spin default 10 min 1 max 1000
uciok
go depth 15
info depth 1 seldepth 1 pv e2e4 score cp 73 time 10 nodes 30 nps 3000
info depth 2 seldepth 2 pv e2e4 e7e5 score cp 13 time 10 nodes 202 nps 20200
info depth 3 seldepth 4 pv d2d4 d7d5 c1f4 score cp 40 time 10 nodes 1556 nps 155600
info depth 4 seldepth 4 pv d2d4 d7d5 c1f4 c8f5 score cp 13 time 20 nodes 4067 nps 203350
info depth 5 seldepth 6 pv e2e4 d7d5 e4d5 d8d5 d2d4 score cp 49 time 30 nodes 15871 nps 529033
info depth 6 seldepth 7 pv e2e4 e7e5 d2d4 d7d5 b1c3 b8c6 score cp 13 time 60 nodes 34847 nps 580783
info depth 7 seldepth 8 pv e2e4 d7d5 e4d5 d8d5 b1c3 d5e6 f1e2 score cp 43 time 100 nodes 69281 nps 692810
info depth 8 seldepth 10 pv e2e4 e7e5 g1f3 d7d5 e4d5 d8d5 d2d4 e5d4 score cp 32 time 210 nodes 157787 nps 751366
info depth 9 seldepth 11 pv e2e4 d7d5 e4d5 d8d5 b1c3 d5e5 f1e2 b8c6 g1f3 score cp 32 time 360 nodes 276367 nps 767686
info depth 10 seldepth 12 pv e2e4 d7d5 e4d5 d8d5 b1c3 d5e6 g1e2 g8f6 d2d4 c7c6 score cp 32 time 490 nodes 388657 nps 793177
info depth 11 seldepth 16 pv e2e4 e7e5 d2d4 d7d5 e4d5 d8d5 g1f3 e5d4 d1d4 c8e6 c1f4 score cp 35 time 1330 nodes 1074184 nps 807657
info depth 12 seldepth 21 pv e2e4 d7d5 e4d5 d8d5 b1c3 d5e6 f1e2 e6g6 d2d4 c7c6 g1f3 g6g2 h1g1 g7g6 g1g2 g8f6 c1f4 score cp 51 time 4290 nodes 3260927 nps 760122
info depth 13 seldepth 21 pv e2e4 e7e5 g1f3 g8f6 b1c3 b8c6 d2d4 e5d4 f3d4 f8b4 d4c6 b4c3 b2c3 d7c6 f1d3 c8e6 e4e5 e6g4 score cp 45 time 5290 nodes 4017294 nps 759412
info depth 14 seldepth 21 pv e2e4 e7e5 b1c3 b8c6 g1f3 g8f6 d2d4 e5d4 f3d4 f8b4 d4c6 b4c3 b2c3 d7c6 d1d8 e8d8 c1g5 c8e6 score cp 40 time 8030 nodes 6023075 nps 750071
info depth 15 seldepth 25 pv e2e4 e7e5 g1f3 g8f6 b1c3 b8c6 d2d4 e5d4 f3d4 f8b4 d4c6 d7c6 d1d8 e8d8 c1g5 b4c5 g5f6 g7f6 f1e2 c8f5 score cp 49 time 10900 nodes 8160393 nps 748659
bestmove e2e4

run 2
------

uci
id name Mantissa v20210905
id author jtwright
option name Hash type spin default 64 min 1 max 32768
option name Threads type spin default 1 min 1 max 64
option name Move Overhead type spin default 10 min 1 max 1000
uciok
go depth 15
info depth 1 seldepth 1 pv e2e4 score cp 73 time 1 nodes 40 nps 40000
info depth 2 seldepth 2 pv e2e4 e7e5 score cp 13 time 1 nodes 208 nps 208000
info depth 3 seldepth 4 pv d2d4 d7d5 c1f4 score cp 40 time 10 nodes 1443 nps 144300
info depth 4 seldepth 4 pv d2d4 d7d5 c1f4 c8f5 score cp 13 time 10 nodes 3901 nps 390100
info depth 5 seldepth 6 pv e2e4 d7d5 e4d5 d8d5 d2d4 score cp 49 time 30 nodes 16565 nps 552166
info depth 6 seldepth 7 pv e2e4 e7e5 d2d4 d7d5 b1c3 b8c6 score cp 13 time 50 nodes 34445 nps 688900
info depth 7 seldepth 8 pv e2e4 d7d5 e4d5 d8d5 b1c3 d5e6 f1e2 score cp 43 time 100 nodes 71831 nps 718310
info depth 8 seldepth 10 pv e2e4 b8c6 d2d4 d7d5 e4d5 d8d5 g1f3 c8f5 score cp 32 time 210 nodes 168479 nps 802280
info depth 9 seldepth 11 pv e2e4 d7d5 e4d5 d8d5 b1c3 d5e5 f1e2 b8c6 g1f3 score cp 32 time 370 nodes 293251 nps 792570
info depth 10 seldepth 12 pv e2e4 d7d5 e4d5 d8d5 b1c3 d5e5 g1e2 c8g4 d2d4 e5e6 score cp 32 time 510 nodes 406577 nps 797209
info depth 11 seldepth 15 pv e2e4 e7e5 d2d4 d7d5 e4d5 d8d5 g1f3 e5d4 d1d4 c8e6 c1f4 score cp 35 time 1320 nodes 1043475 nps 790511
info depth 12 seldepth 20 pv e2e4 d7d5 e4d5 d8d5 b1c3 d5e6 f1e2 e6g6 g1f3 g6g2 h1g1 g2h3 d2d4 c7c6 c1f4 g8f6 f3g5 h3f5 f4c7 score cp 48 time 5200 nodes 3939328 nps 757563
info depth 13 seldepth 24 pv e2e4 d7d5 e4d5 d8d5 b1c3 d5e6 f1e2 e6g6 g1f3 g6g2 h1g1 g2h3 d2d4 g8f6 c1f4 c7c6 e2d3 c8d7 g1g3 h3e6 d1e2 e6e2 e1e2 score cp 48 time 6210 nodes 4699236 nps 756720
info depth 14 seldepth 28 pv e2e4 d7d5 e4d5 d8d5 b1c3 d5e6 f1e2 e6g6 g1f3 g6g2 h1g1 g2h3 d2d4 g8f6 g1g3 h3f5 f3e5 c8e6 e2d3 f5h5 d1h5 f6h5 g3f3 b8c6 score cp 39 time 10430 nodes 7753517 nps 743386
info depth 15 seldepth 28 pv e2e4 d7d5 e4d5 d8d5 b1c3 d5e6 f1e2 e6g6 e2d3 f7f5 d3e2 g6g2 g1h3 g2h1 h3g1 h1g1 e2f1 g1h2 d2d4 score cp 40 time 12390 nodes 9225434 nps 744587
bestmove e2e4

run 3
------

uci
id name Mantissa v20210905
id author jtwright
option name Hash type spin default 64 min 1 max 32768
option name Threads type spin default 1 min 1 max 64
option name Move Overhead type spin default 10 min 1 max 1000
uciok
go depth 15
info depth 1 seldepth 1 pv e2e4 score cp 73 time 1 nodes 55 nps 55000
info depth 2 seldepth 2 pv e2e4 e7e5 score cp 13 time 10 nodes 223 nps 22300
info depth 3 seldepth 4 pv d2d4 d7d5 c1f4 score cp 40 time 10 nodes 1357 nps 135700
info depth 4 seldepth 4 pv d2d4 d7d5 c1f4 c8f5 score cp 13 time 20 nodes 3897 nps 194850
info depth 5 seldepth 6 pv e2e4 d7d5 e4d5 d8d5 d2d4 score cp 49 time 30 nodes 16683 nps 556100
info depth 6 seldepth 7 pv e2e4 e7e5 d2d4 d7d5 b1c3 b8c6 score cp 13 time 50 nodes 33051 nps 661020
info depth 7 seldepth 8 pv e2e4 d7d5 e4d5 d8d5 b1c3 d5e6 f1e2 score cp 43 time 90 nodes 71225 nps 791388
info depth 8 seldepth 10 pv e2e4 e7e5 d2d4 e5d4 d1d4 b8c6 d4e3 f8d6 score cp 22 time 180 nodes 140233 nps 779072
info depth 9 seldepth 12 pv e2e4 d7d5 e4d5 d8d5 b1c3 d5e5 f1e2 b8c6 g1f3 score cp 32 time 280 nodes 222111 nps 793253
info depth 10 seldepth 13 pv d2d4 d7d5 c1f4 c8f5 b1c3 g8f6 f2f3 e7e6 e2e3 b8c6 score cp 32 time 490 nodes 400160 nps 816653
info depth 11 seldepth 17 pv e2e4 e7e5 d2d4 d7d5 e4d5 d8d5 g1f3 e5d4 d1d4 c8e6 c1f4 score cp 35 time 1350 nodes 1069749 nps 792406
info depth 12 seldepth 17 pv e2e4 e7e5 g1f3 g8f6 b1c3 b8c6 d2d4 f8b4 f3e5 f6e4 d1f3 c6e5 f3e4 score cp 51 time 3420 nodes 2545009 nps 744154
info depth 13 seldepth 19 pv e2e4 e7e5 g1f3 g8f6 b1c3 b8c6 d2d4 e5d4 f3d4 f8b4 d4c6 b4c3 b2c3 d7c6 f1d3 score cp 53 time 4650 nodes 3488652 nps 750247
info depth 14 seldepth 26 pv e2e4 e7e5 b1c3 b8c6 g1f3 f8b4 d2d4 d7d5 e4d5 e5d4 d5c6 d8e7 d1e2 d4c3 c1f4 score cp 36 time 8930 nodes 6554202 nps 733953
info depth 15 seldepth 27 pv e2e4 e7e5 g1f3 g8f6 b1c3 b8c6 d2d4 e5d4 f3d4 f8b4 d4c6 b7c6 d1d4 d8e7 f1d3 d7d5 e1g1 b4c5 d4a4 c8d7 f1e1 d5d4 c3b1 c5b4 a4a7 score cp 37 time 10990 nodes 8040090 nps 731582
bestmove e2e4

Code: Select all

run 1
------

uci
id name Mantissa v2.1.1
id author jtwright
option name Hash type spin default 64 min 1 max 32768
option name Threads type spin default 1 min 1 max 64
option name Move Overhead type spin default 10 min 1 max 1000
uciok
go depth 15
info depth 2 seldepth 2 pv a2a3 a7a6 score cp 13 time 10 nodes 45 nps 4500
info depth 3 seldepth 3 pv a2a4 a7a6 b2b3 score cp -12 time 10 nodes 101 nps 10100
info depth 4 seldepth 5 pv e2e3 a7a5 a2a3 a5a4 score cp 33 time 10 nodes 455 nps 45500
info depth 5 seldepth 6 pv d2d4 e7e6 e2e3 d7d5 b1c3 score cp 35 time 10 nodes 1268 nps 126800
info depth 6 seldepth 7 pv e2e4 e7e6 b1c3 b8c6 d2d4 d7d5 score cp 23 time 20 nodes 4794 nps 239700
info depth 7 seldepth 8 pv e2e4 b8c6 b1c3 g8f6 d2d4 d7d5 e4e5 score cp 34 time 30 nodes 7956 nps 265200
info depth 8 seldepth 9 pv e2e4 d7d5 e4d5 e7e6 f1b5 c8d7 b1c3 d7b5 score cp 26 time 50 nodes 12693 nps 253860
info depth 9 seldepth 10 pv e2e4 d7d5 e4d5 g8f6 b1c3 f6d5 c3d5 d8d5 d2d4 score cp 31 time 80 nodes 23320 nps 291500
info depth 10 seldepth 14 pv e2e4 d7d5 e4d5 g8f6 b1c3 f6d5 d2d4 d5c3 b2c3 e7e6 g1f3 b8c6 f1b5 score cp 20 time 180 nodes 51390 nps 285500
info depth 11 seldepth 14 pv e2e4 d7d5 e4d5 g8f6 d2d4 f6d5 c2c4 d5f6 g1f3 c8g4 d4d5 e7e6 score cp 33 time 240 nodes 72599 nps 302495
info depth 12 seldepth 17 pv e2e4 e7e5 g1f3 b8c6 b1c3 g8f6 f1c4 d7d6 d2d4 e5d4 f3d4 c6d4 score cp 22 time 800 nodes 244271 nps 305338
info depth 13 seldepth 17 pv g1f3 g8f6 b1c3 d7d5 e2e3 e7e6 f1e2 a7a6 a2a3 f8d6 e2d3 b8c6 e1g1 score cp 15 time 2070 nodes 637052 nps 307754
info depth 14 seldepth 17 pv e2e4 e7e5 g1f3 b8c6 b1c3 g8f6 f1b5 f8b4 b5c6 d7c6 f3e5 e8g8 f2f3 c8e6 d2d4 score cp 22 time 3300 nodes 1031154 nps 312470
info depth 15 seldepth 20 pv d2d4 g8f6 g1f3 e7e6 e2e3 b8c6 f1d3 d7d5 e1g1 f8d6 a2a3 e8g8 d3e2 a7a6 b1c3 h7h6 score cp 9 time 5650 nodes 1769430 nps 313173
bestmove d2d4

run 2
------

uci
id name Mantissa v2.1.1
id author jtwright
option name Hash type spin default 64 min 1 max 32768
option name Threads type spin default 1 min 1 max 64
option name Move Overhead type spin default 10 min 1 max 1000
uciok
go depth 15
info depth 2 seldepth 2 pv a2a3 a7a6 score cp 13 time 1 nodes 45 nps 45000
info depth 3 seldepth 3 pv a2a4 a7a6 b2b3 score cp -12 time 1 nodes 101 nps 101000
info depth 4 seldepth 5 pv e2e3 a7a5 a2a3 a5a4 score cp 33 time 10 nodes 455 nps 45500
info depth 5 seldepth 6 pv d2d4 e7e6 e2e3 d7d5 b1c3 score cp 35 time 10 nodes 1268 nps 126800
info depth 6 seldepth 7 pv e2e4 e7e6 b1c3 b8c6 d2d4 d7d5 score cp 23 time 30 nodes 4794 nps 159800
info depth 7 seldepth 8 pv e2e4 b8c6 b1c3 g8f6 d2d4 d7d5 e4e5 score cp 34 time 40 nodes 7956 nps 198900
info depth 8 seldepth 9 pv e2e4 d7d5 e4d5 e7e6 f1b5 c8d7 b1c3 d7b5 score cp 26 time 50 nodes 12693 nps 253860
info depth 9 seldepth 10 pv e2e4 d7d5 e4d5 g8f6 b1c3 f6d5 c3d5 d8d5 d2d4 score cp 31 time 90 nodes 23320 nps 259111
info depth 10 seldepth 14 pv e2e4 d7d5 e4d5 g8f6 b1c3 f6d5 d2d4 d5c3 b2c3 e7e6 g1f3 b8c6 f1b5 score cp 20 time 180 nodes 51390 nps 285500
info depth 11 seldepth 14 pv e2e4 d7d5 e4d5 g8f6 d2d4 f6d5 c2c4 d5f6 g1f3 c8g4 d4d5 e7e6 score cp 33 time 250 nodes 72599 nps 290396
info depth 12 seldepth 17 pv e2e4 e7e5 g1f3 b8c6 b1c3 g8f6 f1c4 d7d6 d2d4 e5d4 f3d4 c6d4 score cp 22 time 850 nodes 244271 nps 287377
info depth 13 seldepth 17 pv g1f3 g8f6 b1c3 d7d5 e2e3 e7e6 f1e2 a7a6 a2a3 f8d6 e2d3 b8c6 e1g1 score cp 15 time 2180 nodes 637052 nps 292225
info depth 14 seldepth 17 pv e2e4 e7e5 g1f3 b8c6 b1c3 g8f6 f1b5 f8b4 b5c6 d7c6 f3e5 e8g8 f2f3 c8e6 d2d4 score cp 22 time 3606 nodes 1031154 nps 285955
info depth 15 seldepth 20 pv d2d4 g8f6 g1f3 e7e6 e2e3 b8c6 f1d3 d7d5 e1g1 f8d6 a2a3 e8g8 d3e2 a7a6 b1c3 h7h6 score cp 9 time 6126 nodes 1769430 nps 288839
bestmove d2d4

run 3
------

uci
id name Mantissa v2.1.1
id author jtwright
option name Hash type spin default 64 min 1 max 32768
option name Threads type spin default 1 min 1 max 64
option name Move Overhead type spin default 10 min 1 max 1000
uciok
go depth 15
info depth 2 seldepth 2 pv a2a3 a7a6 score cp 13 time 1 nodes 45 nps 45000
info depth 3 seldepth 3 pv a2a4 a7a6 b2b3 score cp -12 time 1 nodes 101 nps 101000
info depth 4 seldepth 5 pv e2e3 a7a5 a2a3 a5a4 score cp 33 time 1 nodes 455 nps 455000
info depth 5 seldepth 6 pv d2d4 e7e6 e2e3 d7d5 b1c3 score cp 35 time 10 nodes 1268 nps 126800
info depth 6 seldepth 7 pv e2e4 e7e6 b1c3 b8c6 d2d4 d7d5 score cp 23 time 20 nodes 4794 nps 239700
info depth 7 seldepth 8 pv e2e4 b8c6 b1c3 g8f6 d2d4 d7d5 e4e5 score cp 34 time 30 nodes 7956 nps 265200
info depth 8 seldepth 9 pv e2e4 d7d5 e4d5 e7e6 f1b5 c8d7 b1c3 d7b5 score cp 26 time 40 nodes 12693 nps 317325
info depth 9 seldepth 10 pv e2e4 d7d5 e4d5 g8f6 b1c3 f6d5 c3d5 d8d5 d2d4 score cp 31 time 80 nodes 23320 nps 291500
info depth 10 seldepth 14 pv e2e4 d7d5 e4d5 g8f6 b1c3 f6d5 d2d4 d5c3 b2c3 e7e6 g1f3 b8c6 f1b5 score cp 20 time 170 nodes 51390 nps 302294
info depth 11 seldepth 14 pv e2e4 d7d5 e4d5 g8f6 d2d4 f6d5 c2c4 d5f6 g1f3 c8g4 d4d5 e7e6 score cp 33 time 240 nodes 72599 nps 302495
info depth 12 seldepth 17 pv e2e4 e7e5 g1f3 b8c6 b1c3 g8f6 f1c4 d7d6 d2d4 e5d4 f3d4 c6d4 score cp 22 time 780 nodes 244271 nps 313167
info depth 13 seldepth 17 pv g1f3 g8f6 b1c3 d7d5 e2e3 e7e6 f1e2 a7a6 a2a3 f8d6 e2d3 b8c6 e1g1 score cp 15 time 2000 nodes 637052 nps 318526
info depth 14 seldepth 17 pv e2e4 e7e5 g1f3 b8c6 b1c3 g8f6 f1b5 f8b4 b5c6 d7c6 f3e5 e8g8 f2f3 c8e6 d2d4 score cp 22 time 3200 nodes 1031154 nps 322235
info depth 15 seldepth 20 pv d2d4 g8f6 g1f3 e7e6 e2e3 b8c6 f1d3 d7d5 e1g1 f8d6 a2a3 e8g8 d3e2 a7a6 b1c3 h7h6 score cp 9 time 5460 nodes 1769430 nps 324071
bestmove d2d4
User avatar
Gabor Szots
Posts: 12833
Joined: Sat Dec 09, 2006 6:30 am
Sign-up code: 10159
Location: Szentendre, Hungary

Re: New Engine: Mantissa

Post by Gabor Szots »

I am testing version 2.1.1 in the hope that whatever change you make will have a new version number. It does not seem to be the case though, based on what Günther writes.

I have to add that your claim of 2000-2100 Elo range is quite misleading. I have restarted my tournament already 3 times because all the opponents I chose were beaten to a pulp. Now I am at the 2450-2500 CCRL blitz range and these engines still seem too weak for Mantissa. I don't know how Lichess ratings are related to CCRL ones but based on what I see I suspect they are 500 Elos weaker. Or your claim was way off the mark.
Guenther
Posts: 24
Joined: Wed Nov 25, 2020 10:55 am
Sign-up code: 10159

Re: New Engine: Mantissa

Post by Guenther »

Gabor Szots wrote: Mon Sep 20, 2021 1:09 pm I am testing version 2.1.1 in the hope that whatever change you make will have a new version number. It does not seem to be the case though, based on what Günther writes.
I don't know why you came to this conclusion from my post?
Gabor Szots wrote: Mon Sep 20, 2021 1:09 pm I have to add that your claim of 2000-2100 Elo range is quite misleading. I have restarted my tournament already 3 times because all the opponents I chose were beaten to a pulp. Now I am at the 2450-2500 CCRL blitz range and these engines still seem too weak for Mantissa. I don't know how Lichess ratings are related to CCRL ones but based on what I see I suspect they are 500 Elos weaker. Or your claim was way off the mark.
It seems Mantissa is very much stronger since a few weeks. Just check the game scores in lichess.
User avatar
Gabor Szots
Posts: 12833
Joined: Sat Dec 09, 2006 6:30 am
Sign-up code: 10159
Location: Szentendre, Hungary

Re: New Engine: Mantissa

Post by Gabor Szots »

I don't know why you came to this conclusion from my post?
You wrote: It seems you have changed the search quite a lot...

It seems Mantissa is very much stronger since a few weeks. Just check the game scores in lichess.
I have never visited lichess and I don't intend to.
metlwing
Posts: 10
Joined: Sun Sep 19, 2021 4:50 am
Sign-up code: 10159

Re: New Engine: Mantissa

Post by metlwing »

Gabor Szots wrote: Mon Sep 20, 2021 1:09 pm I am testing version 2.1.1 in the hope that whatever change you make will have a new version number. It does not seem to be the case though, based on what Günther writes.

I have to add that your claim of 2000-2100 Elo range is quite misleading. I have restarted my tournament already 3 times because all the opponents I chose were beaten to a pulp. Now I am at the 2450-2500 CCRL blitz range and these engines still seem too weak for Mantissa. I don't know how Lichess ratings are related to CCRL ones but based on what I see I suspect they are 500 Elos weaker. Or your claim was way off the mark.
Guenther's comparison re: search changing is based off of a Mantissa from a few weeks ago (where the version number was just the date). I assure you the 2.1.1 release Mantissa has not changed since being assigned that version number. The second 2.1.1 release I made only updated build scripts. I intend to update the version number with each release that changes the engine at all. Any Mantissa labeled 2.1.1 should have the same behavior (that being said, I just released 2.1.2 a few minutes ago, which comes with a few performance optimizations but merited a new version number).

Regarding the 2100 ELO claim, that is accurate to lichess ELO. I apologize if that was misleading. Lichess BOTS only gain half ELO points per rated match to my knowledge, and also lichess is lousy with SF clones, which I imagine further pollutes the ELOs presented there for bots.

If it's more helpful of a claim, Mantissa has recently reached a strength where it has a winning record against Cosette, which I believe is near 2500 ELO on CCRL.

Thanks again for all your work. Please continue to let me know whenever you have questions or things that need to be fixed.
metlwing
Posts: 10
Joined: Sun Sep 19, 2021 4:50 am
Sign-up code: 10159

Re: New Engine: Mantissa

Post by metlwing »

I'm not sure if this helps, but I ran 20 games of 2+1 between Mantissa 2.1.3 (with 1 thread) and Zahak 5 on my local machine with cutechess. Not the exact same conditions as CCRL of course, and 20 games might not be much, but just to get a vague estimate of how they measure up. Here are the results:
Score of Mantissa 2.1.3 vs Zahak 5: 6 - 4 - 10 [0.550]
... Mantissa 2.1.3 playing White: 5 - 1 - 4 [0.700] 10
... Mantissa 2.1.3 playing Black: 1 - 3 - 6 [0.400] 10
... White vs Black: 8 - 2 - 10 [0.650] 20
Elo difference: 34.9 +/- 111.3, LOS: 73.6 %, DrawRatio: 50.0 %
20 of 20 games finished.

Player: Mantissa 2.1.3
"Draw by 3-fold repetition": 6
"Draw by fifty moves rule": 1
"Draw by insufficient mating material": 2
"Draw by stalemate": 1
"Loss: Black mates": 1
"Loss: White mates": 3
"Win: Black mates": 1
"Win: White mates": 5
Player: Zahak 5
"Draw by 3-fold repetition": 6
"Draw by fifty moves rule": 1
"Draw by insufficient mating material": 2
"Draw by stalemate": 1
"Loss: Black mates": 1
"Loss: White mates": 5
"Win: Black mates": 1
"Win: White mates": 3
Caveats are that Mantissa 2.1.3 is not identical to 2.1.1 (though nearly so), and I used larger hash than I think CCRL uses, but hopefully this might help calibrate knowing where Mantissa's current strength roughly lies?
User avatar
Gabor Szots
Posts: 12833
Joined: Sat Dec 09, 2006 6:30 am
Sign-up code: 10159
Location: Szentendre, Hungary

Re: New Engine: Mantissa

Post by Gabor Szots »

So it is around 2700. Now I'm testing it against 2500-odd engines, you can imagine how it goes. Anyway, I'm going to play this one until the finish, just to have it on the blitz list.
metlwing
Posts: 10
Joined: Sun Sep 19, 2021 4:50 am
Sign-up code: 10159

Re: New Engine: Mantissa

Post by metlwing »

Sounds good. Thanks!
Post Reply