Is it useful to use more than one core for stockfish?

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

Moderator: Ras

lkaufman
Posts: 6259
Joined: Sun Jan 10, 2010 6:15 am
Location: Maryland USA
Full name: Larry Kaufman

Re: Is it useful to use more than one core for stockfish?

Post by lkaufman »

pedrox wrote: Mon May 09, 2022 9:21 pm ryzen 7 5800H 8 cores / 16 threads
40 moves in 20 seconds

Score of stockfish_14.1_win_x64_avx2 (1 thread) vs stockfish_14.1_win_x64_avx2 (6 threads): 0 - 110 - 890 [0.445]
... stockfish_14.1_win_x64_avx2 (1) playing White: 0 - 14 - 486 [0.486] 500
... stockfish_14.1_win_x64_avx2 (1) playing Black: 0 - 96 - 404 [0.404] 500
... White vs Black: 96 - 14 - 890 [0.541] 1000
Elo difference: -38.4 +/- 6.8, LOS: 0.0 %, DrawRatio: 89.0 %
1000 of 1000 games finished.

Score of stockfish_14.1_win_x64_avx2 (6 threads) vs stockfish_14.1_win_x64_avx2 (12 threads): 16 - 23 - 961 [0.496]
... stockfish_14.1_win_x64_avx2 (6) playing White: 15 - 1 - 484 [0.514] 500
... stockfish_14.1_win_x64_avx2 (6) playing Black: 1 - 22 - 477 [0.479] 500
... White vs Black: 37 - 2 - 961 [0.517] 1000
Elo difference: -2.4 +/- 4.2, LOS: 13.1 %, DrawRatio: 96.1 %
1000 of 1000 games finished.
The top 8 engines on the CCRL Rapid list that have both 4 cpu and 1 cpu ratings show an average difference of 29 elo, which is pretty consistent with your above 38 elo figure for 6 threads vs 1 thread. So while CCRL could certainly use more testing between 1 and 4 threads, it would seem that the two scales are about properly spread right now.
Komodo rules!
Uri Blass
Posts: 10918
Joined: Thu Mar 09, 2006 12:37 am
Location: Tel-Aviv Israel

Re: Is it useful to use more than one core for stockfish?

Post by Uri Blass »

pedrox wrote: Mon May 09, 2022 9:21 pm ryzen 7 5800H 8 cores / 16 threads
40 moves in 20 seconds

Score of stockfish_14.1_win_x64_avx2 (1 thread) vs stockfish_14.1_win_x64_avx2 (6 threads): 0 - 110 - 890 [0.445]
... stockfish_14.1_win_x64_avx2 (1) playing White: 0 - 14 - 486 [0.486] 500
... stockfish_14.1_win_x64_avx2 (1) playing Black: 0 - 96 - 404 [0.404] 500
... White vs Black: 96 - 14 - 890 [0.541] 1000
Elo difference: -38.4 +/- 6.8, LOS: 0.0 %, DrawRatio: 89.0 %
1000 of 1000 games finished.

Score of stockfish_14.1_win_x64_avx2 (6 threads) vs stockfish_14.1_win_x64_avx2 (12 threads): 16 - 23 - 961 [0.496]
... stockfish_14.1_win_x64_avx2 (6) playing White: 15 - 1 - 484 [0.514] 500
... stockfish_14.1_win_x64_avx2 (6) playing Black: 1 - 22 - 477 [0.479] 500
... White vs Black: 37 - 2 - 961 [0.517] 1000
Elo difference: -2.4 +/- 4.2, LOS: 13.1 %, DrawRatio: 96.1 %
1000 of 1000 games finished.
Of course in 40 moves in 20 seconds we have that 6 threads are better than 1 thread but we do not talk about this type of time control but about clearly longer time control.
Werewolf
Posts: 2054
Joined: Thu Sep 18, 2008 10:24 pm

Re: Is it useful to use more than one core for stockfish?

Post by Werewolf »

lkaufman wrote: Mon May 09, 2022 10:47 pm
pedrox wrote: Mon May 09, 2022 9:21 pm ryzen 7 5800H 8 cores / 16 threads
40 moves in 20 seconds

