Description
Describe your issue
We're using GNU Parallel to run a large test suite, and oftentimes when hitting problems with it (like MacOS support glitches) I wish I could move to something more modern. But due to it being a somewhat heavy e2e test suite the tests in it have some deadlines etc. under which we expect things to happen. They are large enough that normally it is not a problem, but it requires that the tests don't pile all up at the same, even though they are not only CPU-bound workloads (they are bursty in nature, use a lot of IO and memory as well as CPU).
GNU Parallel has these 3 features that make it work seamlessly:
--load
helps keep the load on the machine within acceptable bounds, irrespective how powerful the dev machine is, and what else they might be using it for,
--memfree
makes sure that there is enough memory,
--delay
helps stagger the test start so each has some time to fully kick in before parallel
makes a decision if the machine has enough compute power to start another one.