On Tue, Mar 24, 2015 at 03:01:14PM -0400, Fernando Rodriguez wrote

> Let me know if you have any luck with pump mode, I didn't. IIRC it sort of 
> worked but most compiles fell back to compiling locally so it's was actually 
> slower.

  It appears to be working.  It took a couple of tries to get it going.
That final required change was to /etc/distcc/hosts on the client.
Apparently the required syntax for pump mode is like so

192.168.123.251,cpp,lzo

where 192.168.123.251 is the host.  "cpp" enables pump mode, and "lzo"
(for compression) is also required.  I originally ran...

emerge -pv --changed-use --deep --update @world

...on the client.  Things looked OK, so I ran

pump emerge --changed-use --deep --update @world

...and let er rip.  I don't have X fully functional on the client yet,
so I switched to another text console on the client and ran (as per
documentation).

DISTCC_DIR="" distccmon-text 5

  It spits out the occasional linefeed but no text.  However, looking at
tty12 on the *HOST* I see a bunch of stuff like...

Mar 25 00:51:39 d531 distccd[22479]: (dcc_job_summary) client: 
192.168.123.253:38023 COMPILE_OK exit:0 sig:0 core:0 ret:0 time:1548ms 
i686-pc-linux-gnu-gcc 
/var/tmp/portage/dev-libs/glib-2.42.2/work/glib-2.42.2/gio/gdbusintrospection.c
Mar 25 00:51:42 d531 distccd[22456]: (dcc_job_summary) client: 
192.168.123.253:38024 COMPILE_OK exit:0 sig:0 core:0 ret:0 time:930ms 
i686-pc-linux-gnu-gcc 
/var/tmp/portage/dev-libs/glib-2.42.2/work/glib-2.42.2/gio/gdbusmethodinvocation.c
Mar 25 00:51:45 d531 distccd[22510]: (dcc_job_summary) client: 
192.168.123.253:38025 COMPILE_OK exit:0 sig:0 core:0 ret:0 time:1092ms 
i686-pc-linux-gnu-gcc 
/var/tmp/portage/dev-libs/glib-2.42.2/work/glib-2.42.2/gio/gdbusserver.c
Mar 25 00:51:47 d531 distccd[22463]: (dcc_job_summary) client: 
192.168.123.253:38026 COMPILE_OK exit:0 sig:0 core:0 ret:0 time:299ms 
i686-pc-linux-gnu-gcc 
/var/tmp/portage/dev-libs/glib-2.42.2/work/glib-2.42.2/gio/gdbusinterface.c

  So it appears that the host is doing the grunt work.  Text is scrolling
on the screen of the Atom client just like a local build, but it's going
by faster than I remember in the past.

> The rest of this post (or parts) may not apply if you do get it
> working.
> 
> I've also found that I get better performance without the -l N on
> MAKEPOTS and specifying the number of cores per host as follows:
> 
> distcc-config --set-hosts "192.168.123.251/4"
> 
> It may not matter if you got only one host. Also change the -j N flag
> accordingly. You'll need to do some testing to find the right number,
> I've find that between 4 to 8 cores per physical core works best (for
> some reason varies between hosts). Just look for the right number,
> you'll know when you see the CPU usage maxing on the hosts during a
> parallel build. Keep in mind that most makefiles don't do a lot of
> parallel compiling so you need to use the monitor utility to check
> during a busy time.

  I already see an improvement.  I have plenty of room for more speedup.
CPU load on the host is stable around 0.30, so it's not being overloaded
at all.

> Also if you're using wireless and you can connect via ethernet do
> that because you will see a LOT of traffic.

  I avoid wireless at home...

1) I live in a condominium, and all channels are very busy from my
neighbours.

2) The ancient Atom netbook only does 802.11 "a" and "b" so it's not
that fast.

-- 
Walter Dnes <waltd...@waltdnes.org>
I don't run "desktop environments"; I run useful applications

Reply via email to