Score of stockfish_14.1_win_x64_avx2 (1 thread) vs stockfish_14.1_win_x64_avx2 (6 threads): 0 - 110 - 890 [0.445]
... stockfish_14.1_win_x64_avx2 (1) playing White: 0 - 14 - 486 [0.486] 500
... stockfish_14.1_win_x64_avx2 (1) playing Black: 0 - 96 - 404 [0.404] 500
... White vs Black: 96 - 14 - 890 [0.541] 1000
Elo difference: -38.4 +/- 6.8, LOS: 0.0 %, DrawRatio: 89.0 %
1000 of 1000 games finished.

Score of stockfish_14.1_win_x64_avx2 (6 threads) vs stockfish_14.1_win_x64_avx2 (12 threads): 16 - 23 - 961 [0.496]
... stockfish_14.1_win_x64_avx2 (6) playing White: 15 - 1 - 484 [0.514] 500
... stockfish_14.1_win_x64_avx2 (6) playing Black: 1 - 22 - 477 [0.479] 500
... White vs Black: 37 - 2 - 961 [0.517] 1000
Elo difference: -2.4 +/- 4.2, LOS: 13.1 %, DrawRatio: 96.1 %
1000 of 1000 games finished.
The top 8 engines on the CCRL Rapid list that have both 4 cpu and 1 cpu ratings show an average difference of 29 elo, which is pretty consistent with your above 38 elo figure for 6 threads vs 1 thread. So while CCRL could certainly use more testing between 1 and 4 threads, it would seem that the two scales are about properly spread right now.
The elo figures need careful handling though. One mistake would be to assume that the search speedup from 1 to 4 cores has somehow diminished over the years, compared to the old days when a doubling of cores gave about +40 elo.

Presumably, the issue is chess itself is running out of headspace, and a doubling of time on one core doesn't yield so much either..
Sad times if true.
lkaufman
Posts: 6259
Joined: Sun Jan 10, 2010 6:15 am
Location: Maryland USA
Full name: Larry Kaufman

Re: Is it useful to use more than one core for stockfish?

Post by lkaufman »

Werewolf wrote: Tue May 10, 2022 1:06 pm
lkaufman wrote: Mon May 09, 2022 10:47 pm
pedrox wrote: Mon May 09, 2022 9:21 pm ryzen 7 5800H 8 cores / 16 threads
40 moves in 20 seconds

Score of stockfish_14.1_win_x64_avx2 (1 thread) vs stockfish_14.1_win_x64_avx2 (6 threads): 0 - 110 - 890 [0.445]
... stockfish_14.1_win_x64_avx2 (1) playing White: 0 - 14 - 486 [0.486] 500
... stockfish_14.1_win_x64_avx2 (1) playing Black: 0 - 96 - 404 [0.404] 500
... White vs Black: 96 - 14 - 890 [0.541] 1000
Elo difference: -38.4 +/- 6.8, LOS: 0.0 %, DrawRatio: 89.0 %
1000 of 1000 games finished.

Score of stockfish_14.1_win_x64_avx2 (6 threads) vs stockfish_14.1_win_x64_avx2 (12 threads): 16 - 23 - 961 [0.496]
... stockfish_14.1_win_x64_avx2 (6) playing White: 15 - 1 - 484 [0.514] 500
... stockfish_14.1_win_x64_avx2 (6) playing Black: 1 - 22 - 477 [0.479] 500
... White vs Black: 37 - 2 - 961 [0.517] 1000
Elo difference: -2.4 +/- 4.2, LOS: 13.1 %, DrawRatio: 96.1 %
1000 of 1000 games finished.
The top 8 engines on the CCRL Rapid list that have both 4 cpu and 1 cpu ratings show an average difference of 29 elo, which is pretty consistent with your above 38 elo figure for 6 threads vs 1 thread. So while CCRL could certainly use more testing between 1 and 4 threads, it would seem that the two scales are about properly spread right now.
The elo figures need careful handling though. One mistake would be to assume that the search speedup from 1 to 4 cores has somehow diminished over the years, compared to the old days when a doubling of cores gave about +40 elo.

