[distcc] Multiple people running distcc at once,
using one DISTCC_DIR
Daniel Kegel
dank at kegel.com
Tue Sep 28 18:56:46 GMT 2004
Victor Norman wrote:
> Dan, Jean, et al.,
>
> I have taken Dan up on his challenge (sort of). I ran 6 compiles
> simultaneously, each with its own DISTCC_DIR, and with host list randomization
> turned on, and -j20. What I found is that the compilation times increased
> pretty significantly: from 39 minutes to 60 minutes [ on my 44 node cluster ].
Can you benchmark lower values for -j ?
> I suspect the results would have been even worse if my modifications
> weren't included.
Can you try with vanilla distcc-2.16 (with my randomization patch,
http://kegel.com/crosstool/crosstool-0.28-rc34/patches/distcc-2.16/randomhost.patch,
be sure to enable randomization, I think you have to list --randomize as the
first host), and see how much your mods really help? You might want to
drop slow nodes from the list for this test, not sure.
> Do you recommend distcc-2.17?
I don't recommend distcc-2.17, as I suspect the longjmp is unsafe.
> my goal is to have 10 simultaneous compiles (at -j20) work well, so we
> would have up to 200 requests simultaneously. ...
stock distcc doesn't do well at handling overqueuing. You may need to
tune your -j value such that # of pending jobs is roughly same as # of CPUs.
> "The system performance [should] decline gracefully under heavy loads."
You should add "without tuning the -j value" to that requirement, I think.
Making distcc work well even with rediculously high -j values is an
interesting question. It's possible this is a reasonable thing to
ask for; distcc should throttle back the -j'ness automatically, maybe.
- Dan
More information about the distcc
mailing list