Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This pull request introduces a new Docker setup for the OpenBench Client, including a
Dockerfileto define the build environment and arun.shscript to handle runtime configuration. The changes streamline the installation of dependencies and automate the client setup process.The current Dockerfile installs the following compilers (and versions):
gcc/g++(Latest paired withbuild-essentialpackage - should be >= 13.0.0)clang/clang++(Major version: 20, Minor version: Latest)dotnet(Major version: 9, Minor version: Latest)rustc/cargo(Latest - 1.87.0 as of June 22nd, 2025)zig(0.14.1)For each compiler, perhaps we should specify the exact versions we install to avoid any behavioral changes. Would love to hear community consensus.
The current startup script uses the following thread formula:
This was suitable for the Verdict framework, as after extensive testing, these core counts ensure that cutechess-caused timeouts don't occur even at low time controls. However, the overall community may prefer a more aggressive formula.
Core pinning and frequency locking is not handled, as it is subject to the hypervisor OS and should be handled at container creation or startup time. Furthermore, although this script supports multi-socket operation, it is likely not appropriately configured, and containers should not be deployed across multiple sockets. It's hard to do this reliably within a container.