Presumably, the issue is chess itself is running out of headspace, and a doubling of time on one core doesn't yield so much either..
Sad times if true.
Quite true; in fact the post that showed Dragon 4 cpus drawing 100 out of 100 games vs. 3 different stockfishes strongly suggests that the top engines are practically unbeatable with normal openings at Rapid TC and 4 CPUs or more. It comes down to whether "chess" means the game played from the initial start position with free choice of openings, or whether it means playing all positions in chess (with each side playing the favorable side once). In other words, is chess with a specified opening, for example king's gambit, still chess? Chess with free choice of openings is pretty much solved now in the sense that engines can play well enough with a lot of time and cores to draw virtually every game, but with unbalanced openings it is not at all close to being solved, engines still play far from perfectly in positions where playing the right move is critical and not obvious. So with free choice of openings, or openings selected from those played frequently by top GMs, there may not even be fifty elo left to gain, but with unbalanced openings stipulated and colors flipped there may be a thousand elo left to gain. Engine ratings no longer mean anything without specifying what openings (or at least what type of opening book) were used to produce them.
Komodo rules!
Uri Blass
Posts: 10918
Joined: Thu Mar 09, 2006 12:37 am
Location: Tel-Aviv Israel

Re: Is it useful to use more than one core for stockfish?

Post by Uri Blass »

lkaufman wrote: Tue May 10, 2022 6:40 pm
Werewolf wrote: Tue May 10, 2022 1:06 pm
lkaufman wrote: Mon May 09, 2022 10:47 pm
pedrox wrote: Mon May 09, 2022 9:21 pm ryzen 7 5800H 8 cores / 16 threads
40 moves in 20 seconds

Score of stockfish_14.1_win_x64_avx2 (1 thread) vs stockfish_14.1_win_x64_avx2 (6 threads): 0 - 110 - 890 [0.445]
... stockfish_14.1_win_x64_avx2 (1) playing White: 0 - 14 - 486 [0.486] 500
... stockfish_14.1_win_x64_avx2 (1) playing Black: 0 - 96 - 404 [0.404] 500
... White vs Black: 96 - 14 - 890 [0.541] 1000
Elo difference: -38.4 +/- 6.8, LOS: 0.0 %, DrawRatio: 89.0 %
1000 of 1000 games finished.

Score of stockfish_14.1_win_x64_avx2 (6 threads) vs stockfish_14.1_win_x64_avx2 (12 threads): 16 - 23 - 961 [0.496]
... stockfish_14.1_win_x64_avx2 (6) playing White: 15 - 1 - 484 [0.514] 500
... stockfish_14.1_win_x64_avx2 (6) playing Black: 1 - 22 - 477 [0.479] 500
... White vs Black: 37 - 2 - 961 [0.517] 1000
Elo difference: -2.4 +/- 4.2, LOS: 13.1 %, DrawRatio: 96.1 %
1000 of 1000 games finished.
The top 8 engines on the CCRL Rapid list that have both 4 cpu and 1 cpu ratings show an average difference of 29 elo, which is pretty consistent with your above 38 elo figure for 6 threads vs 1 thread. So while CCRL could certainly use more testing between 1 and 4 threads, it would seem that the two scales are about properly spread right now.
The elo figures need careful handling though. One mistake would be to assume that the search speedup from 1 to 4 cores has somehow diminished over the years, compared to the old days when a doubling of cores gave about +40 elo.

Presumably, the issue is chess itself is running out of headspace, and a doubling of time on one core doesn't yield so much either..
Sad times if true.
Quite true; in fact the post that showed Dragon 4 cpus drawing 100 out of 100 games vs. 3 different stockfishes strongly suggests that the top engines are practically unbeatable with normal openings at Rapid TC and 4 CPUs or more. It comes down to whether "chess" means the game played from the initial start position with free choice of openings, or whether it means playing all positions in chess (with each side playing the favorable side once). In other words, is chess with a specified opening, for example king's gambit, still chess? Chess with free choice of openings is pretty much solved now in the sense that engines can play well enough with a lot of time and cores to draw virtually every game, but with unbalanced openings it is not at all close to being solved, engines still play far from perfectly in positions where playing the right move is critical and not obvious. So with free choice of openings, or openings selected from those played frequently by top GMs, there may not even be fifty elo left to gain, but with unbalanced openings stipulated and colors flipped there may be a thousand elo left to gain. Engine ratings no longer mean anything without specifying what openings (or at least what type of opening book) were used to produce them.
I suspect that the problem is that engines do not set traps for the opponent and by infinite search it may be impossible to get more than fifty elo because engines are not going to find the right drawing move that set a good trap when all draws are the same.

