Marc Glisse <marc.glisse@xxxxxxxx> writes: > building gcc in parallel (make -j): works ok > > installing gcc in parallel: not necessary (used to fail regularly, but > I haven't tried recently) > > running the testsuite in parallel: not so parallel > > On an 8-core PC, for a c,c++ build, make -k -j check leaves the > computer at least 60% idle (I looked at top periodically), and for a > huge part of the time it uses at most 2 cores (and often only 1). > > Since it looks like the testsuite is supposed to run in parallel, I > wonder if I am doing it the wrong way, if there are options to pass or > a different command to run? The horrible test harness that we use, DejaGNU, does not support running tests in parallel. Running them in parallel is implemented as a hack in which the tests are manually split up into sets, and the various sets are passed to DejaGNU in parallel. So what you are seeing is that manually splitting up tests does not lead to optimal use of a parallel build. There is no simple fix, but as the actual splitting was done several years ago it is possible that new tests have overloaded some of the subsets. Perhaps simply resplitting the tests would lead to better parallelism. I don't know. If you want to investigate, look at check_gcc_parallelize and friends in gcc/Makefile.in. Ian