LeelaChessZero / lczero-client

The executable that communicates with the server to run selfplay games locally and upload results
71 stars 40 forks source link

Enforce parallelism of at most 4 for match games to reduce short game bias. #72

Open Tilps opened 5 years ago

Tilps commented 5 years ago

I realized that people with high parallelism would end up with a significant level of short game bias in their match game uploads, which could become quite significant as more people contribute and the match games last for only a minute or so. High level of parallelism shouldn't be needed to get 100% gpu usage from match games, so going to try 2 which ensures no bias due to alternating colors and the server specifying which of flipped or not flipped we have to upload.

Tilps commented 5 years ago

On second thoughts parallelism of 2 does not eliminate bias.

But there is inherent bias in our distributed system that is almost equivalent anyway. But letting users set super high parallelism is probably not a good idea for match games anyway - so I think this PR is probably fine to go in. With a revised comment which I've added.

Tilps commented 5 years ago

After a bit of performance testing, 2 might be a significant slow down compared to 16, so I'm going to allow up to 4. I also made it respect the users parallelism setting if its lower than 4, for low end contributors. (Although they should probably just not do match games.)

Tilps commented 5 years ago

I've decided this probably isn't needed, but I'll probably keep it around just in case I change my mind.