It does not mean that you cannot get more than 50 elo if you plan to set good traps for the opponents.

I suggest the following algorithm to set a good trap:

1)Play many training games against X when you try different lines because in the games you use some random factor in the evaluation so games are different.
2)Develop based on the games a killer opening book that go exactly to the lines that X is losing
3)Use the killer opening book in the games against X.

Note that in theory even if the test is done without opening books in the beginning and from positions that you are not prepared to play
then if the hardware is fast enough building the killer book may be part of the time the program is using and the same opening book that is effective against X may be also effective against part of the other engines because they may also do the same mistakes in the same positions.
Marcus9
Posts: 85
Joined: Mon May 13, 2019 6:05 pm
Full name: Marco Giorgio

Re: Is it useful to use more than one core for stockfish?

Post by Marcus9 »

lkaufman wrote: Tue May 10, 2022 6:40 pm
Werewolf wrote: Tue May 10, 2022 1:06 pm
lkaufman wrote: Mon May 09, 2022 10:47 pm
pedrox wrote: Mon May 09, 2022 9:21 pm ryzen 7 5800H 8 cores / 16 threads
40 moves in 20 seconds

Score of stockfish_14.1_win_x64_avx2 (1 thread) vs stockfish_14.1_win_x64_avx2 (6 threads): 0 - 110 - 890 [0.445]
... stockfish_14.1_win_x64_avx2 (1) playing White: 0 - 14 - 486 [0.486] 500
... stockfish_14.1_win_x64_avx2 (1) playing Black: 0 - 96 - 404 [0.404] 500
... White vs Black: 96 - 14 - 890 [0.541] 1000
Elo difference: -38.4 +/- 6.8, LOS: 0.0 %, DrawRatio: 89.0 %
1000 of 1000 games finished.

Score of stockfish_14.1_win_x64_avx2 (6 threads) vs stockfish_14.1_win_x64_avx2 (12 threads): 16 - 23 - 961 [0.496]
... stockfish_14.1_win_x64_avx2 (6) playing White: 15 - 1 - 484 [0.514] 500
... stockfish_14.1_win_x64_avx2 (6) playing Black: 1 - 22 - 477 [0.479] 500
... White vs Black: 37 - 2 - 961 [0.517] 1000
Elo difference: -2.4 +/- 4.2, LOS: 13.1 %, DrawRatio: 96.1 %
1000 of 1000 games finished.
The top 8 engines on the CCRL Rapid list that have both 4 cpu and 1 cpu ratings show an average difference of 29 elo, which is pretty consistent with your above 38 elo figure for 6 threads vs 1 thread. So while CCRL could certainly use more testing between 1 and 4 threads, it would seem that the two scales are about properly spread right now.
The elo figures need careful handling though. One mistake would be to assume that the search speedup from 1 to 4 cores has somehow diminished over the years, compared to the old days when a doubling of cores gave about +40 elo.

