Speed up tests by running the biggest ones first
Towards the end of a test run, there's typically a period when only
one or a few cores are busy with the last of the tests---the ones that
take a very long time. By sorting the tests according to their
expected runtime and starting the longest-running ones first, we
minimize this effect.
This patch records the runtime in ~/.gtest-parallel-times once all
tests have finished; on subsequent runs, this data is used to start
the longest-running tests first. Speedup varies depending on which
tests are run, but the usual seems to be about 10%, and I haven't
observed a slowdown for any set of tests (though admittedly, my sample
is very modest).
1 file changed