Re: [PATCH v2 0/8] Support coverage testing with GCC/gcov

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Johannes Schindelin wrote:
> On Thu, 19 Feb 2009, Thomas Rast wrote:
> > I noticed two small things that I'd like to fix before this goes
> > 'next', so here they are:
> > 
> > * [1/8] Support coverage testing with GCC/gcov
> > 
> >   Changed it so the compilation (but not the testing) uses the same -j
> >   flags as the caller, so that compilation can be done in parallel.
> >   (It's rather minor compared to the slow testing with optimizations
> >   turned off, but still.)
> 
> I strongly disagree that it is minor.  _Especially_ since the tests are 
> slow, -j makes a huge difference.
> 
> And also without making the tests slower, -j makes a dramatic difference 
> here:
> 
> 	$ /usr/bin/time make -j50 test

That's not the point.

I agree that for the test suite, -j makes a huge impact, since it
takes so long.  But even though the docs claim it should be possible,
I've been getting "random" test failures when compiled with coverage
support, that went away with -j1.  So the tests still run with -j1, as
with the first version of the series.

However, the first version used a single make invocation for the'all'
and 'test' targets, which of course also means that the _compilation_
('all') happens with -j1.  That's not necessary as far as I can see,
and I split them into separate commands in v2, where 'all' doesn't
pass a -j option any more (so that the caller's choice remains in
effect).

What I meant by the above remark is that the maybe 30 seconds you gain
by compiling in parallel are a very minor gain when compared to the
enormous running time of the _sequential_ test suite _without
optimizations_, which feels like 15-20min here, I haven't even timed
it.  (I always mount t/ on a tmpfs which does away with the fsync()
bottleneck and lets me do ordinary test runs, with NO_SVN_TESTS, in
under 3min.)

-- 
Thomas Rast
trast@{inf,student}.ethz.ch

Attachment: signature.asc
Description: This is a digitally signed message part.


[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]

  Powered by Linux