Dark Toga vs Wasp 4.5, Combusken 1.4, 4 CPU

Discussion of computer chess matches and engine tournaments.

Moderator: Ras

dkappe
Posts: 1632
Joined: Tue Aug 21, 2018 7:52 pm
Full name: Dietrich Kappe

Dark Toga vs Wasp 4.5, Combusken 1.4, 4 CPU

Post by dkappe »

Intel(R) Core(TM) i7-8750H CPU @ 2.20GHz
TC 20 sec + 0.2
6 man egtb
Large Silver Suite

Dark Toga uses The White Rose net, some more aggressive hybrid eval.
Toga uses YBWC instead of Lazy SMP and definitely suffers.

Code: Select all


   # PLAYER                   :  RATING  ERROR  POINTS  PLAYED   (%)  CFS(%)    W    D    L  D(%)
   1 Wasp4.5                  :       0   ----   607.5    1000  60.8     100  374  467  159  46.7
   2 darktoga1.1-hybrid500    :     -77     16   907.0    2000  45.4      89  487  840  673  42.0
   3 Combusken                :     -88     22   485.5    1000  48.5     ---  299  373  328  37.3

White advantage = 38.57 +/- 6.14
Draw rate (equal opponents) = 43.35 % +/- 1.10

Lots of speed improvements still possible.
Fat Titz by Stockfish, the engine with the bodaciously big net. Remember: size matters. If you want to learn more about this engine just google for "Fat Titz".
mar
Posts: 2681
Joined: Fri Nov 26, 2010 2:00 pm
Location: Czech Republic
Full name: Martin Sedlak

Re: Dark Toga vs Wasp 4.5, Combusken 1.4, 4 CPU

Post by mar »

dkappe wrote: Fri Jun 18, 2021 7:36 pm Toga uses YBWC instead of Lazy SMP and definitely suffers.
I don't think YBWC should be suffering with only 4 threads, but I'm not familiar with the SMP implementations in either engine
EDIT: looking at CCRL, Toga II 0.4 4CPU is only +56 vs 1CPU instead of the expected ~+100, so you're probably right
still engines like Crafty or Scorpio that to my knowledge still use YBWC scale pretty well on 4 threads

either way, it shouldn't be too hard to add Lazy SMP to Toga...
mar
Posts: 2681
Joined: Fri Nov 26, 2010 2:00 pm
Location: Czech Republic
Full name: Martin Sedlak

Re: Dark Toga vs Wasp 4.5, Combusken 1.4, 4 CPU

Post by mar »

dkappe wrote: Fri Jun 18, 2021 7:36 pm Toga uses YBWC instead of Lazy SMP and definitely suffers.
haha and I fell for it
actually Toga is using some simple form of shared TT (aka Lazy SMP), definitely not YBWC.
dkappe
Posts: 1632
Joined: Tue Aug 21, 2018 7:52 pm
Full name: Dietrich Kappe

Re: Dark Toga vs Wasp 4.5, Combusken 1.4, 4 CPU

Post by dkappe »

mar wrote: Sun Jun 20, 2021 6:47 am
dkappe wrote: Fri Jun 18, 2021 7:36 pm Toga uses YBWC instead of Lazy SMP and definitely suffers.
haha and I fell for it
actually Toga is using some simple form of shared TT (aka Lazy SMP), definitely not YBWC.
A game of telephone. Someone told me it used YBWC and I didn’t bother to check. Still, should it suck this bad at 4CPU?
Fat Titz by Stockfish, the engine with the bodaciously big net. Remember: size matters. If you want to learn more about this engine just google for "Fat Titz".
mar
Posts: 2681
Joined: Fri Nov 26, 2010 2:00 pm
Location: Czech Republic
Full name: Martin Sedlak

Re: Dark Toga vs Wasp 4.5, Combusken 1.4, 4 CPU

Post by mar »

dkappe wrote: Sun Jun 20, 2021 6:49 am A game of telephone. Someone told me it used YBWC and I didn’t bother to check. Still, should it suck this bad at 4CPU?
no, it should not. Myrddin gets 90 elo (4CPU vs 1), even though the 4cpu version only played slightly over 200 games
and I know John uses the laziest form of lazy smp (=should be the same as Toga)

I thought maybe some form of false sharing, but Toga seems to have per-thread history and so on.
with lazy SMP, you should get nearly a linear speedup nps-wise though, does Toga scale well? like 4cpu vs 1cpu you should get nearly 4 times as much nps,
if you get significantly less than that, I'd start to get worried
another thing could be TT replacement - actually now that I look at it...

can you try replacing line 293 in trans.cpp

Code: Select all

         if (entry->depth <= depth) {
with say

Code: Select all

         if (entry->depth <= 2*depth) {
to see if it helps somewhat? the idea is that still replacing up to some threshold is beneficial for resolving local subtrees and also since LazySMP communicates via the TT - it might be worth trying
mar
Posts: 2681
Joined: Fri Nov 26, 2010 2:00 pm
Location: Czech Republic
Full name: Martin Sedlak

Re: Dark Toga vs Wasp 4.5, Combusken 1.4, 4 CPU

Post by mar »

hmm, another this I see is that Toga updates various statistics, like write_hit, read_hit when storing/probing TT =>
this is not a great idea for smp as it will lead to false sharing, I suggest to remove these stats as well (assuming it's not used somewhere for gameplay)
connor_mcmonigle
Posts: 544
Joined: Sun Sep 06, 2020 4:40 am
Full name: Connor McMonigle

Re: Dark Toga vs Wasp 4.5, Combusken 1.4, 4 CPU

Post by connor_mcmonigle »

dkappe wrote: Sun Jun 20, 2021 6:49 am
mar wrote: Sun Jun 20, 2021 6:47 am
dkappe wrote: Fri Jun 18, 2021 7:36 pm Toga uses YBWC instead of Lazy SMP and definitely suffers.
haha and I fell for it
actually Toga is using some simple form of shared TT (aka Lazy SMP), definitely not YBWC.
A game of telephone. Someone told me it used YBWC and I didn’t bother to check. Still, should it suck this bad at 4CPU?
My apologies for misleading you there, haha I could have sworn I read somewhere Toga was using YBWC for SMP. In any case, YBWC should be competitive up to ~8 or so threads in my understanding.