Presumably, the issue is chess itself is running out of headspace, and a doubling of time on one core doesn't yield so much either..
Sad times if true.
Quite true; in fact the post that showed Dragon 4 cpus drawing 100 out of 100 games vs. 3 different stockfishes strongly suggests that the top engines are practically unbeatable with normal openings at Rapid TC and 4 CPUs or more. It comes down to whether "chess" means the game played from the initial start position with free choice of openings, or whether it means playing all positions in chess (with each side playing the favorable side once). In other words, is chess with a specified opening, for example king's gambit, still chess? Chess with free choice of openings is pretty much solved now in the sense that engines can play well enough with a lot of time and cores to draw virtually every game, but with unbalanced openings it is not at all close to being solved, engines still play far from perfectly in positions where playing the right move is critical and not obvious. So with free choice of openings, or openings selected from those played frequently by top GMs, there may not even be fifty elo left to gain, but with unbalanced openings stipulated and colors flipped there may be a thousand elo left to gain. Engine ratings no longer mean anything without specifying what openings (or at least what type of opening book) were used to produce them.
I am more likely to think that drawrate is just very close to 100% at this level, after all Dragon and Stockfish are close in strenght. This is not to say that some entity can perform +200 elo against SF, Dragon or Leela in LTC and balanced opening, it's hard to believe, but I'm pretty sure that 5 years ago many people couldn't believe something able to win SF8, Houdini 6 or Komodo 10 more than half of the games with these condition. What result do you expect between dragon 3 and the most powerful engine in 5 years?
lkaufman
Posts: 6259
Joined: Sun Jan 10, 2010 6:15 am
Location: Maryland USA
Full name: Larry Kaufman

Re: Is it useful to use more than one core for stockfish?

Post by lkaufman »

Marcus9 wrote: Tue May 10, 2022 9:43 pm
lkaufman wrote: Tue May 10, 2022 6:40 pm
Werewolf wrote: Tue May 10, 2022 1:06 pm
lkaufman wrote: Mon May 09, 2022 10:47 pm
pedrox wrote: Mon May 09, 2022 9:21 pm ryzen 7 5800H 8 cores / 16 threads
40 moves in 20 seconds

Score of stockfish_14.1_win_x64_avx2 (1 thread) vs stockfish_14.1_win_x64_avx2 (6 threads): 0 - 110 - 890 [0.445]
... stockfish_14.1_win_x64_avx2 (1) playing White: 0 - 14 - 486 [0.486] 500
... stockfish_14.1_win_x64_avx2 (1) playing Black: 0 - 96 - 404 [0.404] 500
... White vs Black: 96 - 14 - 890 [0.541] 1000
Elo difference: -38.4 +/- 6.8, LOS: 0.0 %, DrawRatio: 89.0 %
1000 of 1000 games finished.

Score of stockfish_14.1_win_x64_avx2 (6 threads) vs stockfish_14.1_win_x64_avx2 (12 threads): 16 - 23 - 961 [0.496]
... stockfish_14.1_win_x64_avx2 (6) playing White: 15 - 1 - 484 [0.514] 500
... stockfish_14.1_win_x64_avx2 (6) playing Black: 1 - 22 - 477 [0.479] 500
... White vs Black: 37 - 2 - 961 [0.517] 1000
Elo difference: -2.4 +/- 4.2, LOS: 13.1 %, DrawRatio: 96.1 %
1000 of 1000 games finished.
The top 8 engines on the CCRL Rapid list that have both 4 cpu and 1 cpu ratings show an average difference of 29 elo, which is pretty consistent with your above 38 elo figure for 6 threads vs 1 thread. So while CCRL could certainly use more testing between 1 and 4 threads, it would seem that the two scales are about properly spread right now.
The elo figures need careful handling though. One mistake would be to assume that the search speedup from 1 to 4 cores has somehow diminished over the years, compared to the old days when a doubling of cores gave about +40 elo.

