Re: Is there a MPI version cutechess-cli?
Posted: Wed Sep 04, 2013 12:50 am
Hi all,
It seems that there was not such a MPI version cutechess-cli. I wrote a simple program called "cute-mpi-interface", which just simply split a testing tournament into several parts and run cutechess-cli for them independently on different hosts. Here is the link of src: https://github.com/nkg114mc/cute-mpi-interface Hope it would be helpful for the testers who can use a cluster system.
Before I wrote this small tool, I found this piece of code in the post by Daniel Shawul in 2010: http://www.open-aurec.com/wbforum/viewt ... =2&t=50727 Thanks for Daniel's early work! It is very helpful
The usage of this tool is simple. Suppose you want to run a tournament by typing cmd "./cutechess-cli <cute-cmd>", then you can just type "mpiexec -np <N> -cuteexec ./cutechess-cli <cute-cmd>". The only extra option than cutechess is "-cuteexec", just to indicate the path of cutechess-cli binary file. All other options are for cutechess-cli.
An example script is included in the repository with a "FishCooking" opening "8moves_GM.pgn", and options for a three engines gauntlet tournament.
The current version is still not functional completed. For the opening, it only supports pgn format. Also, the split staterge now is "only-split-rounds", because I assume that no. of rounds is usually much larger than no. of pairs for engine testers. For example, if a tournament will run 1000 rounds per pair for 6 pairs of engines (6000 games in total), and now you want to run it on 100 hosts, this tool will split it into 100 small tournaments: each tournament contains 10 rounds per pair and 6 pairs (so 60 games for each small tournament). The opening pgn will also be splitted into 100 different segments to avoid repeated games.
Please email me if you see any bugs.
It seems that there was not such a MPI version cutechess-cli. I wrote a simple program called "cute-mpi-interface", which just simply split a testing tournament into several parts and run cutechess-cli for them independently on different hosts. Here is the link of src: https://github.com/nkg114mc/cute-mpi-interface Hope it would be helpful for the testers who can use a cluster system.
Before I wrote this small tool, I found this piece of code in the post by Daniel Shawul in 2010: http://www.open-aurec.com/wbforum/viewt ... =2&t=50727 Thanks for Daniel's early work! It is very helpful
The usage of this tool is simple. Suppose you want to run a tournament by typing cmd "./cutechess-cli <cute-cmd>", then you can just type "mpiexec -np <N> -cuteexec ./cutechess-cli <cute-cmd>". The only extra option than cutechess is "-cuteexec", just to indicate the path of cutechess-cli binary file. All other options are for cutechess-cli.
An example script is included in the repository with a "FishCooking" opening "8moves_GM.pgn", and options for a three engines gauntlet tournament.
The current version is still not functional completed. For the opening, it only supports pgn format. Also, the split staterge now is "only-split-rounds", because I assume that no. of rounds is usually much larger than no. of pairs for engine testers. For example, if a tournament will run 1000 rounds per pair for 6 pairs of engines (6000 games in total), and now you want to run it on 100 hosts, this tool will split it into 100 small tournaments: each tournament contains 10 rounds per pair and 6 pairs (so 60 games for each small tournament). The opening pgn will also be splitted into 100 different segments to avoid repeated games.
Please email me if you see any bugs.