official-stockfish/fishtest
The Stockfish testing framework
解决的问题
Fishtest 提供了一个用于测试棋类引擎的分布式系统,使开发者能够通过众包方式获取大量计算资源,以验证新的代码更改(补丁)是否真正提升了引擎的棋力。
工作原理
该系统由服务器和分布式工作节点网络组成:
- 工作节点: 安装在贡献者计算机上。它们会自动下载引擎源码、当前 Stockfish 版本以及待测试的补丁。在各自平台上编译代码,使用 fastchess 管理器运行游戏批次,并将结果上传回服务器。
- 服务器: 管理测试队列和优先级。从游戏结果中计算概率值,并持续监控测试,直到结果达到统计显著性,此时发布最终结果。
适用人群
希望协作提升 Stockfish 棋力的棋类引擎开发者和 CPU 贡献者。
主要亮点
- 分布式任务队列: 利用贡献者群体进行大规模测试。
- 自动化流水线: 自动处理从源码下载、编译到游戏执行和结果报告的全部流程。
- 跨平台支持: 工作节点可编译为不同平台版本。
- 统计验证: 一旦结果达到统计显著性,自动停止测试。
相关
- 项目
- 项目
- 项目
- 项目
- 项目