Presumably, the issue is chess itself is running out of headspace, and a doubling of time on one core doesn't yield so much either..
Sad times if true.
Quite true; in fact the post that showed Dragon 4 cpus drawing 100 out of 100 games vs. 3 different stockfishes strongly suggests that the top engines are practically unbeatable with normal openings at Rapid TC and 4 CPUs or more. It comes down to whether "chess" means the game played from the initial start position with free choice of openings, or whether it means playing all positions in chess (with each side playing the favorable side once). In other words, is chess with a specified opening, for example king's gambit, still chess? Chess with free choice of openings is pretty much solved now in the sense that engines can play well enough with a lot of time and cores to draw virtually every game, but with unbalanced openings it is not at all close to being solved, engines still play far from perfectly in positions where playing the right move is critical and not obvious. So with free choice of openings, or openings selected from those played frequently by top GMs, there may not even be fifty elo left to gain, but with unbalanced openings stipulated and colors flipped there may be a thousand elo left to gain. Engine ratings no longer mean anything without specifying what openings (or at least what type of opening book) were used to produce them.
I am more likely to think that drawrate is just very close to 100% at this level, after all Dragon and Stockfish are close in strenght. This is not to say that some entity can perform +200 elo against SF, Dragon or Leela in LTC and balanced opening, it's hard to believe, but I'm pretty sure that 5 years ago many people couldn't believe something able to win SF8, Houdini 6 or Komodo 10 more than half of the games with these condition. What result do you expect between dragon 3 and the most powerful engine in 5 years?
The difference is that five years ago, I don't think that the top two engines were drawing 99% or more of their games against each other on 4 CPU at Rapid tc. This draw percentage means that the best engines just don't make enough mistakes to lose a game under these conditions with normal good openings. So I don't expect that even five years in the future any engine will score well enough with good openings to beat Dragon 3 or SF 15 more than occasionally on 4 cpu Rapid, maybe +50 elo or so (perhaps more if drawish openings are excluded, as Frank Q proposes). But with unbalanced openings they may win nearly every game with White and draw nearly every game with Black for +192 elo or so. Measuring Elo gains has become rather subjective, depends heavily on opening book choice.
Komodo rules!
Uri Blass
Posts: 10918
Joined: Thu Mar 09, 2006 12:37 am
Location: Tel-Aviv Israel

Re: Is it useful to use more than one core for stockfish?

Post by Uri Blass »

lkaufman wrote: Tue May 10, 2022 11:00 pm
Marcus9 wrote: Tue May 10, 2022 9:43 pm
lkaufman wrote: Tue May 10, 2022 6:40 pm
Werewolf wrote: Tue May 10, 2022 1:06 pm
lkaufman wrote: Mon May 09, 2022 10:47 pm
pedrox wrote: Mon May 09, 2022 9:21 pm ryzen 7 5800H 8 cores / 16 threads
40 moves in 20 seconds

Score of stockfish_14.1_win_x64_avx2 (1 thread) vs stockfish_14.1_win_x64_avx2 (6 threads): 0 - 110 - 890 [0.445]
... stockfish_14.1_win_x64_avx2 (1) playing White: 0 - 14 - 486 [0.486] 500
... stockfish_14.1_win_x64_avx2 (1) playing Black: 0 - 96 - 404 [0.404] 500
... White vs Black: 96 - 14 - 890 [0.541] 1000
Elo difference: -38.4 +/- 6.8, LOS: 0.0 %, DrawRatio: 89.0 %
1000 of 1000 games finished.

Score of stockfish_14.1_win_x64_avx2 (6 threads) vs stockfish_14.1_win_x64_avx2 (12 threads): 16 - 23 - 961 [0.496]
... stockfish_14.1_win_x64_avx2 (6) playing White: 15 - 1 - 484 [0.514] 500
... stockfish_14.1_win_x64_avx2 (6) playing Black: 1 - 22 - 477 [0.479] 500
... White vs Black: 37 - 2 - 961 [0.517] 1000
Elo difference: -2.4 +/- 4.2, LOS: 13.1 %, DrawRatio: 96.1 %
1000 of 1000 games finished.
The top 8 engines on the CCRL Rapid list that have both 4 cpu and 1 cpu ratings show an average difference of 29 elo, which is pretty consistent with your above 38 elo figure for 6 threads vs 1 thread. So while CCRL could certainly use more testing between 1 and 4 threads, it would seem that the two scales are about properly spread right now.
The elo figures need careful handling though. One mistake would be to assume that the search speedup from 1 to 4 cores has somehow diminished over the years, compared to the old days when a doubling of cores gave about +40 elo.

