Kattis / problemtools

Tools to manage problem packages using the Kattis problem package format.
MIT License
101 stars 70 forks source link

Add -j flag for multi-threaded validation #263

Closed simonlindholm closed 3 weeks ago

simonlindholm commented 3 weeks ago

Only parallelizes test case execution and submission compilation at the moment; input validation could be added with a bit of additional work, but it felt less important to me since it takes almost no time with validators written in C++ as we usually have it.

mypy is happy with the refactoring and I've done some lightweight testing, but it's possible that there's some breakage along less happy paths, though probably restricted to -j.

simonlindholm commented 3 weeks ago

Good suggestion! Why the letter j? Just because t is in use?

-j is the customary flag for threading. Also used by e.g. make, and by generatedata.py in this repo.