[distcc] re: distributed compiler cache

MartinPool mbp at samba.org
Thu Sep 12 10:30:00 GMT 2002

On 12 Sep 2002, Joerg Beyer <j.beyer at web.de> wrote:

> no, not one machine each. I was not explicit about this, but my scenario 
> is more like this: imagine having a "reference machine" where all
> builds are done (a lot of software in the correct version installed,
> dont ask me).

Heh, I have the same thing at work.  It's a pain.

In that case you might as well just use 
  CC='ccache distcc'

on that reference machine, so that files are cached on the reference
machine, but compiled anywhere if they're not found in the cache.

> There are other machines availabe that could do compile jobs (since
> you only need the same gcc version - all other libraries, header, 
> kernel version and so on could differ).
> > converge towards having all relevant source files cached on every
> > machine.
> yes, the caches will converge. is that necessary? The transport 
> over plain TCP is lighweight and fast. 

No, that's fine.  I was thinking about a different setup.

> > > This scenario still needs a central component that handles the access
> > > to the on disk cache (that thing, that I called master), ok?
> > 
> > I don't understand what your master needs to do that can't be just
> > done by the existing ccache program.  It can handle concurrent calls
> I asume for reading the source, that no locking of parallel 
> (write) accesses of the on disk cache is done. Imagine 
> a group of developers, using a single machine for the 
> precompiling step but several machines for file.i -> file.o
> compilation. I think there are race condiitons, right?

No, I don't think there's any race there.  Where do you think it is?

> how would you separate accesses to the on disk cache in a way
> that there are no race conditions?
> > using appropriate locking.  It won't make any difference whether those
> > calls are local, or coming across the network via distccd.
> right, it's the same, where the request come from.

> > (Please write to the mailing list so that other people can contribute
> > too.) 
> which one?

distcc at lists.samba.org

You can subscribe, if you like, through the distcc web site.


More information about the distcc mailing list