From: Bill Longman <bill.longman@gmail.com>
To: gentoo-user@lists.gentoo.org
Subject: Re: [gentoo-user] distcc and crossdev, anyone?
Date: Mon, 20 Dec 2010 15:56:05 -0800 [thread overview]
Message-ID: <4D0FED15.3090208@gmail.com> (raw)
In-Reply-To: <201012181515.03108.peter@humphrey.ukfsn.org>
On 12/18/2010 07:15 AM, Peter Humphrey wrote:
> On Saturday 18 December 2010 10:18:43 Neil Bothwick wrote:
>
>> I've found there's just too much overhead with distcc, plus much of
>> the work is still done locally.
>
> I expected that but I wanted to try it to see.
>
>> I have a couple of Atom boxes, a server and a netbook, and I've set up
>> a chroot for each on my workstation. In the chroot I have
>> FEATURES=buildpkg, using an NFS mounted PKGDIR available to both
>> computers, then I emerge -k on the Atom box.
>
> Maybe I'll go this way instead. Thanks for the idea, which is similar to
> one from YoYo Siska three days ago.
I had my Atom 330 running as a distcc client for a long time. I have
several other speedy CPUs alongside it so it could spray plenty of
compilation requests out its gigabit NIC to various much beefier
machines. But as Neil stated, lots of the processing still occurs
locally, so as you increase nodes, you need to decrease the amount of
compilation done locally. With such a disparity between CPU, it takes
less time overall to just do it the way Neil describes - make a chroot
and then just build it with the intention that the slow CPUs will use
the binary build.
You still need lots of CPU to compile, so a slow machine will still
compile slowly. If your client is a pokey 1.6GHz Atom and you're sending
jobs to two quad core 3GHz CPUs on your subnet, you'll soon see that the
Atom's load goes up toward 8 as it tries to bring those remote jobs
back. So, the four threads on my 330 get completely filled up and it's
dog slow. And it's even more painful when you use the preprocessor
because the client must zip the compile "construction" before it ships
it out, so you have even less CPU available for compilation (although
you get some of that back).
All said and done, my back-of-the-napkin and seat-of-the-pants
calculation tells me that I still get a _minimum_ 25% reduction in
overall compile times with distcc. That's my experience after using
distcc for almost ten years with various configurations of network and CPUs.
next prev parent reply other threads:[~2010-12-20 23:57 UTC|newest]
Thread overview: 22+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-12-17 22:56 [gentoo-user] distcc and crossdev, anyone? Peter Humphrey
2010-12-17 23:23 ` Jacob Todd
2010-12-18 15:22 ` Peter Humphrey
2010-12-17 23:24 ` Al
2010-12-18 8:44 ` Stroller
2010-12-20 15:31 ` Paul Hartman
2010-12-18 10:18 ` Neil Bothwick
2010-12-18 15:15 ` Peter Humphrey
2010-12-20 23:56 ` Bill Longman [this message]
2010-12-21 16:06 ` Petri Rosenström
2010-12-23 14:44 ` Peter Humphrey
2010-12-23 15:54 ` Peter Humphrey
2011-04-01 11:43 ` Peter Humphrey
2011-04-02 8:57 ` Neil Bothwick
2011-04-02 9:15 ` Dale
2011-04-02 15:16 ` Peter Humphrey
2011-04-02 15:19 ` Peter Humphrey
2011-04-02 22:47 ` Neil Bothwick
2011-04-03 13:55 ` Peter Humphrey
2011-04-03 17:08 ` Neil Bothwick
2011-04-03 17:24 ` Peter Humphrey
2011-04-03 22:27 ` Peter Humphrey
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4D0FED15.3090208@gmail.com \
--to=bill.longman@gmail.com \
--cc=gentoo-user@lists.gentoo.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox