[ada, testsuite] Parallelize check-gnat

Jakub Jelinek jakub@redhat.com
Fri Oct 21 14:55:00 GMT 2016

On Fri, Oct 21, 2016 at 04:01:48PM +0200, Rainer Orth wrote:
> I happened to notice that the gnat.dg testsuite run is slow even on a
> reasonably fast SPARC machine (3.6 GHz SPARC T5) and together with the
> libgomp testsuite (PR libgomp/66005) dominates bootstrap time: within a
> make -j96 -k check, it takes 1h 18m 37s.  For unknown reasons,
> check-gnat isn't parallelized though it is trivial to do and buys quite
> a bit:

check-gnat dominates anything?  That just really weird,
it has only
# of expected passes            2544
# of unexpected failures        2
# of expected failures          24
# of unsupported tests          3

compared to the 100000+ tests in gcc/g++ or 40000+ in gfortran testsuites
it is just nothing.

libgomp is a know problem, sure, the problem with parallelizing it is that
many tests just use all available cores/threads.  Perhaps we should do some
small (at most 2 or 3 concurrent libgomp tests) parallelization of the
libgomp testsuite unless disallowed through some env var option, but in that
case bound OMP_NUM_THREADS if `getconf _NPROCESSORS_ONLN` > 32 to
`getconf _NPROCESSORS_ONLN` / 2 or something similar.

I'm not strongly against your patch, I'm just very surprised it is really
needed (acats is much larger, check-gnat is small).

> 2016-10-21  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
> 	* gcc-interface/Make-lang.in (lang_checks_parallelized): New target.
> 	(check_gnat_parallelize): Likewise.


More information about the Gcc-patches mailing list