Presumably, the issue is chess itself is running out of headspace, and a doubling of time on one core doesn't yield so much either..
Sad times if true.
Quite true; in fact the post that showed Dragon 4 cpus drawing 100 out of 100 games vs. 3 different stockfishes strongly suggests that the top engines are practically unbeatable with normal openings at Rapid TC and 4 CPUs or more. It comes down to whether "chess" means the game played from the initial start position with free choice of openings, or whether it means playing all positions in chess (with each side playing the favorable side once). In other words, is chess with a specified opening, for example king's gambit, still chess? Chess with free choice of openings is pretty much solved now in the sense that engines can play well enough with a lot of time and cores to draw virtually every game, but with unbalanced openings it is not at all close to being solved, engines still play far from perfectly in positions where playing the right move is critical and not obvious. So with free choice of openings, or openings selected from those played frequently by top GMs, there may not even be fifty elo left to gain, but with unbalanced openings stipulated and colors flipped there may be a thousand elo left to gain. Engine ratings no longer mean anything without specifying what openings (or at least what type of opening book) were used to produce them.
I am more likely to think that drawrate is just very close to 100% at this level, after all Dragon and Stockfish are close in strenght. This is not to say that some entity can perform +200 elo against SF, Dragon or Leela in LTC and balanced opening, it's hard to believe, but I'm pretty sure that 5 years ago many people couldn't believe something able to win SF8, Houdini 6 or Komodo 10 more than half of the games with these condition. What result do you expect between dragon 3 and the most powerful engine in 5 years?
The difference is that five years ago, I don't think that the top two engines were drawing 99% or more of their games against each other on 4 CPU at Rapid tc. This draw percentage means that the best engines just don't make enough mistakes to lose a game under these conditions with normal good openings. So I don't expect that even five years in the future any engine will score well enough with good openings to beat Dragon 3 or SF 15 more than occasionally on 4 cpu Rapid, maybe +50 elo or so (perhaps more if drawish openings are excluded, as Frank Q proposes). But with unbalanced openings they may win nearly every game with White and draw nearly every game with Black for +192 elo or so. Measuring Elo gains has become rather subjective, depends heavily on opening book choice.
I am not sure if the problem is that the engines do not do enough mistakes or maybe the opponents do not play in order to help them to make mistakes.

It may be interesting to get the opening positions of the 50 draws of Dragon 4 cpu against Stockfish14.1 1 cpu and to have some tool to build a killer book for all the relevant openings in order to beat stockfish and dragon based on testing with many games.

