[H-GEN] distcc at meetings

Greg Black gjb at gbch.net
Tue Apr 13 08:56:44 EDT 2004


On 2004-04-13, Anthony Towns wrote:
> On Tue, Apr 13, 2004 at 04:56:47PM +1000, Greg Black wrote:
> > So distcc certainly saved time for a first build, but nowhere
> > near as much as ccache. 
> 
> Err, unless your build is pretty screwed up (you're often compiling
> the exact same file, with the same options twice in a single build),
> ccache shouldn't speed up a first build at all.

Sigh, I expressed myself poorly there.  In fact, for kernel
compiles, ccache does buy a bit[1] on the first build, but the
amount is insignificant and that's not what I was referring to.

The second line of the quote at the top needs the following
edit:

    s/much as/much overall as/

> I guess your options are to use nothing, ccache, or distcc+ccache, and
> only switch to the later options when the previous ones aren't working
> well enough for you. 

Well, the nothing option makes no sense at all, as ccache costs
nothing to use and virtually nothing to install/setup and will
help most of the time.  My distcc timings, although I did not
mention it, used ccache anyway -- so they were, strictly
speaking, "distcc+ccache", and they were not really any benefit
over ccache alone.  And distcc is harder to setup; easy to get
wrong (witness the efforts at the meeting where people had
distcc servers accepting work for incompatible platforms, which
distcc manages quite poorly); and subject to certain security
questions (although this is less true of the very latest
version).

> The only reason you'd use distcc without ccache
> that I can think of is if you're compiling _lots_ of stuff and don't
> have the diskspace to cache anything for long enough that it'll come
> around again -- building all of Debian, or even just xfree86 might hit
> that sort of level, but most things don't.

If you don't have the disk space to cache a useful amount, then
you're compiling stuff on a manifestly unsuitable machine and in
that case the right solution involves hardware.  Of course, if
there's some reason why you can't throw hardware at it (hard to
believe in the 21st century), then distcc just might be the
perfect answer.

However, for me, it's just not worth the effort.

> aj, who usually has problems fully utilising a single processor, let alone
>     more than that

That's why god invented distributed.net and the rest of those
things to use up your wasted cycles :-)

> Protect Open Source in Australia from over-reaching changes to IP law
> http://www.petitiononline.com/auftaip/ & http://www.linux.org.au/fta/

I must say that I think everybody here should be pushing that
petition -- signing it and encouraging others to sign it, at the
least.

Cheers, Greg

[1] I managed to throw away the window I was using for my tests,
    but I did see that a few files were compiled more than once
    in even the initial kernel build; this would not happen with
    most software, but most software is less complex than a Unix
    kernel (which, in this case, left 1576 files in the cache).
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 249 bytes
Desc: not available
URL: <http://lists.humbug.org.au/pipermail/general/attachments/20040413/6b7b9fa5/attachment.sig>


More information about the General mailing list