Bruno Haible wrote: > Hi Eric, Jim, > >> >> This ensures that long-running tests are executed last. So that the user >> >> gets the maximum of information as quickly as possible. >> > >> > That goes counter to the idea of parallel execution, where you want the >> > long-running tests front-loaded so that the shorter tests can fill in >> > the gaps. If the long-running tests are last, then the entire parallel >> > operation is stuck waiting for the last test. >> >> I have deliberately reordered some tests to put long-running >> ones early enough so that a parallel (often -j5 or more) build >> completes as quickly as possible. > > Hmm, it seems we are trying to optimize for different execution models and > different goals: > - I was assuming a sequential execution (since this is the default with > "make") and the goal of maximizing the information that is available > within a short time after starting the test. > - You are assuming a parallel execution with several processors, and
No need for several processors. If a single one of your tests does a "sleep 1", then "make -j2" is almost guaranteed to be beneficial. Some of our tests sleep for many seconds, but we've been trying to avoid that.