Skip to content

Conversation

eduherminio
Copy link
Member

@eduherminio eduherminio commented Dec 9, 2024

  • Main engine + extra engines concept, former ones allocated in Searcher constructor/ucinewgame
  • Task.Run(()=> engine.BestMove()) for extra engine start
  • engine.StopSearching(); stop for all engines + Task.WhenAll()
  • No TT locks
  • No TT XOR trick

8+0.08, 2 vs 1 threads, UHO opening book

Score of Lynx-search-multi-threading-base-4706-win-x64 vs Lynx 4703 - main: 88 - 22 - 90  [0.665] 200
...      Lynx-search-multi-threading-base-4706-win-x64 playing White: 62 - 4 - 34  [0.790] 100
...      Lynx-search-multi-threading-base-4706-win-x64 playing Black: 26 - 18 - 56  [0.540] 100
...      White vs Black: 80 - 30 - 90  [0.625] 200
Elo difference: 119.1 +/- 36.0, LOS: 100.0 %, DrawRatio: 45.0 %
SPRT: llr 1.18 (40.8%), lbound -2.25, ubound 2.89

Progress test (8moves_v3)

Test  | search/multi-threading-base
Elo   | 90.52 +- 6.17 (95%)
Conf  | 8.0+0.08s Threads=2 Hash=32MB
Games | 5004: +1713 -438 =2853
Penta | [25, 214, 1013, 961, 289]
https://openbench.lynx-chess.com/test/1053/
Test  | search/multi-threading-base
Elo   | 178.38 +- 6.95 (95%)
Conf  | 8.0+0.08s Threads=4 Hash=32MB
Games | 5000: +2511 -148 =2341
Penta | [4, 60, 638, 1165, 633]
https://openbench.lynx-chess.com/test/1054/
Test  | search/multi-threading-base
Elo   | 251.78 +- 12.47 (95%)
Conf  | 8.0+0.08s Threads=8 Hash=32MB
Games | 2020: +1274 -22 =724
Penta | [0, 7, 135, 477, 391]
https://openbench.lynx-chess.com/test/1057/

40+0.4, 2 vs 1 threads

Score of Lynx-search-multi-threading-base-4706-win-x64 vs Lynx 4703 - main: 151 - 33 - 376  [0.605] 560
...      Lynx-search-multi-threading-base-4706-win-x64 playing White: 92 - 16 - 172  [0.636] 280
...      Lynx-search-multi-threading-base-4706-win-x64 playing Black: 59 - 17 - 204  [0.575] 280
...      White vs Black: 109 - 75 - 376  [0.530] 560
Elo difference: 74.3 +/- 16.0, LOS: 100.0 %, DrawRatio: 67.1 %
SPRT: llr 0 (0.0%), lbound -inf, ubound inf

8+0.08 2 threads + ponder vs 1 thread, no draw or win adjudications
Ponder was ~45 elo and 2 threads were ~90 (see above), so results add up

Score of Lynx-search-multi-threading-base-4771-win-x64 vs Lynx 4769 - main: 2228 - 219 - 2553  [0.701] 5000
...      Lynx-search-multi-threading-base-4771-win-x64 playing White: 1231 - 81 - 1188  [0.730] 2500
...      Lynx-search-multi-threading-base-4771-win-x64 playing Black: 997 - 138 - 1365  [0.672] 2500
...      White vs Black: 1369 - 1078 - 2553  [0.529] 5000
Elo difference: 147.9 +/- 6.6, LOS: 100.0 %, DrawRatio: 51.1 %

Stability
20k games 4 threads 4+0.04 vs itself, no draw or win adjudications (concurrency 2, 16 vcpus)

Test  | search/multi-threading-base
Elo   | 2.94 +- 3.03 (95%)
Conf  | 4.0+0.04s Threads=4 Hash=32MB
Games | 20000: +4296 -4127 =11577
Penta | [386, 2303, 4473, 2432, 406]
https://openbench.lynx-chess.com/test/1074/

5k games 2 threads ponder on 6+0.06 vs itself, no draw or win adjudications (concurrency 3, 16 vcpus)

Score of Lynx-search-multi-threading-base-4771-win-x64 vs Lynx-search-multi-threading-base-4771-win-x64: 830 - 876 - 3294  [0.495] 5000
...      Lynx-search-multi-threading-base-4771-win-x64 playing White: 467 - 371 - 1662  [0.519] 2500
...      Lynx-search-multi-threading-base-4771-win-x64 playing Black: 363 - 505 - 1632  [0.472] 2500
...      White vs Black: 972 - 734 - 3294  [0.524] 5000
Elo difference: -3.2 +/- 5.6, LOS: 13.3 %, DrawRatio: 65.9 %
SPRT: llr 0 (0.0%), lbound -inf, ubound inf

eduherminio and others added 30 commits December 7, 2024 02:35
@eduherminio eduherminio marked this pull request as ready for review December 10, 2024 11:01
@eduherminio eduherminio merged commit 96e44e7 into main Dec 10, 2024
27 checks passed
@eduherminio eduherminio deleted the search/multi-threading-base branch December 10, 2024 22:25
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant