On Thu, Sep 11, 2014 at 05:04:56PM +0000, VandeVondele Joost wrote: > > Here is a patch I'm testing now: > > I also tested your patch to compare timings vs a newer patch (v8) I'll send > soon > > == patch v8 == make -j32 -k == > check-fortran 4m58.178s > check-c++ ~10m > check-c ~10m > check 15m29.873s > > == patch Jakub > check-c++ ~20m > check-fortran 3m31.237s > check-c 8m8 > > on the positive side, your patch provides a further speedup e.g. fortran > and c testing (where it splits things nicely). The libstdc++ bottleneck > is not solved, but I guess that is expected.
The same technique can be of course used for libstdc++, I just didn't want to do that until the -C gcc testing is changed. > As you have presumably found as well, your patch introduces a number > failures, because some tests seem to have additional dependencies, either > explicit or implicit: I found more issues, in particular it seemed that struct-layout-1.exp, gnu-encoding.exp, plugin.exp and some go*.exp don't call runtest_file_p in the same amounts and same arguments in all invocations. And these Fortran inter-test dependencies, which Tobias told me is PR56408. Unfortunately my remote testing box is unreachable now and I'm still waiting for DDR4 modules to finish building better workstation, so can't test this right now. The patch below intends to serialize the content of the problematic *.exp tests (the first runtest to reach one of those will simply run all the tests from that *.exp file, others will skip it). For go I currently have no idea why does that happen, quick hack would be just disable parallelization of go temporarily and let Ian investigate. For PR56408 we need some fix. Jakub