[ccache] parallel builds with a high cache hit kill the local host

Martin Pool mbp at sourcefrog.net
Fri Jan 7 22:23:49 GMT 2005


On  7 Jan 2005, Timothee Besset <ttimo at idsoftware.com> wrote:

> I've been using "ccache distcc" for everyday work for quite some
> time now, and it's working great most of the time. However, I'm
> finding that ccache can be trouble with parallel building in some
> circumstances:
> 
> I run between 10 and 15 jobs for a build. I have enough CPUs around
> to distribute that fine with distcc. However, if I wipe out my build
> tree and rebuild, then ccache is going to catch most of the files in
> the build .. and start 15 processes on the local host, making it
> completely unresponsive for a while.

Under Make using -l might help, but SCons doesn't seem to have that.

Running the whole build at nice 15 might help, depending on what
exactly is causing the machine to be unresponsive.

> Is it possible to add a global lock count for ccache so the new
> processes wait for a free work slot before doing their thing? I'm
> not sure if that should be a startup lock, or a lock to check after
> the cache hit/miss decision. A global lock is probably best..

That might be good; it should be pretty easy to add.

If you run ccache underneath distcc (only on localhost) then it should
have this behaviour.

-- 
Martin                                              There is no other window


More information about the ccache mailing list