New engine: Stash

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

Moderators: hgm, Rebel, chrisw

User avatar
mvanthoor
Posts: 1784
Joined: Wed Jul 03, 2019 4:42 pm
Location: Netherlands
Full name: Marcel Vanthoor

Re: New engine: Stash

Post by mvanthoor »

Hi :) Good going :)

I see Stash in the CCRL blitz list as version 9.0.1 @ 1415 ELO, and 11.0.1 @ 1753 ELO.

That is a huge jump. Is that the difference between a version without and with hash table? Is Stash still a piece/square iterator, or did you convert it to using bitboards? (I remember reading something like that, but I don't know for sure. I could be thinking of a different new engine.)

(I've just finished the Perft function and testing; everything seems to be OK. Moving on to search somewhere this week :))
Author of Rustic, an engine written in Rust.
Releases | Code | Docs | Progress | CCRL
mhouppin
Posts: 115
Joined: Wed Feb 12, 2020 5:00 pm
Full name: Morgan Houppin

Re: New engine: Stash

Post by mhouppin »

mvanthoor wrote: Tue Mar 24, 2020 10:43 pm Hi :) Good going :)

I see Stash in the CCRL blitz list as version 9.0.1 @ 1415 ELO, and 11.0.1 @ 1753 ELO.

That is a huge jump. Is that the difference between a version without and with hash table? Is Stash still a piece/square iterator, or did you convert it to using bitboards? (I remember reading something like that, but I don't know for sure. I could be thinking of a different new engine.)

(I've just finished the Perft function and testing; everything seems to be OK. Moving on to search somewhere this week :))
The huge jump was to attribute principally to the Quiescence Search function that I implemented in version 10 (around 200 Elo gain). Bitboards were implemented in version 9 (around 250 Elo gain). The hash table improved the move ordering and has been an incredible must in endgames (with enormous depth boosts), and the version 10 got outplayed by the version 11 each time they arrived to the endgame (around 130 more Elo).
mhouppin
Posts: 115
Joined: Wed Feb 12, 2020 5:00 pm
Full name: Morgan Houppin

Re: New engine: Stash

Post by mhouppin »

Hi there, version 13.0 should come out in a few days. For now I'm running rating tests (showing a +127 Elo over Stash 12.0, but error bars are too big to be ignored), and still verifying the whole program functions correctly. I'm also working on correcting the "go depth" and "go nodes" command (stopping after 20 milliseconds and forcing me to run them with "go infinite" as well), and letting commands come from a file (there are for now issues if you launch a "position" command before the analysis ends).

Good afternoon to everyone !
Gabor Szots
Posts: 1362
Joined: Sat Jul 21, 2018 7:43 am
Location: Szentendre, Hungary
Full name: Gabor Szots

Re: New engine: Stash

Post by Gabor Szots »

mhouppin wrote: Tue Mar 31, 2020 11:14 am Hi there, version 13.0 should come out in a few days. For now I'm running rating tests (showing a +127 Elo over Stash 12.0, but error bars are too big to be ignored), and still verifying the whole program functions correctly. I'm also working on correcting the "go depth" and "go nodes" command (stopping after 20 milliseconds and forcing me to run them with "go infinite" as well), and letting commands come from a file (there are for now issues if you launch a "position" command before the analysis ends).

Good afternoon to everyone !
12.0 (only partly tested but tests are still running) is already about 200 Elo points above 11.0.1, the progress is impressive. Keep up the good work Morgan.
Gabor Szots
CCRL testing group
mhouppin
Posts: 115
Joined: Wed Feb 12, 2020 5:00 pm
Full name: Morgan Houppin

Re: New engine: Stash

Post by mhouppin »

Hi there, version 13.0 is out ! Binaries are available for Windows and Linux on the repository: https://gitlab.com/mhouppin/stash-bot/-/releases/v13

I'm currently testing it against Goldfish, here are the temporary results:

Code: Select all

   # PLAYER        :  RATING  ERROR  POINTS  PLAYED   (%)  CFS(%)    W    D    L  D(%)
   1 Stash 13.0    :  2159.1  126.0    25.5      36    71      99   21    9    6    25
   2 Goldfish      :  1995.0   ----    10.5      36    29     ---    6    9   21    25
mhouppin
Posts: 115
Joined: Wed Feb 12, 2020 5:00 pm
Full name: Morgan Houppin

Re: New engine: Stash

Post by mhouppin »

Updated results, a bit lower than before, but Stash officially goes past the 2000 Elo milestone! ^^

Code: Select all

   # PLAYER        :  RATING  ERROR  POINTS  PLAYED   (%)  CFS(%)    W    D    L  D(%)
   1 Stash 13.0    :  2094.4   63.9    67.0     105    64     100   55   24   26    23
   2 Goldfish      :  1995.0   ----    38.0     105    36     ---   26   24   55    23
User avatar
Roland Chastain
Posts: 640
Joined: Sat Jun 08, 2013 10:07 am
Location: France
Full name: Roland Chastain

Re: New engine: Stash

Post by Roland Chastain »

Hello! Congratulations for the new release.

By the way, could someone explain to me the difference between stash-xxx-64 and stash-xxx-86_64?
Qui trop embrasse mal étreint.
mhouppin
Posts: 115
Joined: Wed Feb 12, 2020 5:00 pm
Full name: Morgan Houppin

Re: New engine: Stash

Post by mhouppin »

Roland Chastain wrote: Fri Apr 03, 2020 1:34 am Hello! Congratulations for the new release.

By the way, could someone explain to me the difference between stash-xxx-64 and stash-xxx-86_64?
x86_64 enables the use of the prefetch instruction to place RAM addresses in L1 cache and accelerate memory access, however this is not necessarily supported by old 64-bit processors.
mhouppin
Posts: 115
Joined: Wed Feb 12, 2020 5:00 pm
Full name: Morgan Houppin

Re: New engine: Stash

Post by mhouppin »

Version 14 coming soon...

Code: Select all

   # PLAYER        :  RATING  ERROR  POINTS  PLAYED   (%)  CFS(%)    W    D    L  D(%)
   1 Stash Dev     :   113.2   42.1   138.5     212    65     100  110   57   45    27
   2 Stash 13.0    :     0.0   ----    73.5     212    35     ---   45   57  110    27
mhouppin
Posts: 115
Joined: Wed Feb 12, 2020 5:00 pm
Full name: Morgan Houppin

Re: New engine: Stash

Post by mhouppin »

Hi there, version 14 is finally out! Here are the changes I made since last release:
- Splitted search between PV and non-PV nodes, disabling Null Move Pruning and TT cutoffs on PV nodes;
- Disabled qsearch evaluation pruning when in check (assuming the eval pruning is relevant only when other legal moves are possible that would be better than captures);
- Implemented Razoring (switching to qsearch at low depths when static eval is sufficiently below beta);
- Increased Null Move Pruning minimal depth to 3 (was originally 2, but there were too much unsuccessful prunings).

The matches against version 13 shows a gain of 120 +- 30 Elo, so I would expect this version to play at around 2200 Elo at CCRL Blitz.

Good evening to everyone :D