Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

🐛 Clear PlyStackEntry shared array on return #1182

Merged
merged 1 commit into from
Nov 19, 2024

Conversation

eduherminio
Copy link
Member

@eduherminio eduherminio commented Nov 19, 2024

Not clearing it causes an issue (non deterministic bench command results) when attempting to refactor TT initialization in #1150, when:
This issue appears when:

  • TT initialization is moved outside of Engine.cs (i.e. to top level Program.cs in repro below, other class than engine in PR above)
  • TT initialization uses pinned: true
  • GC mode is Workstation

Better reproduced in #1181

Test  | bugfix/clear-PlyStackEntry-sharedarray-onreturn
Elo   | 4.76 +- 5.21 (95%)
SPRT  | 8.0+0.08s Threads=1 Hash=32MB
LLR   | 2.94 (-2.25, 2.89) [-5.00, 0.00]
Games | 7224: +2072 -1973 =3179
Penta | [157, 828, 1563, 887, 177]
https://openbench.lynx-chess.com/test/957/

@eduherminio eduherminio marked this pull request as ready for review November 19, 2024 22:16
@eduherminio eduherminio merged commit 5b61931 into main Nov 19, 2024
27 checks passed
@eduherminio eduherminio deleted the bugfix/clear-PlyStackEntry-sharedarray-onreturn branch November 19, 2024 22:17
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