I’d like to propose a small but potentially impactful enhancement to Fishtest's worker assignment logic, specifically related to multithreaded (MT) tests.
Background
Currently, any worker that reports a sufficient number of cores is automatically eligible to receive multithreaded tests. This works well in most cases, but we’ve encountered certain edge cases where the worker's hardware or configuration leads to consistent issues with MT tests.
A concrete example is the worker Viren6, which reports 48 cores and is therefore assigned MT tests. However, every time Viren runs such tests, approximately 50% of the games are corrupted due to time losses, strongly indicating inefficiencies or misconfiguration in its multithreaded environment. This not only reduces the quality and efficiency of the testing process, but also wastes CPU cycles and introduces noise in the test results.
Proposal
I suggest introducing an opt-out mechanism for multithreaded test assignments on a per-worker basis:
By default, all workers with sufficient cores remain eligible for MT tests.
For exceptional cases like Viren’s, a flag could be set that marks the worker as ineligible for MT tests.
The worker would still receive regular single-threaded (SMP) tests as usual.
Benefits
Prevents known-problematic workers from degrading MT test quality.
Increases overall reliability and throughput of MT testing.
Introduces a low-maintenance solution that only needs occasional use in special cases.
I believe this would be a helpful addition to improve test reliability without complicating the system or the worker setup.

I’d like to propose a small but potentially impactful enhancement to Fishtest's worker assignment logic, specifically related to multithreaded (MT) tests.
Background
Currently, any worker that reports a sufficient number of cores is automatically eligible to receive multithreaded tests. This works well in most cases, but we’ve encountered certain edge cases where the worker's hardware or configuration leads to consistent issues with MT tests.
A concrete example is the worker Viren6, which reports 48 cores and is therefore assigned MT tests. However, every time Viren runs such tests, approximately 50% of the games are corrupted due to time losses, strongly indicating inefficiencies or misconfiguration in its multithreaded environment. This not only reduces the quality and efficiency of the testing process, but also wastes CPU cycles and introduces noise in the test results.
Proposal
I suggest introducing an opt-out mechanism for multithreaded test assignments on a per-worker basis:
By default, all workers with sufficient cores remain eligible for MT tests.
For exceptional cases like Viren’s, a flag could be set that marks the worker as ineligible for MT tests.
The worker would still receive regular single-threaded (SMP) tests as usual.
Benefits
Prevents known-problematic workers from degrading MT test quality.
Increases overall reliability and throughput of MT testing.
Introduces a low-maintenance solution that only needs occasional use in special cases.
I believe this would be a helpful addition to improve test reliability without complicating the system or the worker setup.