I suggested one algorithm to try to do it.
Another try may be to do selective search when you search for yourself every move and for the opponent only moves that you expect the opponents to play in the relevant time control(time control that the opponent play almost perfect in order to find the positions that the opponent is going to blunder.

First step should be to build some tree for selective search and second when for yourself you have all candidate moves and for the opponent only one move that you expect to play.
Second step may be to play based on this selective search.

The idea for CCRL to test what is possible(of course you need for it some relevant software to build the tree in every position) may be that
the engine may use for every move hours to build the tree and after doing it use hours to search in order to beat the opponent that use 1 minute per move to search.

First step by the programmer may be to use the same idea for shorter time control(to see if 3 minute per move may beat 1 second per move by a bigger difference than normal games) and only after good results if they happen to try the same idea with longer time control.
Modern Times
Posts: 3758
Joined: Thu Jun 07, 2012 11:02 pm

Re: Is it useful to use more than one core for stockfish?

Post by Modern Times »

Uri Blass wrote: Wed May 11, 2022 7:40 am It may be interesting to get the opening positions of the 50 draws of Dragon 4 cpu against Stockfish14.1 1 cpu
I can see that that was played with the Balsa V500 book/pgn (500 lines mainly up to 5 moves):

https://sites.google.com/site/computers ... test-suite

You can download the games to see what openings the GUI randomly chose from that.
Marcus9
Posts: 85
Joined: Mon May 13, 2019 6:05 pm
Full name: Marco Giorgio

Re: Is it useful to use more than one core for stockfish?

Post by Marcus9 »

lkaufman wrote: Tue May 10, 2022 11:00 pm
Marcus9 wrote: Tue May 10, 2022 9:43 pm
lkaufman wrote: Tue May 10, 2022 6:40 pm
Werewolf wrote: Tue May 10, 2022 1:06 pm
lkaufman wrote: Mon May 09, 2022 10:47 pm
pedrox wrote: Mon May 09, 2022 9:21 pm ryzen 7 5800H 8 cores / 16 threads
40 moves in 20 seconds

Score of stockfish_14.1_win_x64_avx2 (1 thread) vs stockfish_14.1_win_x64_avx2 (6 threads): 0 - 110 - 890 [0.445]
... stockfish_14.1_win_x64_avx2 (1) playing White: 0 - 14 - 486 [0.486] 500
... stockfish_14.1_win_x64_avx2 (1) playing Black: 0 - 96 - 404 [0.404] 500
... White vs Black: 96 - 14 - 890 [0.541] 1000
Elo difference: -38.4 +/- 6.8, LOS: 0.0 %, DrawRatio: 89.0 %
1000 of 1000 games finished.

Score of stockfish_14.1_win_x64_avx2 (6 threads) vs stockfish_14.1_win_x64_avx2 (12 threads): 16 - 23 - 961 [0.496]
... stockfish_14.1_win_x64_avx2 (6) playing White: 15 - 1 - 484 [0.514] 500
... stockfish_14.1_win_x64_avx2 (6) playing Black: 1 - 22 - 477 [0.479] 500
... White vs Black: 37 - 2 - 961 [0.517] 1000
Elo difference: -2.4 +/- 4.2, LOS: 13.1 %, DrawRatio: 96.1 %
1000 of 1000 games finished.
The top 8 engines on the CCRL Rapid list that have both 4 cpu and 1 cpu ratings show an average difference of 29 elo, which is pretty consistent with your above 38 elo figure for 6 threads vs 1 thread. So while CCRL could certainly use more testing between 1 and 4 threads, it would seem that the two scales are about properly spread right now.
The elo figures need careful handling though. One mistake would be to assume that the search speedup from 1 to 4 cores has somehow diminished over the years, compared to the old days when a doubling of cores gave about +40 elo.

Presumably, the issue is chess itself is running out of headspace, and a doubling of time on one core doesn't yield so much either..
Sad times if true.
Quite true; in fact the post that showed Dragon 4 cpus drawing 100 out of 100 games vs. 3 different stockfishes strongly suggests that the top engines are practically unbeatable with normal openings at Rapid TC and 4 CPUs or more. It comes down to whether "chess" means the game played from the initial start position with free choice of openings, or whether it means playing all positions in chess (with each side playing the favorable side once). In other words, is chess with a specified opening, for example king's gambit, still chess? Chess with free choice of openings is pretty much solved now in the sense that engines can play well enough with a lot of time and cores to draw virtually every game, but with unbalanced openings it is not at all close to being solved, engines still play far from perfectly in positions where playing the right move is critical and not obvious. So with free choice of openings, or openings selected from those played frequently by top GMs, there may not even be fifty elo left to gain, but with unbalanced openings stipulated and colors flipped there may be a thousand elo left to gain. Engine ratings no longer mean anything without specifying what openings (or at least what type of opening book) were used to produce them.
I am more likely to think that drawrate is just very close to 100% at this level, after all Dragon and Stockfish are close in strenght. This is not to say that some entity can perform +200 elo against SF, Dragon or Leela in LTC and balanced opening, it's hard to believe, but I'm pretty sure that 5 years ago many people couldn't believe something able to win SF8, Houdini 6 or Komodo 10 more than half of the games with these condition. What result do you expect between dragon 3 and the most powerful engine in 5 years?
The difference is that five years ago, I don't think that the top two engines were drawing 99% or more of their games against each other on 4 CPU at Rapid tc. This draw percentage means that the best engines just don't make enough mistakes to lose a game under these conditions with normal good openings. So I don't expect that even five years in the future any engine will score well enough with good openings to beat Dragon 3 or SF 15 more than occasionally on 4 cpu Rapid, maybe +50 elo or so (perhaps more if drawish openings are excluded, as Frank Q proposes). But with unbalanced openings they may win nearly every game with White and draw nearly every game with Black for +192 elo or so. Measuring Elo gains has become rather subjective, depends heavily on opening book choice.
Maybe the mistakes are made by both engines, but they are so subtle that neither SF15 or Dragon 3 can see. I expect an engine that performs +50 elo whitin two years and +100 elo whitin 5 years against SF15 or Dragon 3 on 4 cpu Rapid 8moves_v3 openings